大家好,关于《技术选型》Elasticsearch很强大我选择Solr很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
Elasticsearch是什么?
Elasticsearch 同样基于Lucene,是另一个领先的开源搜索引擎,支持强大的企业应用程序。 Elastic 是Elasticsearch 和Elastic Stack 背后的公司,为搜索、日志分析和其他高级分析用例提供企业解决方案。
选择您的开源搜索引擎
通常,当我们帮助客户对其企业解决方案中开源搜索引擎的使用进行评估时,有人会问:“Solr 和Elasticsearch 哪个更好?”虽然可能存在一种先入为主的观念,认为一个人本质上就比另一个人更好,但当以“哪一个更适合我?”的方式构建时,这个问题就更相关了。
有多种可用的搜索引擎技术,但最流行的开源变体是那些依赖于Apache Lucene 底层核心功能的技术,这本质上是使搜索引擎工作的部分。 Solr 和Elasticsearch 是搜索库之上的组件,为完整的搜索产品提供自己的实现和功能。 Lucene 的核心功能为Solr 和Elasticsearch 的基本搜索功能提供了相同的体验,但它们在Lucene 的实现方式方面存在差异。
Solr和Elasticsearch:哪个对我的组织更好?
视情况而定。
有许多用例围绕着采用一种技术而不是另一种技术。但当被问到这个问题时,我通常会从运营管理的角度来类比回答: “Solr 就像Linux。Elasticsearch 就像Windows。你可以对Solr 进行很多自定义和自定义,以满足你的需求,但更复杂且占用资源与Elasticsearch 相比,Elasticsearch 非常易于部署、管理和监控(使用X-Pack),具有设计良好的用户界面(Kibana),并且允许数据探索和创建分析可视化,但可以自定义其。功能有限并且使用插件框架更加困难。
Elasticsearch可以为你,如果你想:
让您的搜索引擎快速运行,只需很少的开销即可尽快开始探索您的数据;并使分析和可视化成为您用例的核心组成部分。
Solr可能适合你,如果你:
需要对大量数据进行索引和重新处理;拥有可用于投资管理Solr 和交互工具的资源;并拥有可与Solr 配合使用的现有企业框架(如其他Apache 产品,例如Hadoop,或基于Hadoop 构建的Cloudera、Hortonworks 或HDInsights 等企业框架)。这并不是说Hadoop 平台不能与Elasticsearch 一起使用(我们的客户提出了这个问题),而是一些平台,Cloudera,尤其是Hortonworks,提供了额外的工具和方法,用于在生态系统内管理和索引Solr 中的数据(这是一个Cloudera 即将发布的支持Solr 7 的CDH 6 的特定示例)。
Solr与Elasticsearch:特性比较
根据经验,评估可以为客户定义战略和实施路线图提供巨大价值。作为评估过程的一部分,我们执行搜索引擎比较矩阵,该矩阵根据特定客户需求和用例,使用基于某些功能优先级的加权评分机制来评估搜索引擎的适用性。基于此分析,有一些常见的功能和用例可以作为搜索引擎整体推荐时的兴趣点。
下图显示了对Solr 和Elasticsearch: 的一些观察
选择Solr和Elasticsearch?考虑这些
决定哪个搜索引擎最适合您的特定用例和需求不应该是基于“非此即彼”假设的决定。 Solr 中特定功能的总体重要性可能超过Elasticsearch 的操作优势,例如:
在一种客户端案例中,与Solr 部署以及必须使用过时的SolrNET 客户端(当时)相关的开销被Solr 的可插拔特性所抵消。需要自定义加密更新和请求处理程序才能使用轮换数据加密密钥对索引内容进行加密,因此必须使用Solr 而不是Elasticsearch。索引加密过程所需的功能无法在Elasticsearch 中有效实现。
相反,当在不考虑大数据或分析的情况下评估一般搜索用例的搜索引擎选项时,Elasticsearch 因其减少的维护和部署开销以及完全托管和管理环境的选项而成为更受欢迎的选择。
在某些情况下,基于对客户最重要的内容,尽管应用了评分规则,但并不能立即清楚哪个搜索引擎(包括商业引擎)将最好地满足客户的需求。在这种情况下,可以使用样本数据集来执行“烘焙”,以评估每个引擎对于客户的一组特定用例的执行情况。
归根结底,Solr 和Elasticsearch 都是强大、灵活、可扩展且极其强大的开源搜索引擎。整体用例和业务需求,以及您所需的功能、操作注意事项以及与新的认知搜索和分析功能的集成,将最终推动您在Solr 和Elasticsearch 之间做出决定。
主要评论:
虽然ES很轻、很大,但是大型企业首先需要考虑的就是风险,比如许可证变更、开源变成闭源、高级功能只有企业版才有,以及最近闹得沸沸扬扬的商业软件禁止某些企业的情况从使用开源。反之,则无所谓。
在同时满足业务的前提下,我建议优先使用开源基金会拥有的Apache、MIT、BSD License下的开源软件,这样可以降低安全、供应链、财务等风险。
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/117101.html
用户评论
凉城°
完全同意你的观点!Elasticsearch的确功能强大,但对于像我这样的项目来说,Solr更加适合我们现在的需求。Solr在索引管理、文档存储和查询效率上都做的很好,而且更易于维护。
有9位网友表示赞同!
Hello爱情风
作为一名资深开发人员,我一直用的也是Solr,因为它稳定可靠,并且对数据安全有更多保障。Elasticsearch虽然功能强大,但可能比较复杂,尤其对于项目初期来说。
有10位网友表示赞同!
北染陌人
我理解你的想法,各有优缺点吧! 现在这个互联网行业,技术栈变化很快,很多时候选择并不是绝对的,更重要的是找到最适合团队和项目的工具。
有8位网友表示赞同!
■孤独像过不去的桥≈
确实,“一个平台解决所有问题”的想法很棒,但现实中往往需要针对具体场景做优化。 虽然Elasticsearch很强大,但是Solr在一些特定的场景下更具优势。
有18位网友表示赞同!
焚心劫
我刚开始用 Elasticsearch,感觉的确功能很多,但是配置起来比较复杂,文档也看的云里雾里 😅 或许Solr更适合我的项目需求吧
有20位网友表示赞同!
寂莫
选技术的时候确实不能盲目追求潮流,要根据实际情况做决定。 这篇文章让我对Solr有了新的认识!
有13位网友表示赞同!
灼痛
说实话,我一直觉得 Elasticsearch 比 Solr 功能强大很多,不过看你的文章,Solr在查询效率上更有优势? 你可以分享一下你项目中具体使用到的场景吗?
有10位网友表示赞同!
何必锁我心
技术选型确实是很重要的一个环节,选错了可能会带来巨大的问题。 作者的经验值得参考!
有8位网友表示赞同!
呆萌
同意你的观点,Solr 在特定需求下比 Elasticsearch 更适合 我之前也在做类似的项目选择过这两个平台!
有5位网友表示赞同!
晨与橙与城
个人觉得技术选型的关键在于对项目的深入理解,而不是单纯地追求某个平台的功能强大性。 这篇文章很有启发性!
有19位网友表示赞同!
敬情
ElasticSearch 和 Solr 都很好用! 只是根据具体的需求来选择合适的那一个吧!
有12位网友表示赞同!
将妓就计
我一直很迷恋 Elasticsearch 的功能强大,但在实际项目中往往发现它的复杂度有时会成为负担。Solr相对简单易用,也足够满足大部分需求。
有11位网友表示赞同!
有恃无恐
对于数据量较小, 需求较为简单项目的来说,Solr是一个不错的选择。 Elasticsearch 可能显得功能过度,而且增加学习和维护成本。
有13位网友表示赞同!
请在乎我1秒
我很认同作者的观点! 在项目初期,优先考虑稳定性和易用性比追求极致的功能更加重要。 Solr在这一点上做得非常好。
有9位网友表示赞同!
眼角有泪°
Elasticsearch 和Solr各有优劣,但对于技术选型来说,最重要的是根据项目的实际需求和团队实力做出最佳选择。
有8位网友表示赞同!
黑夜漫长
这篇文章让我认识到Solr的可塑性! 我一直以为它只是 Elasticsearch 的弱版本,现在看来并非如此。 这或许可以让我对未来的项目选择做一些调整。
有15位网友表示赞同!
冷青裳
选择技术栈确实需要慎重,不能只看趋势或别人推荐。 每个项目的场景不同,适合的工具也不一样。
有5位网友表示赞同!
留我一人
你说的很对,很多时候简单实用的解决方案比复杂的功能更适合实际应用场景。 Solr就是这样一款低调却实用的工具
有13位网友表示赞同!