5.elasticsearch-分片

分片与备份

  • 分片分为两种,主分片和副本:

    • 主分片用于解决数据水平扩张问题,通过分片将数据分布到集群的所有节点上

      • 一个分片是一个运行的ES实例
      • 分片数载索引创建时指定,后续不允许修改,处分reindex
    • 副本用以解决数据高可用的问题,副本是主分片的拷贝

      • 副本分片数,可以动态调整
      • 增加副本数,还可以在一定程度上提高服务的高可用(读取的吞吐)
  • 分片的设定

    • 分片的设置过大,数量少

      • 导致后续无法增加节点实现水平扩展
      • 单个分片数据量过大,导致数据重新分片耗时
    • 分片设置的过小,数量多

      • 影响搜索结果的相关性打分,影响数据统计的准确性
      • 单个节点上过多分片,会导致资源浪费,同时会影响性能
      • 7.0之后,默认分片是1,解决了over-sharding的问题
        • shard也是一种资源,shard过多会影响集群的稳定性。因为shard过多,元信息会变多,这些元信息会占用堆内存。shard过多也会影响数据读写性能,因为每个读写请求都需要一个线程。

5.elasticsearch-分片

上一篇:Docker小白到实战之常用命令演示,通俗易懂


下一篇:CollectionUtil:判断集合不为空