ElasticSearch shard&replica机制梳理和创建index图解

櫰木4个月前技术文章100

1、shard&replica的机制梳理

  1. 1个index包含多个shard。一个shard包含index的部分数据

  2. 每个shard都是最小的工作单元,承载部分数据,lucene实例,完整的建立索引和请求的能力

  3. 增减节点,shard会自动在node中进行负载均衡

  4. primary shard和replica shard,每个document只存在于某一个primary shard对应的replica shard中,不可能存在多个primary shard中

  5. replica shard和primary shard 负责容错和承担请求负载

  6. primary shard 的数量在建立索引时就确定了,replica shard的数量可以随意改动

  7. primary shard 默认数量时5,replica shard数量默认为1。则默认有10个shard,5个primary shard,5个replica shard

  8. primary shard 不能和自己的replica shard 放置在同一节点上(如果宕机,则该shard的primary shard和replica shard 都会丢失,起不到容错的作用)

2、图解单node环境下创建index是怎么样的

  1. 单node环境下,创建1个index,有3个primary shard ,3个replica shard

  2. 集群状态为yellow

  3. 此时,只会将3个primary shard分配到仅有的一个node上去,另外3个replica shard没有地方分配

  4. 集群可以正常工作,但是一旦出现宕机,集群将会无法提供服务

#创建index
PUT /es_one
{
  "settings": {
    "number_of_shards": 3, 
    "number_of_replicas": 1
  
  }
}
#查看每个shard 的分配
GET /es_one/_shard_stores

image.png

相关文章

kubernetes实战详解

kubernetes实战详解

一、k8s是什么?1、Kubernetes 是用于自动部署,扩展和管理容器化应用程序的开源系统2、生产级别的容器编排系统3、PaaS平台二、容器是什么?或者说docker是什么?1、容器就是一个沙箱C...

PG查询性能Top SQL

一、查询当前正在运行的Top SQL    查询当前正在运行的会话中耗时最长的Top SQL,where条件可按需修改SELECT pgsa.datname AS database_name    ...

压测实操--TestDFSIO压测hdfs读写方案

压测实操--TestDFSIO压测hdfs读写方案

TestDFSIO主要是对hdfs的I/O性能进行测试,通过使用MapReduce作业来完成测试,作为并行读写文件进行I/O性能测试。每个map任务用于读或写每个文件,map的输出用于收集与处理文件相...

CDH实操--CDH5.8.2升级(一)

CDH实操--CDH5.8.2升级(一)

1、摘要和概述本次升级是从cdh5.8.2升级至cdh6.2.1,由于cm对cdh的兼容性,需要先升级cm,从5.8.2升级至至6.2.1。2、升级CM2.1 CM安装文件2.2 CDH安装文件2.3...

PG的锁(二)

四、死锁PostgreSQL自动检测死锁情况并会自动回滚其中一个事务进行处理,从而其他事务完成。db1=# select * from t1 where id in (1,2,3);  id | i...

PG的表膨胀

1 什么是表膨胀众所周知,PostgreSQL的多版本并发是通过保留变更前的记录来实现的。当数据记录被DML修改,旧版本记录仍保留不变,仅仅需要修改相关记录的xmin、xmax属性,并新增写入变更后的...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。