Sobes.tech
Back to questions
Senior
4

Какими индексами пользуешься в PostgreSQL?

Companies where asked
МТС CloudМТС Cloud

Answer from AI

sobes.tech AI

В PostgreSQL обычно используют следующие типы индексов в зависимости от задачи:

  • B-tree — самый распространённый, подходит для большинства операций сравнения (=, <, >, BETWEEN).
  • Hash — для быстрых операций равенства, но менее универсален и реже используется.
  • GIN (Generalized Inverted Index) — для полнотекстового поиска и индексации массивов, JSONB.
  • GiST (Generalized Search Tree) — для геопространственных данных, полнотекстового поиска, диапазонов.
  • BRIN (Block Range Index) — для очень больших таблиц с естественным порядком данных, экономит место.

Пример использования B-tree индекса:

CREATE INDEX idx_users_email ON users(email);

Выбор индекса зависит от типа данных и запросов. Например, для JSONB полей часто используют GIN, для геоданных — GiST.