4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
 Откуда: Москва Всего сообщений: 3031 Рейтинг пользователя: 75 Дата регистрации на форуме: 29 сен. 2001
|
Профиль | ИгнорироватьNEW! Сообщение отправлено: 9 февраля 2005 14:42
Есть у меня в таблице Posts поле p__premoderate, имеющее тип tinyint и принимающее значения 0 и 1. Оно отвечает за то, находится ли сообщение на премодерации или нет. Поскольку такая проверка используется очень часто в самых разнообразных ситуациях, я решил сделать по этому полю неуникальный индекс. К моему удивлению, это привело к прямо противоположному результату: время выборки с 0.4-0.5с с увеличилось до 8.5 с. Я долго не мог понять, почему такое происходит... Как оказалось, нужно было просто провести переоптимизацию таблицы с помощью команды OPTIMIZE TABLE. После этого время выборки уменьшилось где-то до 0.2 с. |