Elasticsearch中的分片和抄本
Elasticsearch将每个索引区分为多个分片(shard)。分片是将索引水平区分为多个局部的办法,以便分布式存储和处理数据。
专栏Elasticsearch 8.0 快速入门作者:软件架构19币51人已购查察
当你创建一个索引时,可以指定分片的数目。默许情况下,每个索引有5个主分片(primary shard)。每个主分片都是索引的一个完备抄本,包含索引的一局部数据。每个主分片都是一个独立的Lucene索引。
别的,每个主分片都可以有零个或多个抄老实片(replica shard)。抄老实片是主分片的准确抄本,用于提供高可用性和读取负载均衡。抄老实片在不同的节点上复制主分片的数据。
Elasticsearch 克制同一个分片的主分片和抄老实片在同一个节点上,以是假如是一个节点的集群是不克不及有抄本的。
分片的数目和复制级别可以在创建索引时举行设置。经过增长分片数目,可以增长索引的并行性和吞吐量,但是必要更多的硬件资源。经过增长抄老实片的数目,可以提高索引的冗余和可用性,但是会占用更多的存储空间和网络带宽。
“number_of_shards”: 设置了索引的主分片数目。主分片的数目一旦确定就无法变动,以是在创建索引时必要审慎评价和规区分片的数目。
“number_of_replicas”: 设置了每个主分片的抄老实片数目。抄老实片是主分片的准确抄本,用于提供高可用性、冗余和读取负载均衡。抄老实片提供了数据的冗余备份和妨碍规复才能。抄老实片的数目可以依据需求举行调停。
必要注意的是,索引的分片数目在创建索引时就确定了,之后无法变动。假如必要变动分片数目,你必要重新创建一个具有所需分片数目标新索引,并将数据重新索引(reindex)到新索引中。固然重修索引比力耗时,但可以在没有停机的情况下完成。
专栏Elasticsearch 7.x订单中央实战作者:软件架构29.8币237人已购查察
总之,Elasticsearch将每个索引区分为多个分片,如此可以完成数据的分布式存储和处理,并提供高可用性和扩展性。
#暑期创作大赛#