Как реализовать поиск по веб-приложению / сайту - PullRequest
2 голосов
/ 28 декабря 2010

Как вы реализуете поисковую систему на своем веб-сайте / в веб-приложении?

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

У вас есть свободный текст, жестко закодированный внутри веб-сайта в виде статических страниц, или, по крайней мере, он есть в виде файлов gettext.

Вы хотите иметь возможность перечислять страницы, которые содержат некоторые запрошенные условия запроса.

Лично я создаю другую таблицу (полный текст с mysql), которая содержит URL и содержимое страницы, а затем я выполняю полнотекстовый поиск по этой таблице и сообщаю результаты.

Эта таблица периодически заполняется сценарием, который читает БД и вставляет данные.

Существуют ли лучшие методы для реализации "простого" поиска?

1 Ответ

1 голос
/ 28 декабря 2010

Ну, "просто" субъективно. Ваш подход к поиску не будет масштабироваться и, конечно, не подходит для сложных запросов (tihnk boolean search, или range range etc.)

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...