elasticsearch与solr比较

solr:

优势

  1. Solr有一个更大、更成熟的用户、开发和贡献者社区。
  2. 支持添加多种格式的索引,如:HTML、PDF、微软 Office 系列软件格式以及 JSON、XML、CSV 等纯文本格式。
  3. Solr比较成熟、稳定。
  4. 不考虑建索引的同时进行搜索,速度更快。

缺点

创建索引时,搜索效率降低,实时索引搜索效率不高。html

Elasticsearch

优势

  1. Elasticsearch是分布式的。不须要其余组件,分发是实时的,被叫作”Push replication”。
  2. Elasticsearch 彻底支持 Apache Lucene 的接近实时的搜索。
  3. 处理多租户(multitenancy)不须要特殊配置,而Solr则须要更多的高级设置。
  4. Elasticsearch 采用 Gateway 的概念,使得完备份更加简单。
  5. 各节点组成对等的网络结构,某些节点出现故障时会自动分配其余节点代替其进行工做。

缺点

还不够自动,不适合当前新的Index Warmup API (参考:http://zhaoyanblog.com/archives/764.html)json

总结:

  1. 当单纯的对已有数据进行搜索时,Solr更快。
  2. 当实时创建索引时, Solr会产生io阻塞,查询性能较差, Elasticsearch具备明显的优点。
  3. 随着数据量的增长,Solr的搜索效率会变得更低,而Elasticsearch却没有明显的变化。
  4. Solr的架构不适合实时搜索的应用。
  5. Solr 支持更多格式的数据,而 Elasticsearch 仅支持json文件格式
  6. Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch
  7. Solr 是传统搜索应用的有力解决方案,但 Elasticsearch 更适用于新兴的实时搜索应用
相关文章
相关标签/搜索