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設置默認分片數和副本數


作者:龍龍小寶


分享到:


相關文章: