Только LAMP-ом, можно обойтись, но как-то это уродливо. PHP разрабатывался совсем для других вещей. Можно построить поиск на MySql или на PostgreSQL, но он будет сильно ограничен функционально.
Я видел один раз поиск, который работает на PHP и хранит индекс в MySql, но это реально работает для небольших сайтов. Вот он http://in.jetstyle.ru/rocket/rocketsearch.
Если нужна морфология, то это Я.Сервер, особенно если русская. При желании можно сделать для него сервер, который будет возвращать по http содержимое вашего xml.
У Lucene самое большое сообщество, как следствие есть порты на разные языки, даже на php Zend_Search_Lucene. Он индексирует в файл. Чем хорош Lucene, Вы можете взять индексатор на C или на Java, а поиск использовать на PHP - формат индекса стандартизован и совместим.
Не, естественно backend не на PHP/Python/Perl предполагается, я видимо просто неточно сформулировал. Хочется интегрировать эту черную коробку в LAMP приложения без допиливания кусков С++/Java, т.е. нужны хорошие биндинги в скриптовые языки.
Вообще пока склоняюсь к Sphinx, на выходных попробую, если руки дойдут.
Comments 12
Как я понимаю, сфинкс в чистом виде тебе не подойдет, но спросить никогда не помешает.
http://sphinxsearch.com/
Reply
Reply
http://sphinxsearch.com/docs/current.html#xmlpipe
http://sphinxsearch.com/docs/current.html#xmlpipe2
Плюс всегда можно доработать под ваши нужды.
Reply
Reply
Не смотрел толком, но Xapian считается отличным движком. Быть может и омега не сильно подкачает.
Еще тут можно посмотреть.
http://wiki.apache.org/lucene-java/PoweredBy
Просьба отписаться отдельным постом о сделанном выборе : )
Reply
Reply
(The comment has been removed)
Reply
Reply
Я видел один раз поиск, который работает на PHP и хранит индекс в MySql, но это реально работает для небольших сайтов. Вот он http://in.jetstyle.ru/rocket/rocketsearch.
Если нужна морфология, то это Я.Сервер, особенно если русская. При желании можно сделать для него сервер, который будет возвращать по http содержимое вашего xml.
У Lucene самое большое сообщество, как следствие есть порты на разные языки, даже на php Zend_Search_Lucene. Он индексирует в файл. Чем хорош Lucene, Вы можете взять индексатор на C или на Java, а поиск использовать на PHP - формат индекса стандартизован и совместим.
Reply
Вообще пока склоняюсь к Sphinx, на выходных попробую, если руки дойдут.
Reply
Leave a comment