esergey
Новичок
тормоза fulltext поиска
Пару дней ковырял, так и не понял что происходит. Помогите плиз, кто в курсе.
Есть большая база данных, порядка 200 000 записей (55 mb) с fulltext индексом.
Делаю к ней запрос:
SELECT SQL_NO_CACHE SQL_CALC_FOUND_ROWS * from table WHERE MATCH(name) AGAINST('$search1') limit ".$begrow.",20
Дальше ситуация следующая. При первом вызове скорость работы зависит от SQL_CALC_FOUND_ROWS. Если порядка 3000 то запрос выполняется около 20 сек. Повторный такой же запрос или с измененными параметрами limit выполняется очень быстро. Предположил что кэшируется запрос и включил SQL_NO_CACHE. Но ситуация такая же.
Кто подскажет, что может происходить? Хотелось бы выяснить где же все таки инфа кэшируется? И возможно ли ускорить быстродействие первого запуска запроса?
Пару дней ковырял, так и не понял что происходит. Помогите плиз, кто в курсе.
Есть большая база данных, порядка 200 000 записей (55 mb) с fulltext индексом.
Делаю к ней запрос:
SELECT SQL_NO_CACHE SQL_CALC_FOUND_ROWS * from table WHERE MATCH(name) AGAINST('$search1') limit ".$begrow.",20
Дальше ситуация следующая. При первом вызове скорость работы зависит от SQL_CALC_FOUND_ROWS. Если порядка 3000 то запрос выполняется около 20 сек. Повторный такой же запрос или с измененными параметрами limit выполняется очень быстро. Предположил что кэшируется запрос и включил SQL_NO_CACHE. Но ситуация такая же.
Кто подскажет, что может происходить? Хотелось бы выяснить где же все таки инфа кэшируется? И возможно ли ускорить быстродействие первого запуска запроса?