Сравнение: БД Полнотекстовый поиск в поисковике (Lucene) - PullRequest
3 голосов
/ 18 ноября 2008

Имея в виду stackoveflow.com (команда из 2-3 инженеров, создающих проект веб-сайта, предназначенный для масштабирования), имеет смысл тратить усилия на ранних этапах разработки, чтобы построить поиск, основанный на Lucene / Autonomy… в отличие от база данных на основе полнотекстового поиска.

Плюсы / Минусы:
При зрелой реализации Lucene, такой как Nutch или автономия, стоимость перехода на Lucene (что неизбежно) на более позднем этапе незначительна.
В больших объемах добавить дополнительные серверы индекса (скажем, с помощью Nutch) для поддержки растущего поискового индекса довольно просто.
При реализации Lucene мне, скорее всего, понадобится дополнительный сервер для поддержки индекса в памяти (гораздо раньше, в процессе масштабирования).

Ответы [ 2 ]

4 голосов
/ 24 ноября 2008

Производительность полнотекстового поиска в базе данных варьируется от базы к базе данных, но это, безусловно, самый простой вариант для настройки. Поэтому начните с этого и перейдите к люцену или сфинксу, если он окажется слишком медленным.

0 голосов
/ 22 июля 2009

Вы должны держать его изолированным - не начинайте бросать SELECTS по всему коду, если вы знаете, что замените их поисковым запросом. Оберните полнотекстовый поиск в вашей БД тонким слоем абстракции, который гарантирует, что вы не используете возможности базы данных там, где вы не должны.

Я второй принятый ответ - преждевременная оптимизация здесь, безусловно, зло.

...