https://www.cnblogs.com/buqingyuan/p/10419225.html
https://my.oschina.net/u/3080373/blog/2963570
全文搜索引擎
image.pngLucene【仅仅是一个库】
Lucene是一套用于全文检索和搜索的开放源码程序库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程序接口,能够做全文索引和搜索,在Java开发环境里Lucene是一个成熟的免费开放源代码工具;就其本身而论,Lucene是现在并且是这几年,最受欢迎的免费Java信息检索程序库。
Elasticsearch 与 Solr 的比较总结
- 二者安装都很简单;
- Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能;
- Solr 支持更多格式的数据,而 Elasticsearch 仅支持json文件格式;
- Solr 官方提供的功能更多,而 Elasticsearch 本身更注重于核心功能,高级功能多有第三方插件提供;
- Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch。
- Solr 是传统搜索应用的有力解决方案,但 Elasticsearch 更适用于新兴的实时搜索应用。
性能比较差异
当单纯的对已有数据进行搜索时,Solr更快。
Search Fesh Index While Idle当实时建立索引时, Solr会产生io阻塞,查询性能较差, Elasticsearch具有明显的优势。
search_fresh_index_while_indexing随着数据量的增加,Solr的搜索效率会变得更低,而Elasticsearch却没有明显的变化。
search_fresh_index_while_indexing综上所述,Solr的架构不适合实时搜索的应用。
实际生产环境测试*
下图为将搜索引擎从Solr转到Elasticsearch以后的平均查询速度有了50倍的提升。
average_execution_time参考文档:
搜索引擎选择: Elasticsearch与Solr搜索引擎选型调研文档
网友评论