Встречается на собеседованиях • сегодня
Какие знаешь индексы в PostgreSQL
PostgreSQL поддерживает несколько типов индексов, каждый оптимизирован под конкретные сценарии:
- B-tree – стандартный индекс для сравнений (
=,>,<,BETWEEN), сортировки. Подходит для большинства случаев. - Hash – быстрый поиск по точному совпадению (
=), но не поддерживает сортировку и сравнения. Требует перестроения после сбоя. - GIN (Generalized Inverted Index) – для составных значений (массивы, JSON, полнотекстовый поиск). Оптимизирован под
@>,<@,&&. - GiST (Generalized Search Tree) – поддерживает геоданные, полнотекстовый поиск, работает с пользовательскими типами данных.
- SP-GiST (Space-Partitioned GiST) – для нерегулярных структур (геоданные, IP-адреса).
- BRIN (Block Range INdex) – для больших таблиц с естественной сортировкой (логи, временные ряды). Меньше места, но менее точен.
Пример создания индекса:
sql
-- B-tree индекс
CREATE INDEX idx_users_email ON users(email);
-- GIN индекс для массива тегов
CREATE INDEX idx_products_tags ON products USING GIN(tags);
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы