SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 10.10.2015 21:24:27

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

innodb persistent statistics

Интуитивно считал, что это аналог engine independent statistics из MariaDB, реализованный только для индексов в innodb. А сейчас посмотрел доку и оказывается это та же неадекватная статистика, получаемая случайным просмотром индекса. Только теперь это делается один раз и результат хранится в табличке.

Получается, что раньше план одного запроса каждый раз мог быть разным - плохим или хорошим в зависимости от того насколько правильно определилась статистика индекса. Теперь же он всегда будет одним - или всегда хорошим или всегда плохим. Как-то это сомнительное нововведение.

Заявленное улучшение качества за счет того, что теперь по умолчанию просматривается 20 случайных индексных страниц вместо 8 ранее, не внушает оптимизма.
Например, на таблице в 1024 строки, 646 уникальных значений, при innodb_stats_sample_pages=20 cardinality показывает случайным образом от 500 до 1500. Но это всё-таки старая версия. У кого есть >=5.6.6 ? На сколько там адекватно определяется cardinality при включенном persistent statistics?

Неактивен

 

#2 10.10.2015 23:36:56

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: innodb persistent statistics

Percona Server 5.6.24-72.2: innodb_index_stats показывает cardinality абсолютно точно. Преимущество persistent статистики в том, что она сохраняется при перезагрузке сервера. Она должна обновляться при существенных апдейтах таблицы.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson