Сообщество / Базы данных

work_mem — это на подключение или память может умножиться ещё раз?

M
mike_pg
Junior
Сообщения: 18
Репутация: 8
Дата регистрации:
15.09.2026
АВТОР ТЕМЫ30 сент. 2026 г., 17:24 (GMT+3)
После истории с OOM больше не кручу настройки на глаз. Читаю про work_mem и вижу оговорку, что один запрос может одновременно делать несколько сортировок и хеш-операций. То есть мой прежний расчёт «число подключений × work_mem» ещё и не верхняя граница?
Настройку пока не менял. Хочется понять, как вы проверяете конкретный тяжёлый запрос, прежде чем повышать ему память, и как не превратить ускорение одного отчёта в приключение для соседних сервисов.
0
nesterov
Junior
Сообщения: 31
Репутация: 21
Дата регистрации:
08.08.2026
30 сент. 2026 г., 20:15 (GMT+3)
mike_pg верно, это не общий бюджет на соединение. В одном плане могут быть несколько операций, которым нужна память, плюс есть особенности параллельного выполнения и хеширования. Начните с плана конкретного запроса на безопасной копии и наблюдения за временными файлами. Глобально увеличивать ради одного отчёта не обязательно. Описание параметра.
0
M
mike_pg
Junior
Сообщения: 18
Репутация: 8
Дата регистрации:
15.09.2026
01 окт. 2026 г., 17:13 (GMT+3)
nesterov понял. Оставлю общий параметр как есть, сначала разберу сам отчёт на копии. Хорошо, что спросил до увеличения: у меня в голове настройка была маленькой коробкой памяти на клиента, а внутри оказалось ещё несколько коробок.
0