solr 和 elasticsearch 区别
爱笑的姑娘,总是比别人更容易长眼纹,干纹,细纹,鱼尾纹。
它们都是基于Lucene搜索服务器基础上开发,高性能的企业级搜索服务。【它们都是基于分词技术构建的倒排索引方式进行查询】
区别:
- 当实时建立索引的时候,solr会产生io阻塞,而es则不会,es查询性能高于solr。
- 在不断动态添加数据的时候,solr的检索效率会下降,es则不会。
- Solr利用zk进行分布式管理,es自身带有分布式系统管理功能。Solr的本质是web项目,需要部署到web服务器上,启动服务器时需配置solr。
- Solr支持更多的格式数据[xml、json、csv],而es仅支持json文件格式。
- Solr是传统搜索应用的有力解决方案,但是es更适合新兴实时搜索应用。【solr适合已有数据搜索时,效率更好;需要动态增添数据时,es效率更高】
- solr的观望提供功能更多,es更注重核心搜索功能,高级功能需要三方集成。