ES简介

ElasticSearch是一款非常强大的、基于Lucene的开源搜索及分析引擎;它是一个实时的分布式搜索分析引擎,它能让你以前所未有的速度和规模,去探索你的数据。

ElasticSearch是基于Restful WebApi,使用Java语言开发的搜索引擎库类。

 

ES的应用场景

主要功能:

(1)海量数据的分布式存储和集群管理,达到服务与数据的高可用以及水平扩展。

(2)近实时搜索。

(3)数据聚合功能

应用场景:

(1)网站搜索、垂直搜索、代码搜索

(2)日志管理与分析、安全指标监控、应用性能监控、web抓取舆情分析

 

ES的基础概念

  • Near Realtime (NRT)  – 近实时,数据提交索引后,立马就可以搜索到
  • Cluster 集群  – 相同集群名称的节点菜可以组成一个集群
  • Node 节点 – 存储集群的数据
  • Index 索引 – 一个索引是一个文档的集合。每个索引有唯一的名字,通过这个名字来操作它。一个集群中可以有任意多个索引。
  • Type 类型 – 放在一个索引中,可以索引不同类型的文档,6.0.0版本已经废弃
  • Document 文档 – 被索引的一条数据,索引的基本信息单元,以JSON格式表示
  • Shard 分片:在创建一个索引时可以指定分成多少个分片来存储。
  • Replication 备份:一个分片可以有多个备份