背景:
它们都是基于Lucene搜索服务器基础之上开发,一款优秀的,高性能的企业级搜索服务器。(是因为他们都是基于分词技术构建的倒排索引的方式进行查询)
开发语言:
java语言开发
诞生时间:
Solr2004年诞生。Es2010年诞生。Es更新(功能越强大)
区别:
1、当实时建立索引的时候,Solr会产生io阻塞,而Es则不会,Es查询性能要高于Solr。
2、在不断动态添加数据的时候,Solr的检索效率会变的低下,而Es则没有什么变化。
3、Solr利用zookeeper进行分布式管理,而Es自身带有分布式系统管理功能。Solr一般都要部署到web服务器上,比如tomcat。启动tomcat的时候需要配置tomcat与Solr的关联。(Solr本质是一个动态的web项目)
4、Solr支持更多的格式数据【xml,json,cvs等】,而Es仅支持json文件格式。
5、Solr是最早传统搜索应用的有力解决方案,但是es更适用于新兴的实时搜索应用。
单纯的对已有数据进行检索的时候,Solr效率更好,高于es。
6、Solr官网提供的功能更多,而es本身更注重于核心功能,高级功能多有第三方插件。