ElasticSearch设置默认分片数和副本数

一、前言

ElasticSearch6 以后设置索引的默认分片数和副本数已经不在 elasticsearch.yml 文件中了,而是使用了索引模板的方式配置。

1.1 分片是什么?

简单来讲就是咱们在ES中所有数据的文件块,也是数据的最小单元块,整个ES集群的核心就是对所有分片的分布、索引、负载、路由等达到惊人的速度

1.2 分片个数计算

SN(分片数) = IS(索引大小) / 30

NN(节点数) = SN(分片数) + MNN(主节点数[无数据]) + NNN(负载节点数)

假设有300G大小的数据文件

  • 每一个分片数据文件小于30GB
  • 每一个索引中的一个分片对应一个节点
  • 节点数大于等于分片数

二、分片的设置

2.1 分片与副本数配置

shell> curl -XPUT 'http://10.20.59.21:9200/_template/template_ngx_proxy_access' \
-H 'Content-Type: application/json' \
-d '{"order": 1,"index_patterns": ["ngx_proxy_access_*"],"settings": {"number_of_shards": 3,"number_of_replicas": 1}}'


参数含义:

template_ngx_proxy_access --> 自定义模板名

order:1 --> 设置优先级(数字越大,优先级越高)

index_patterns:ngx_proxy_access_* --> 匹配索引关键字,也可以用星号匹配所有

number_of_shards:3 --> 设置分片数

number_of_replicas:1 --> 设置副本数

2.2 查看配置结果

ElasticSearch设置默认分片数和副本数


作者:龍龍小宝


分享到:


相關文章: