Продвинутый
Что такое Index Scan, Index Only Scan и Bitmap Heap Scan в PostgreSQL?
Это методы поиска данных, которые показывает EXPLAIN:
1. Index Scan: СУБД находит нужный ключ в индексе (B-Tree), берет оттуда ссылку на физическую строку и идет на диск (в Heap) читать остальные колонки.
2. Index Only Scan: Идеальный вариант. Все запрошенные в SELECT колонки уже есть внутри самого индекса (Покрывающий индекс). СУБД вообще не читает основную таблицу на диске.
3. Bitmap Heap Scan: СУБД сначала сканирует индекс и строит в памяти битовую карту (Bitmap) всех подходящих страниц на диске. Затем она идет на диск и читает эти страницы за один проход. Эффективно, когда запрос возвращает много строк.