Продвинутый
Что такое индекс BRIN в PostgreSQL и когда он полезен?
BRIN (Block Range Index) — это индекс для очень больших таблиц (терабайты), где данные физически отсортированы на диске (например, логи или временные ряды по created_at).
Вместо того чтобы хранить ссылку на каждую строку (как B-Tree), BRIN разбивает таблицу на блоки (например, по 1 МБ) и хранит только Минимальное и Максимальное значение для каждого блока.
✅ Плюсы:
- Занимает в 1000 раз меньше места в RAM, чем B-Tree.
- Создается за секунды.
- Идеально отсекает ненужные блоки при запросах типа WHERE created_at BETWEEN '2023-01-01' AND '2023-02-01'.