Я проверяю некоторые настройки в моем производственном экземпляре Postgres. Наш сервер БД имеет 32 ГБ оперативной памяти. Начиная с pg_settings
, я вижу, что effective_cache_size
установлено на:
postgres=> select name, setting, unit from pg_settings where name like 'effective_cache_size';
name | setting | unit
----------------------+---------+------
effective_cache_size | 7851762 | 8kB
(1 row)
Насколько я понимаю, это значение составляет 7851762 X 8 КБ = 62,8 ГБ. Если мои вычисления верны, мы в основном говорим оптимизатору, что у нас есть 62 ГБ для этого параметра, тогда как у нас только 32 ГБ физической ОЗУ.
Пожалуйста, исправьте меня, если я неправильно вычисляю этот параметр. Я всегда путаюсь с вычислением распределения параметров для блоков с 8 КБ.