@beduin01

Как оптимизировать выполнение тяжелых запросов?

Интересует не само исправление запроса и его доработка, а ситуация когда с БД нужно собирать некоторую статистику и при этом сделать так, чтобы система не сильно тормозила.
Можно ли сделать так, чтобы запрос выполнялся дольше, но меньше загружал CPU -- может есть какие-то способы понизить приоритетность выполнения?

Есть ли встроенные механизмы кэшированая, которым можно сказать, что для запроса Х нужно отдавать данные из кэша при вызове его чаще чем N минут\часов?

CPU 6 ядер.
  • Вопрос задан
  • 77 просмотров
Пригласить эксперта
Ответы на вопрос 2
Melkij
@Melkij
PostgreSQL DBA, contributor
Можно ли сделать так, чтобы запрос выполнялся дольше, но меньше загружал CPU -- может есть какие-то способы понизить приоритетность выполнения?

Обычный nice. Процессная же модель, никаких проблем понизить приоритет конкретного процесса средствами самой ОС.

Есть ли встроенные механизмы кэшированая, которым можно сказать, что для запроса Х нужно отдавать данные из кэша при вызове его чаще чем N минут\часов?

Нет, кеша запросов нет. И не будет.

ситуация когда с БД нужно собирать некоторую статистику и при этом сделать так, чтобы система не сильно тормозила

Не смешивать OLAP и OLTP вообще. Если база важная, то у неё будет hot standby. Там статистику и считать.
Ответ написан
@tormozillo
Изучать параметры max_parallel_workers, max_parallel_workers_per_gather
CPU ведь не одноядерный?
Ответ написан
Ваш ответ на вопрос

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

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