新概念2:分布式搜索 (倒排索引结构lucene.solr)
版权声明:本文为****博主「千丈之松」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.****.net/hu948162999/article/details/42463043
Lucene创建索引的过程:
1.收集待索引的文档(Document)————文档集合
2.将文档(用分词组件)分词————Token独立单词(去停词/去标点...)
3.语言处理组建(LinguisticProcessor)————Term(小写/变成词根)
4.索引组件(Indexer)————(用term形成字典—按字母排序—合并相同term)
结果:
Solr和elasticsearch的区别?
共同点:solr和elasticsearch都是基于Lucene实现的!
不同点:
- solr利用zookeeper进行分布式管理,而elasticsearch自身带有分布式协调管理功能;
- solr比elasticsearch实现更加全面,solr官方提供的功能更多,而elasticsearch本身更注 重于核心功能,高级功能多由第三方插件提供;
- solr在传统的搜索应用中表现好于elasticsearch,而elasticsearch在实时搜索应用方面比solr表现好!
最后有必要说明一下传统搜索和实时搜索:
传统搜索是从静态数据库中筛选出符合条件的结果,这种结果往往是不可变得、静态的。而实时搜索则是说用户对于搜索的结果是实时变化的。
传统搜索比如电商这种,实时搜索参考谷歌,百度,这种实时搜索。