Задать вопрос
@Gravio

Как ускорить поиск?

Есть таблица в ней около 5 млн строк, она полностью статичная (В нее ничего не записываем и не редактируем, только читаем), какие можете дать советы для ускорения поиска в таблице ? (Единственное, что мы сделали, это добавили индекс)

Стандартный запрос выглядит примерно так:
SELECT * FROM words WHERE word = 'привет'
  • Вопрос задан
  • 254 просмотра
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    PostgreSQL. Advanced
    4 месяца
    Далее
  • Учебный центр IBS
    QPT PostgreSQL 16. Оптимизация запросов
    1 неделя
    Далее
  • Слёрм
    PostgreSQL База
    4 недели
    Далее
Пригласить эксперта
Ответы на вопрос 1
Melkij
@Melkij
DBA для вашего PostgreSQL?
Подумать, действительно ли нужен select *
Если нет и нужно достать одно-два поля - запрашивайте только необходимые эти поля и добавьте их в индекс. В include для postgresql 11+ или в сам индекс после word. С учётом статичности самой таблицы будет index-only scan всегда.
Если все нужны - то в принципе можно и в индекс вероятно загнать, но вряд ли в этом будет уже смысл.

Можно ещё с hash-индексом попробовать если postgresql 10+. Но сомневаюсь.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы