zoukankan      html  css  js  c++  java
  • Elasticsearch 分布式原理

    Elasticsearch致力于隐藏分布式系统的复杂性。以下这些操作都是在底层自动完成的:
    
    将你的文档分区到不同的容器或者分片(shards)中,它们可以存在于一个或多个节点中。
    
    将分片均匀的分配到各个节点,对索引和搜索做负载均衡。
    
    冗余每一个分片,防止硬件故障造成的数据丢失。
    
    将集群中任意一个节点上的请求路由到相应数据所在的节点。
    
    无论是增加节点,还是移除节点,分片都可以做到无缝的扩展和迁移。
    
    
    
    我们能够发送请求给集群中任意一个节点。每个节点都有能力处理任意请求。每个节点都知道任意文档所在的节点,
    
    所以也可以将请求转发到需要的节点。
    
    
    下面的例子中,我们将发送所有请求给Node 1,这个节点我们将会称之为请求节点(requesting node)
    
    我们发送请求,最好的做法是循环通过所有节点请求,这样可以平衡负载。
    
    
    新建、索引和删除请求都是写(write)操作,它们必须在主分片上成功完成才能复制到相关的复制分片上。

  • 相关阅读:
    Java日志框架
    分布式任务并发调度
    并发(三) CountDownLatch
    并发(二)CyclicBarrier
    并发(一) Semaphore
    MySql
    Hash
    由一个序列化框架的更换引发的问题
    navicat 12 激活
    Spring security
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349893.html
Copyright © 2011-2022 走看看