我正在使用MySQL数据库并且一直在使用数据库驱动的搜索。数据库引擎和Lucene搜索引擎的优缺点是什么?我想就何时何地使用它们提出建议?
答案 0 :(得分:30)
我建议你阅读Full Text Search Engines vs. DBMS。单行将是:如果您的大部分用例是全文搜索,请使用Lucene。如果您的大部分用例是连接和其他关系操作,请使用数据库。您可以使用混合解决方案来处理更复杂的用例。
答案 1 :(得分:25)
如果要对文本文档(任意长度)进行索引并在这些文档中搜索文本,请使用Lucene,返回与搜索查询匹配的文档的排序列表。 典型的例子是Google等搜索引擎,它使用像Lucene这样的文本索引器来索引和查询网页内容。
在像Mysql这样的数据库上使用Lucene进行索引和搜索文本的优点是:
答案 2 :(得分:2)
我们在工作中使用Sql Server来进行一些使用全文搜索的查询。在大量数据的情况下,Sql在FullText搜索返回的结果集与查询的其余部分之间建立内部联接,如果数据库在低功率机器上运行(20GB数据为2GB ram),则可能会很慢。将相同的查询切换到Lucene可以大大提高速度。
答案 3 :(得分:1)
Lucene搜索具有索引的优势。 This帖子可以帮助您了解lucene。