摘抄:Solr和ElasticSearch的区别
Solr和ElasticSearch的区别
Solr 优点
- Solr有一个更大、更成熟的用户、开发和贡献者社区。
- 支持添加多重格式的索引,如:HTML、PDF、微软office系列软件格式以及JSON,XML,CSV等纯文本格式。
- Solr比较成熟稳定。
- 不考虑建索引的同时进行搜索,速度更快。
Solr 缺点
- 建立索引时,搜索效率下降,实时索引搜索效率不高。
ElasticSearch 优点
- ElasticSearch是分布式的。不需要其他组件,分发是实时的,被叫做“Push replication”.
- ElasticSearch完全支持 Apache Lucene 的接近实时的搜索。
- 处理多租户(multitenancy)不需要要特殊配置,而Solr则需要更多的高级设置。
- ElasticSearch采用 Getway 的概念,使得备份更加简单。
- 各节点组成对等网络结构,某些节点出现故障时会自动分配其他节点代替其进行工作。
ElasticSearch 缺点
- 在需要添加新的数据与新字段的时候,如果elasticSearch进行搜索可能需要重新修改格式。之前的数据需要重新同步。
总结
- 当单纯的对已有数据进行搜索时,Solr更快;
- 当实时建立索引时,Solr会产生io阻塞,查询性能较差,ElasticSearch具有明显的优势。
- 随着数据量增加,Solr的搜索效率会变得更低,而ElasticSearch却没有明显的变化。
- Solr的架构不适合实时搜索的应用。
- Solr支持更多格式的数据,而ElasticSearch仅支持json文件格式。
- Solr在传统的搜索应用中表现好于ElasticSearch,但在处理实时搜索应用时效率明显低于ElasticSearch。
- Solr是传统手搜索应用的有力解决方案,但Elasticsearch更适合新型的实时搜索应用。
PS
摘抄地址:https://blog.csdn.net/qq_35361115/article/details/105928611