本文只是为了做个了解备忘录,先了解一个很重要的核心的概念:Lucene,Apache Lucene是apache软件基金会的一个项目,是一个开放源代码的全文检索引擎工具包,但它并不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。基本可以说Lucene是当今最先进,最高效的全功能开源搜索引擎框架。而我们这里提到的Elasticsearch和solr都建立在全文搜索引擎Apache Lucene基础上的搜索引擎。本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
Solr是Apache的私生子,是Apache Lucene项目的开源企业搜索平台。其主要功能包括全文检索、命中标示、分面搜索、动态聚类、数据库集成,以及富文本(如Word、PDF)的处理。Solr是高度可扩展的,并提供了分布式搜索和索引复制。Solr是最流行的企业级搜索引擎,Solr4 还增加了NoSQL支持。本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
Elasticsearch是第三方作者Shay Banon使用JAVA开发的,他是报着让Java程序嵌入搜索变得更容易的目的打造了自己第一个开源作品“Compass”,即“指南针”的意思。后来Shay找到了一份面对高性能分布式开发环境的新工作,因工作需要,他决定重写Compass,将它从一个库打造成了一个独立的server,并将其改名为Elasticsearch。本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
Sphinx是由俄罗斯人Andrew Aksyonoff使用C++开发的一个全文检索引擎。意图为其他应用提供高速、低空间占用、高结果 相关度的全文搜索功能。Sphinx可以非常容易的与SQL数据库和脚本语言集成。当前系统内置MySQL和PostgreSQL 数据库数据源的支持,也支持从标准输入读取特定格式 的XML数据。通过修改源代码,用户可以自行增加新的数据源(例如:其他类型的DBMS 的原生支持)。本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
另外Elasticsearch并不仅仅是Lucene这么简单,它不但包括了全文搜索功能,还可以进行分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。并且可以实时分析的分布式搜索引擎。另外还可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据。本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
网上有对sphinx和solr的性能对比:http://www.open-open.com/lib/view/open1456048036636.html本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
也有Elasticsearch和solr的性能对比:http://www.cnblogs.com/chowmin/articles/4629220.html本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
其它的搜索引擎还有:Katta,Hadoop contrib/index,LinkedIn,Lucandra,HBasene等,东西真的不少。任何方面深入一下总感觉光这一方面一辈子也学不完。本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
还有一篇大数据的好文:http://blog.csdn.net/u010098331/article/details/52246307 做个标记。本文地址:http://www.04007.cn/article/272.html,未经许可,不得转载.
本文地址:http://www.04007.cn/article/272.html 未经许可,不得转载. 手机访问本页请扫描右下方二维码.
![]() |
![]() |
手机扫码直接打开本页面 |