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