Здравствуйте.
Есть сервер — SSD, 64ГБ ОЗУ, два процессора по 12 ядер
База — 60 млн строк (индексируемые значения тоже строка <255 символов).
В среднем сфинкс-поиск занимает 0,04—0,08 сек. Но по некоторым запросам сфинкс ищет значительно дольше, аж до 0,6 сек.
Прочитал
статью на хабре про разделение индексов, разделил на 4, скорость не изменилась, после разбил на 24 индекса (по числу ядер), ситуация не изменилась.
Какие ещё способы тюнинга sphinx существуют? Возможно какие-то параметры изменить? И почему разделение индекса совсем не ускорило поиск?
UPD. выборку всегда делаю следующим способом из php:
$cl = new SphinxClient ();
$cl->SetServer ( "localhost", 9312 );
$cl->setSortMode ( SPH_SORT_RELEVANCE );
$cl->setMatchMode ( SPH_MATCH_PHRASE );
$cl->setRankingMode ( SPH_RANK_PROXIMITY_BM25 );
$cl->setLimits (0, 200);
$result = $cl->Query($string);
в $string 1—4 слова, например «помидоры» или «сажаем помидоры весной»