ES分片
分片:Shard
1.分片的基本概念
分片可以理解为索引的碎片,并且所有碎片都是可以无限复制的
2.分片的种类
主分片(primary shard)
副分片(replica shard)
3.分片的作用和意义
高可用性:提高分布式服务的高可用性。
提高性能:提供系统服务的吞吐量和并发响应的能力。
易扩展性:当集群的性能不满足业务要求时,可以方便快速扩容集群,而无需停止服务。
4.分片的基本策略
1.一个索引包含一个或多个分片,在7.0之前默认五个主分片,每个主分片一个副本;在7.0之后默认一个主分片。副本可以在索引创建之后修改数量,但是主分片的数量一旦确定不可修改,只能创建索引。
2.每个分片都是一个Lucene实例,有完整的创建索引和处理请求的能力。
3.es会自动再Nodes上做分片均衡shard reblance。
4.一个doc不可能同时存在于多个主分片中,但是当每个主分片的副本数量不为一时,可以同时存在多个副本中。
5.主分片和副本分片不能同时存在于同一个节点上。
6.完全相同的副本不能同时存在于同一个节点上。
#查看索引的详细信息
GET _cluster/allocation/explain
GET _cluster/allocation/explain
{
"index": "new_tykh_econtract_web2023-01-27",
"shard": 0,
"primary": false
}
#对外分片的索引进行分片
$ curl --user xxxx:xxxx -X POST "localhost:9200/_cluster/reroute?retry_failed=true"
#查询前几条索引数据
curl -XGET "http://ip:9200/_search?size=1"
5.索引的组成
索引的组成 GET tykh_wechat_wx_web_1992023-01-26 "aliases" : { }, #索引的别名 "mappings" : { #索引的映射 "settings" : { #索引的设置
#修改索引的settings
PUT 索引名/_settings
{
"number_of_shards" : "2",
"number_of_replicas" : "1"
}

浙公网安备 33010602011771号