ElasticSearch 简介

什么是索引

将非结构化数据中的一部分信息提取出来,重新组织,使其变得有一定结构,然后对此有一定结构的数据进行搜索,从而达到搜索相对较快的目的。这部分从非结构化数据中提取出的然后重新组织的信息,称之索引

什么是全文检索(Full-text Search)

先建立索引,再对索引进行搜索的过程就叫全文检索(Full-text Search)

什么是Lucene

Lucene 是 apache 下的一个开源的全文检索引擎工具包(它提供了许多的jar包,即实现全文检索的类库)。它提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便地在目标系统中实现全文检索的功能。

Lucene 与搜索引擎的区别

搜索引擎是对外提供全文检索服务的,是可以单独运行的。

Lucene 只是一个工具包,不能单独运行,需要在项目中加入 Lucene 的jar包,将最终的项目在JVM中运行。

什么是ElasticSearch

ElasticSearch 是在 Apache Lucene 的基础上开发而成,对 Lucene 进行了封装和增强,是一个分布式的开源搜索和分析引擎,适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。。

ElasticSearch vs Solr

  1. Solr 安装相对复杂。ES 开箱即用,十分简单轻巧。
  2. Solr 使用 Zookeeper 进行分布式管理。ES 自带分布式协调管理功能。
  3. Solr 支持多种格式的数据,如 JSON XML CSV。ES 只支持 JSON 格式。
  4. Solr 官方提供的功能更加丰富。ES 更专注于核心功能,高级功能通过第三方插件提供。
  5. Solr 查询速度快,但更新索引速度慢。ES 建立索引速度快,实时性查询速度快。
  6. Solr 社区更成熟活跃。ES 开发维护者较少,更新迭代快,学习使用成本高。

你可能感兴趣的:(elasticsearch)