Статистика описывает распределение данных: число строк, долю NULL, частые значения, число различных значений и гистограммы. Оптимизатор использует её для оценки селективности и стоимости.
Что такое статистика в контексте СУБД и оптимизации запросов?
Статистика описывает распределение данных: число строк, долю NULL, частые значения, число различных значений и гистограммы. Оптимизатор использует её для оценки селективности и стоимости.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Статистика описывает распределение данных: число строк, долю NULL, частые значения, число различных значений и гистограммы. Оптимизатор использует её для оценки селективности и стоимости.
Неверная оценка количества строк может привести к неудачному порядку join, выбору сканирования или нехватке памяти под операцию. После заметного изменения данных статистику обновляют; в PostgreSQL этим занимается ANALYZE и автоматическое обслуживание.
Отдельная статистика по каждому столбцу плохо описывает зависимые признаки, поэтому могут понадобиться расширенные статистики по сочетаниям полей. Статистика — приближённая модель данных, а не индекс и не сами строки таблицы.
Источник: www.postgresql.org.