MongoDB全文搜索与Lucene? [英] MongoDB full text search vs Lucene?

查看:262
本文介绍了MongoDB全文搜索与Lucene?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

目前,MongoDB的全文本搜索与Lucene相比如何?该问题的原因是由于我不确定:

How does MongoDB's full text search compare to Lucene at the present time? The reason for the question is due to my indeterminacy to:

a)在生产中使用mongo的FTS实施,因为它大约在6个月前仍处于测试阶段

a) use mongo's FTS implementation in production since it was still in beta around 6 months ago

b),因为lucene使用Java,它将引入另一个动态部分.

b) because lucene uses Java which will introduce yet another moving part.

推荐答案

在没有漫长的话题(可能不适合编程论坛)的情况下,我将尽力对此进行基本介绍,但仍会尝试涵盖要点

Without wandering into a long topic that would probably not be suited for a programming forum, I'll try and cover this basically, but still try and cover the points.

进入广泛比较时要考虑的主要事情是:'XYZ'关系数据库引擎全文搜索如何与Lucene相提并论" .

The main thing to consider when jumping into a broad comparison is this: "How does 'XYZ' relational database engine full text search stack up against Lucene".

因此,如果您考虑到这一点,并且对这些产品的内置全文"功能有经验,那么您将应该将它们与MongoDB全文"苹果进行比较.

So if you consider that, and have had experience with the built in "full text" capabilities of those products then those are the apples you should be comparing with the MongoDB "full text" apples.

简而言之,MongoDB提供了基本的全文功能,与关系产品中的功能没有太大区别.如 a:)中所述,这些设施是新的,但比以前的设施要好,什么都没有.

In short, MongoDB offers basic full text capabilities, not much different to those found in relational products. As mentioned in a:), the facilities are new, but better than what was there before, which was nothing.

b:)上,Lucene和衍生物/对应物(Solr/ElasticSearch等)应被视为完全不同的动物.您需要进行高级标记和词干分析的地方,内置了更多类似内容" 方面计数搜索功能.在这种情况下,必须使用单独的产品.

On b:), Lucene, and derivatives/ counterparts (Solr / ElasticSearch, etc) should be considered a different animal altogether. Where you need advanced tokenizing and stemming, built in facilities for "More like this" and facet counts on searches. In those cases the separate product is a required necessity.

当然,有多种解决方案可以为Lucene等中的MongoDB存储中的数据建立索引,甚至自定义此过程也不难.但是它正在维护您的基础架构中的另一个重要组成部分.

Of course there are several solutions around for indexing data from MongoDB stores in Lucene etc, and even customizing this process is not hard. But it is maintaining another moving part in your infrastructure.

因此,我真的不认为这需要与Lucene 比较 MongoDB文本搜索,因为最终它们存在是为了做不同的事情,这仅仅是一个问题.您对应用程序的需求.选择最适合您的解决方案.

So I don't really see this as a need to compare MongoDB text search with Lucene, because ultimately they exist to do different things, it's just a matter of what you need for your application. Choose the solution that is best for you.

唯一要补充的是,Lucene(及其衍生产品)家族是很棒的产品.不要回避给予他们尝试,至少要进行评估.之前的要点是,那里的功能比任何标准数据库文本搜索"都强大得多.此外,管理员和学习曲线通常不像您想象的那么难".发挥作用,可能值得实施.

The only thing to add is that, the Lucene (and derivative) family are great products. Do not shy away from giving them a go, at least to evaluate. The points from before is there is a lot more power there than any "Standard Database Text Search". Furthermore the admin and learning curve are generally "not as hard as you think". Have a play, it may be worth implementing.

这篇关于MongoDB全文搜索与Lucene?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆