这些技术之间的核心架构差异是什么?

另外,哪些用例通常更适合每种用例?


当前回答

如果您已经在使用SOLR,请坚持使用。如果你正在创业,使用弹性搜索。

最大的主要问题已经在SOLR中得到了解决,它是相当成熟的。

其他回答

由于Apache Solr的悠久历史,我认为Solr的一个优势是它的生态系统。针对不同类型的数据和用途,有许多Solr插件。

搜索平台从下到上分为以下几层:

数据 目的:表示各种数据类型和来源 文档建立 目的:为索引建立文档信息 索引和搜索 目的:建立和查询文档索引 逻辑增强 用途:用于处理搜索查询和结果的附加逻辑 搜索平台服务 目的:增加搜索引擎核心的附加功能,提供服务平台。 UI应用程序 用途:用于终端用户搜索界面或应用程序

参考文章:企业搜索

我发现上面的一些答案现在有点过时了。从我的角度来看,我每天都在使用Solr(云和非云)和ElasticSearch,这里有一些有趣的区别:

Community: Solr has a bigger, more mature user, dev, and contributor community. ES has a smaller, but active community of users and a growing community of contributors Maturity: Solr is more mature, but ES has grown rapidly and I consider it stable Performance: hard to judge. I/we have not done direct performance benchmarks. A person at LinkedIn did compare Solr vs. ES vs. Sensei once, but the initial results should be ignored because they used non-expert setup for both Solr and ES. Design: People love Solr. The Java API is somewhat verbose, but people like how it's put together. Solr code is unfortunately not always very pretty. Also, ES has sharding, real-time replication, document and routing built-in. While some of this exists in Solr, too, it feels a bit like an after-thought. Support: there are companies providing tech and consulting support for both Solr and ElasticSearch. I think the only company that provides support for both is Sematext (disclosure: I'm Sematext founder) Scalability: both can be scaled to very large clusters. ES is easier to scale than pre-Solr 4.0 version of Solr, but with Solr 4.0 that's no longer the case.

有关Solr vs. ElasticSearch主题的更全面报道,请查看https://sematext.com/blog/solr-vs-elasticsearch-part-1-overview/。这是Sematext系列文章中的第一篇,对Solr和ElasticSearch进行了直接和中立的比较。披露:我在Sematext工作。

在solr中添加嵌套文档非常复杂,嵌套数据搜索也非常复杂。但弹性搜索容易添加嵌套文档和搜索

如果您已经在使用SOLR,请坚持使用。如果你正在创业,使用弹性搜索。

最大的主要问题已经在SOLR中得到了解决,它是相当成熟的。

我已经创建了elasticsearch和Solr和splunk之间的主要差异表,您可以使用它作为2016年的更新: