zoukankan      html  css  js  c++  java
  • 分布式集群

    一个节点(node) 就是一个Elasticsearch 实例,而一个集群(cluaster) 由一个或多个节点组成,
    
    它们具有相同的cluster.name,它们协调工作,分享数据和负载。
    
    当加入新的节点或者删除一个节点时,集群就会感知并平衡数据。
    
    
    添加索引:
    为了将数据添加到Elasticsearch,我们需要索引(index)---一个存储关联数据的地方,
    
    
    实际上,索引只是一个用来指向一个或多个分片(shards)的"逻辑命名空间(logical namespace)"
    
    
    让我们在集群中唯一一个空节点上创建一个叫做blogs的索引,默认情况下,一个索引被分配5个主分片,
    
    但是为了演示的目的, 我们只分配3个主分片和一个复制分片(每个主分片都有一个复制分片):
    
    PUT /blogs
    {
    "settings" : {
    "number_of_shards" : 3,
    "number_of_replicas" : 1
    }
    }
    
    我们只分配3个主分片和一个复制分片(每个主分片都有一个复制分片):
    
    
    
    
    
    {"settings":{"number_of_shards":3,"number_of_replicas":2}}
    
    
    分配3个主分片和2个复制分片
    
    
    
    增加故障转移:
    
    分片本身就是一个完整的搜索引擎,它可以使用单一节点的所有资源。我们拥有6个分片(3
    个主分片和三个复制分片),最多可以扩展到6个节点,每个节点上有一个分片,每个分片可
    以100%使用这个节点的资源。
    
    
    
    继续扩展:
    
    如果我们要扩展到6个以上的节点,要怎么做?
    
    
    主分片的数量在创建索引时已经确定。实际上,这个数量定义了能存储到索引里数据的最大
    数量(实际的数量取决于你的数据、硬件和应用场景)。然而,主分片或者复制分片都可以
    处理读请求——搜索或文档检索,所以数据的冗余越多,我们能处理的搜索吞吐量就越大。
    
    
    复制分片的数量可以在运行中的集群中动态地变更,这允许我们可以根据需求扩大或者缩小
    规模。让我们把复制分片的数量从原来的 1  增加到 2  :
    PUT /blogs/_settings
    {
    "number_of_replicas" : 2
    }
    
    从图中可以看出, blogs  索引现在有9个分片:3个主分片和6个复制分片。这意味着我们能够
    扩展到9个节点,再次变成每个节点一个分片。这样使我们的搜索性能相比原始的三节点集群
    增加三倍。
    
    
    
    
    
    
    
    
    
    
    
    
    
    

  • 相关阅读:
    2017.04.05-2017.07.14封闭开发总结
    Android读取Manifest文件下Application等节点下的metadata自定义数据
    MyEclipse Hibernate Reverse Engineering 找不到项目错误
    web服务器决定支持多少人同时在线的因素
    配置servers时,错误:Setting property 'source' to 'org.eclipse.jst.jee.server:hczm' did not find a matching property
    查看端口被占用
    高德开发 android 出现 key 鉴权失败
    Android EventBus
    javascript 中的数据驱动页面模式
    读书笔记之
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199446.html
Copyright © 2011-2022 走看看