Подтвердить что ты не робот

Поисковая система Lucene vs Поиск в базе данных

Я использую базу данных MySQL и использую поиск по базе данных. Любые преимущества и недостатки двигателей баз данных и поисковой системы Lucene? Я хотел бы иметь предложения о том, когда и где их использовать?

4b9b3361

Ответ 1

Я предлагаю вам читать Полнотекстовые поисковые системы и СУБД. Один лайнер будет: если основная часть вашего варианта использования - полнотекстовый поиск, используйте Lucene. Если основная часть вашего варианта использования - это объединения и другие реляционные операции, используйте базу данных. Вы можете использовать гибридное решение для более сложного варианта использования.

Ответ 2

Используйте Lucene, если вы хотите индексировать текстовые Документы (любой длины) и искать Текст в этих документах, возвращая ранжированный список документов, которые соответствуют поисковому запросу, Классический пример - поисковые системы, такие как Google, которые используют текстовые индексы, такие как Lucene, для индексации и запроса содержимого веб-страниц.

Преимущества использования Lucene над базой данных, например Mysql, для индексации и поиска текста:

  • для разработчика - инструменты для анализа, анализа и индексации текстовой информации (например, генерации, множественного числа, синонимов, токенизации) на нескольких языках. Lucene также очень хорошо масштабируется для текстового поиска.
  • для пользователя - качественные результаты поиска. Lucene использует очень хорошую функцию сходства (чтобы сравнить поисковый запрос с каждым документом), в основе которого лежат сходство Косинус и обратный термин/Частота документа. Это приводит к хорошим результатам поиска с очень маленькой настройкой, требуемой заранее.

Много полезная информация о Lucene здесь.

Ответ 3

Мы использовали Sql Server для работы, чтобы выполнить некоторые запросы, которые использовали поиск в полнотекстовом режиме. В случае больших объемов данных Sql делает внутреннее соединение между результирующим набором, возвращаемым поиском FullText, и остальной частью запроса, который может быть медленным, если база данных работает на низкомощном компьютере (2 ГБ оперативной памяти для 20 ГБ данных). Переключение одного и того же запроса на Lucene значительно улучшило скорость.

Ответ 4

Поиск Lucene имеет преимущество индексации. Это сообщение может помочь вам понять lucene.