fender
Новичок
при INSERT не заполняется индекс (?)
столкнулся с такой проблемой:
после вставки в только что созданную таблицу, имеющую индекс по одному из полей, делаю запрос
В возвращаемом результате вижу инфу об этом индексе, но в поле CARDINALITY наблюдаю NULL, в то время как для остальных индексов это поле содержит цифры похожие на кол-во записей).
Пересоздаю индекс (drop -> create) - CARDINALITY заполняется кол-вом записей
После пересоздания запросы с участием этой таблицы стали выполняться в 2 раза быстрее
Почитав документацию, решил что того же эффекта вроде бы можно достичь , не пересоздавая индекс, а используя analyze после вставки.
Вопрос в чем, неужели нужно действительно каждый раз так делать? Сомневаюсь, все-таки мне кажется где-то я допустил ошибку. Должен же был заполниться индекс? или он заполнился но оптимизатор об этом не узнал?
Any ideas?
Если инфы мало, выложу example-скрипты
столкнулся с такой проблемой:
после вставки в только что созданную таблицу, имеющую индекс по одному из полей, делаю запрос
Код:
show indexes from table;
Пересоздаю индекс (drop -> create) - CARDINALITY заполняется кол-вом записей
После пересоздания запросы с участием этой таблицы стали выполняться в 2 раза быстрее
Почитав документацию, решил что того же эффекта вроде бы можно достичь , не пересоздавая индекс, а используя analyze после вставки.
Вопрос в чем, неужели нужно действительно каждый раз так делать? Сомневаюсь, все-таки мне кажется где-то я допустил ошибку. Должен же был заполниться индекс? или он заполнился но оптимизатор об этом не узнал?
Any ideas?
Если инфы мало, выложу example-скрипты