Хранение файлов в памяти или оптимизация поиска с помощью Zend Lucene

Adelf

Administrator
Команда форума
Хранение файлов в памяти или оптимизация поиска с помощью Zend Lucene

Здравствуйте. Есть задача - организовать поиск по базе данных MSSQL(не путать с мускулом). Сервер на Windows(это не я решал, я вообще здесь второй день работаю).

Я ее решил с помощью Zend_Search_Lucene. Получился индексный каталог размером 40-50 Мб. Поиск по нему слишком долгий - 1-3 секунды у меня на локальной винде. На серваке будет пошустрее, но все равно ужасная. Надо оптимизировать.

У меня возникла было мысль написать свой наследник от Zend_Search_Lucene_Storage_File и хранить данные в файлах и памяти одновременно(записывать в оба, а искать по памяти). Но сервер виндовый - следовательно нужен какойто аналог shared memory или какой другой вариант поддерживающий долгое хранение в памяти больших кусков данных. (идея с Memcached мне пока не нравится)

Есть что предложить? Какие-то советы по проблеме в общем? Возможно другой поисковый движок?
 

Adelf

Administrator
Команда форума
sphinx умеет из MSSQL данные брать? Вроде нет.

А Lucene я сам данные в индекс закачал. скриптом.
 

Макс

Старожил PHPClub
Получился индексный каталог размером 40-50 Мб. Поиск по нему слишком долгий - 1-3 секунды
может с настройками что не так ? Неверю я что lucene так медленно ищет.

sphinx умеет через xml индекс делать
http://www.sphinxsearch.com/docs/current.html#xmlpipe2
 

Adelf

Administrator
Команда форума
sphinx через xml - хороший вариант. Недочитал до него в доке. настраивать и реализовывать конечн придется приличное время(единственный минус)... Но пока лучшее. Спасибо.

>> Неверю я что lucene так медленно ищет.
Сам както не ожидал. Протестирую на сервере - может там поинтересней результат будет.
 
Сверху