Настройка производительности в PostgreSQL 17: Понимание параметров стоимости оптимизатора
Пересказ статьи Jeyaram Ayyalusamy. 32 - PostgreSQL 17 Performance Tuning: Understanding Optimizer Cost Parameters
PostgreSQL известна как одна из наиболее продвинутых реляционных баз данных с открытыми кодами, и одна из основных причин ее силы - оптимизатор запросов на основе стоимости.
Когда вы запускаете запрос, оптимизатор не выполняет его непосредственно. Он генерирует множество возможных планов выполнения и оценивает их стоимость. Выбирается план с самой низкой оценкой стоимости. Стоимость не измеряется в миллисекундах или циклах ЦП - она представляет собой абстрактные единицы, которые PostgreSQL использует для сравнения.
Понимание этих параметров стоимости в PostgreSQL является существенным для настройки производительности, особенно тогда, когда дело касается больших таблиц и сложных запросов.
В этой статье мы:
- Создадим таблицу с 10 миллионами строк для имитации реальной рабочей нагрузки.
- Создадим индексы, чтобы дать возможность PostgreSQL построить несколько планов выполнения.
- Подробно разберем модель стоимости в PostgreSQL.
- Покажем, как настройка параметров стоимости может изменить решение при выборе плана.
Continue reading "Настройка производительности в PostgreSQL 17: Понимание параметров стоимости оптимизатора"


