index-document-shard

1、index、shard、document理解:
    a.每个index包含有多个document,index采用数据路由将document存放在shard中,
    b.算法(数据路由):
       shard = hash(routing) % num(primary shard)
       routing的取值决定将数据存放于哪个shard中
       routing一般默认取值是id
2、为什么primary shard数量不可变,replica shard数量是可变的?
      在数据路由到shard的过程中,采用了primary shard的数量参与了算法计算,
      所以一旦primary shard数量改变了,路由算法的取值也就会改变,那么将导致
      查询数据的时候,shard值发生改变而查询不到数据
注释:每个document肯定只存在于某一个primary shard以及其对应的replica shard中,不可能存在于多个primary shard

  

原文地址:https://www.cnblogs.com/yuefeng123/p/9868946.html