Модуль online_analyze предоставляет набор функций, которые немедленно обновляют статистику после операций INSERT, UPDATE, DELETE или SELECT INTO в целевых таблицах.
Чтобы использовать модуль online_analyze, загрузите разделяемую библиотеку:
LOAD 'online_analyze';
Вы можете настроить online_analyze, используя следующие дополнительные переменные (для них показаны значения по умолчанию):
online_analyze.enable = on
Включает online_analyze.
online_analyze.verbose = on
Выполняет ANALYZE VERBOSE.
online_analyze.scale_factor = 0.1
Процент от размера таблицы, при котором начинается немедленный анализ (этот параметр подобен autovacuum_analyze_scale_factor).
online_analyze.threshold = 50
Минимальное число изменений строк, после которого может начаться немедленный анализ (этот параметр подобен autovacuum_analyze_threshold).
online_analyze.min_interval = 10000
Минимальный интервал времени между вызовами ANALYZE для отдельной таблицы (в миллисекундах).
online_analyze.table_type = "all"
Типы таблиц, для которых выполняется немедленный анализ: all (все), persistent (постоянные), temporary (временные), none (никакие).
online_analyze.exclude_tables = ""
Список таблиц, исключаемых из немедленного анализа.
online_analyze.include_tables = ""
Список таблиц, подвергаемых немедленному анализу (параметр online_analyze.include_tables переопределяет online_analyze.exclude_tables).
online_analyze.local_tracking = off
Включает в online_analyze отслеживание временных таблиц в рамках обслуживающего процесса. Когда эта переменная отключена (off), online_analyze использует для временных таблиц системную статистику по умолчанию.
online_analyze.lower_limit = 0
Минимальное число строк в таблиц, при котором будет срабатывать online_analyze.
online_analyze.capacity_threshold = 100000
Максимальное число временных таблиц, сохраняемых в локальном кеше.
Фёдор Сигаев <teodor@sigaev.ru>