Поисковая система статей в php - PullRequest
4 голосов
/ 28 марта 2010

Я использую sphinx в качестве поисковой системы на моем сайте, он отлично работает, и я не жалуюсь на это. Единственное, чего ему не хватает, это то, что он не позволяет мне искать статьи, длина запроса которых превышает 15 слов. Я знаю, что на самом деле люди используют не более 3-4 слов, которые я хочу использовать для поиска дублированного содержимого.

Мне было интересно, есть ли какое-нибудь альтернативное решение для сфинкса. Я хочу справиться с дублирующимся содержимым.

Моя основная таблица статей находится в innodb, но я также кеширую статьи в таблицу MyISAM для полнотекстового поиска, но когда я ищу статью, требуется один поиск. Это не проблема запроса, я думаю, что MySQL не имеет возможности полнотекстового поиска.

Спасибо Jason

Ответы [ 3 ]

1 голос
/ 28 марта 2010

Apache Solr является альтернативой. Он основан на проекте Apache Lucene ...

Вы можете также проверить Lucene .

А так как вы используете MySQL, проверьте его полнотекстовый поиск Полнотекстовый поиск MySQL

0 голосов
/ 30 марта 2010

Возможно, это не полезно, но не могли бы вы просто добавить уникальный индекс в поле MySQL, чтобы предотвратить вставку дубликатов?

Я не сталкивался с какими-либо ограничениями длины запроса в используемой версии Sphinx (0.9.9), но, возможно, я недостаточно старался.

0 голосов
/ 28 марта 2010

Проверьте также Zend_Search_Lucene: http://framework.zend.com/manual/en/zend.search.lucene.html

Хотя это медленнее, чем сфинкс.

...