Lucene与solr与elasticsearch总结

Lucene
开源的全文搜索引擎包,Hadoop创始人Doug Cutting,2000开发 - - 两周时间。
是开放源代码的全文检索引擎工具包,方便的嵌入到各种应用中,实现针对应用的全文索引/检索功能

特点:

稳定,索引性能高,对内存要求1MB栈内存
索引数据占整体索引文件约20%

引入依赖–6.0.0

<dependency> <!-- 查询相关jar包 -->
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-queryparser</artifactId>
<version>6.0.0</version>
</dependency>
<dependency> <!-- lucene自带只能中文分词器jar包 -->
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-analyzers-smartcn</artifactId>
<version>6.0.0</version>
</dependency>
<dependency> <!-- 测试用到的lucene工具包 -->
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-analyzers-common</artifactId>
<version>6.0.0</version>
</dependency>
<dependency> <!-- 测试用到的lucene核心包 -->
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
<version>6.0.0</version>
</dependency>

若为4.8.0版本依赖,见另一篇博文
lucene的分词:

elasticsearch:基于Lucene的搜索服务器,提供分部式的全文搜索引擎,基于restful web接口,Java开发。

elasticsearch特点:
自动维护数据的分布到多索引的建立,搜索请求分布到多节点的执行,自动维护数据的冗余副本,保证有机器宕机时不会数据丢失

关于Elasticsearch与Solor的比较总结:
1 都是基于Lucene,且安装都很简单
2 Solr利用Zookeeper进行分布式管理,而Elasticsearch自身带有分布式协调管理功能
3 Solr支持更多格式的数据,而Elasticsearch仅支持json格式
4 Solr官方提供功能较多,而Elasticsearch更注重核心功能,高级功能多由第三方插件提供
5 Solr在传统的搜索应用中表现好于Elasticsearch,但Elasticsearch在实时搜索应用中效率更高

猜你喜欢

转载自blog.csdn.net/qq_38973672/article/details/87804656