@Gravio

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

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

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

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

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

Войти через центр авторизации
Похожие вопросы