Lucene和ES的区别

定义:


  • Lucene是一个​​java信息检索程序库​​。您可以将其包含在项目中,并使用函数调用来参考其功能。

Lucene 是apache软件基金会一个开放源代码的​​全文检索引擎工具包​​,是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是​​以此为基础建立起完整的全文检索引擎​​(搜索引擎和检索程序库不完全等同)。


Elasticsearch是​​基于JSON​​的,​​分布式​​的,基于Lucene的​​Web服务​​。

关系:


  • Elasticsearch基于Lucene构建,Elasticsearch利用Lucene做实际的工作
  • ELasticsearch中的每个分片都是一个分离的Lucene实例.
  • Elasticsearch在Lucene基础上(即利用Lucene的功能)提供了一个分布式的、基于JSON的REST API 来更方便地使用 Lucene的功能。
  • Elasticsearch提供其他支持功能,如线程池,队列,节点/集群监控API,数据监控API,集群管理等