Допустим, стоит дефолтное значение собирать по 100 самплов с каждого поля. Это значит, что при каждом ANALYZE будут рандомно выдернуты 100 самплов? Или что каждый раз будут выдернуты одни и те же самплы?
Если распределение неравномерное, может быть такое, что выполненный несколько раз подряд ANALYZE в итоге приведет к разным планам выполнения запросов?
И еще вопрос в продолжение темы – куда смотреть если даже после повышения сбора самплов до 10к и выполнения VACUUM ANALYZE по таблице, планер сильно врет при предсказании ожидаемого числа строк и фактическом результате?
> Допустим, стоит дефолтное значение собирать по 100 самплов с каждого поля. Это не 100 samples. Это размер MCV и гистограмм. > Это значит, что при каждом ANALYZE будут рандомно выдернуты 100 самплов? Но да, выбираются они (более-менее) случайно. > Или что каждый раз будут выдернуты одни и те же самплы? Нет, если выбирается не вся таблица, то разные. > Если распределение неравномерное, может быть такое, что выполненный несколько раз подряд ANALYZE в итоге приведет к разным планам выполнения запросов? Да, может. > И еще вопрос в продолжение темы – куда смотреть если даже после повышения сбора самплов до 10к и выполнения VACUUM ANALYZE по таблице, планер сильно врет при предсказании ожидаемого числа строк и фактическом результате? В план конкретного запроса — это всё не так просто.
Обсуждают сегодня