美文网首页Elasticsearch 入门教程
Elasticsearch(九)Elasticsearch 核心

Elasticsearch(九)Elasticsearch 核心

作者: 与蟒唯舞 | 来源:发表于2017-09-06 17:32 被阅读53次
    核心概念
    1. 一个 Index 包含多个 shard
    1. 每个 shard 都是一个最小工作单元,承载部分数据,每个 shard 都是一个 Lucune 实例,具备完整的建立索引和处理请求的能力

    2. 增减节点时,shard 会自动在节点中负载均衡(rebalance)

    3. 每个 document 肯定只存在某一个 primary shard 以及其对应的 replica shard中,不可能存在于多个 primary shard

    4. replica shard 是 primary shard 的副本,负责容错,以及承担读请求负载

    5. primary shard 的数量在创建索引的时候就固定了,replica shard 的数量可以随时修改

    6. primary shard 默认数量是 5,replica shard 默认是 1,所以默认有 10 个 shard,5 个 primary shard,5 个 replica shard

    7. primary shard 不能和自己的 replica shard 放在同一个节点上(否则节点宕机,数据都丢失,起不到容错的作用),但是可以和其他 primary shard 的 replica shard 放在同一节点上

    单 Node 环境下创建 Index
    1. 单 node 环境下,创建一个 index,有 3 个 primary shard,6 个 replica shard
    PUT /test_index?pretty
    {
      "settings": {
        "number_of_shards": 3,
        "number_of_replicas": 2
      }
    }
    

    查询集群中的节点:

    GET _cat/indices?v
    

    返回结果:

    health status index      uuid                   pri rep docs.count docs.deleted store.size pri.store.size
    yellow open   test_index ktCoIrQfRZu7mAQdBL0qWA   3   2          0            0       486b           486b
    yellow open   store      EDY69rraR-G2U5njlwCpwg   5   1          4            0     22.4kb         22.4kb
    yellow open   .kibana    ZNJy2-qsRGehTmaYqDF_FQ   1   1          1            0      3.2kb          3.2kb
    
    1. 集群 status 是 yellow

    2. 这个时候,只会将 3 个 primary shard 分配到仅有的一个 node 上去,另外3个 replica shard 是无法分配的(primary shard 不能和 replica shard 在同一个 node 上)

    3. 集群可以正常工作,但是一旦出现节点宕机,数据全部丢失,而且集群不可用,无法承接任何请求,所以最小的高可用配置是 2 台服务器

    相关文章

      网友评论

        本文标题:Elasticsearch(九)Elasticsearch 核心

        本文链接:https://www.haomeiwen.com/subject/lhjvjxtx.html