2. Elasticsearch 的核心概念

Node:节点

节点是组成Elasticsearch 集群的基本服务单元,集群中的每个运行中的 Elasticsearch 服务器都可以称之为节点

Cluster:集群

es的集群是由相同 cluster.name(默认是 my-application)的一个或者多个es节点组成的,各个节点协同工作,共享数据,同一集群内节点的名字(node.name)不能重复,但是集群名称一定要相同
2. Elasticsearch 的核心概念
一般的创建 es 集群的时候,需要重命名集群名称,防止启动新节点的时候加入相同网络下的另一个同名集群中

集群节点的状态一般有三种,Green,Yellow,Red

  • Green:表示节点运行状态健康,所有主分片和副分片都可以正常工作
  • Yellow:表示节点运行状态预警,所有主分片正常运行,但是副分片至少有一个不能正常工作
  • Red:表示集群无法使用,集群中至少有一个主分片和他的副分片都不能正常工作,虽然还能进行操作,但是部分数据可能无法返回,如果数据写到问题分片上,就会报错,导致数据丢失

Shards:分片

将一个索引上的数据,水平拆分,拆分出来的每一个数据部分都算作一个分片,一般的,每个分片都会放到不同服务器上

Replicas:备份/副本

每个主分片上会有0个或多个副分片,副分片就叫做主分片的 replicas,副分片对主分片是完全复制的。

一般来说,主分片负责写数据,replicas 负责读数据,当构件索引进行写入操作的时候,首先在主分片上完成数据的索引,然后数据会从主分片分到replicas 上进行索引

主分片不可用的时候,es会在存活的replicas 中选举一个主分片

分片对于提高提高高可用性能,有着至关重要的作用,但是分片也不能盲目添加,否则给数据同步造成负担

Index:索引

索引由一个或者多个分片组成,在使用索引时,需要通过索引名称对在集群中进行唯一标识

Type:类型

是索引内部的逻辑分区,通过Type的名字在索引内进行唯一标识,在查询的时候如果没有该值,则表示需要在整个索引中查询

Document:文档

索引中的每一条数据叫做一个文档,一条文档通过 _id 在Type 中进行唯一标识
2. Elasticsearch 的核心概念

Settings:定义信息

对索引的定义信息,比如一个索引的默认分片数,副本数等

Mapping:映射

Mapping 中保存了定义索引字段的存储类型,分词方式,是否存储等信息,类似于表结构

Analyzer:分词