标签 : Elasticsearchhtml
[TOC]node
本文是 Elasticsearch 5.0 系列博文的基础概念篇,主要介绍集群,节点,索引,类型,文档,分片,副本等基础概念git
有关概念在Basic Concepts中已经介绍的很详细了,这里简单说一下。github
下面就这几个概念进一步说明数据库
其中索引,类型,文档的概念能够类比关系型数据库elasticsearch
Elasticsearch | 关系型数据库 |
---|---|
索引(index) | 数据库(database) |
类型(type) | 表(table) |
文档(document) | 行记录(row) |
字段(field) | 列(column) |
为何有 shard?ide
为何有replica?性能
Elasticsearch 默认为每一个 index 建立 5 个主分片,且备份数为 1。也就是说,每一个索引由 5 个主分片组成,而且每一个分片拥有一个备份。须要注意的是,主分片的数量一旦肯定,以后是不能更改的(除非从新创建索引),而 replicas 的数量能够在以后随时更改。网站
因此在上一篇文章中,咱们启动 Kibana 后在 Consonle
查询索引状态GET /_cat/indices?v
,会发现 health
是 yellow
而不是 green
,就是由于咱们只开启了一个节点,并且 Kibana 启动后在 Elasticsearch 中创建了一个默认索引 .kibana
,该索引只有 1 个主分片和一个副本,故 shard 都在该节点上,而 shard 的副本不能和该 shard 分配在同一节点,故未生效,从而致使状态是黄色。ui
另外,每一个索引被分配到多个分片,但 number_of_shards
的值只适用于索引,而不是整个集群。这个值指定了每一个索引的分片数,而非整个集群中的所有主分片数。(摘自Optimizing Elasticsearch: How Many Shards per Index?)