ElasticSearch 架构图

 

 

        

                                  ElasticSearch 架构图      

 

 

下往上来分析ElasticSearch 架构图

  Gateway代表ElasticSearch索引的持久化存储方式。

      在Gateway中,ElasticSearch默认先把索引存储在内存中,然后当内存满的时候,再持久化到Gateway里。当ES集群关闭或重启的时候,它就会从Gateway里去读取索引数据。比如LocalFileSystem和HDFS、AS3等。

  DistributedLucene Directory,它是Lucene里的一些列索引文件组成的目录。它负责管理这些索引文件。包括数据的读取、写入,以及索引的添加和合并等。

  River,代表是数据源。是以插件的形式存在于ElasticSearch中。 

  Mapping,映射的意思,非常类似于静态语言中的数据类型。比如我们声明一个int类型的变量,那以后这个变量只能存储int类型的数据。

          比如我们声明一个double类型的mapping字段,则只能存储double类型的数据。

          Mapping不仅是告诉ElasticSearch,哪个字段是哪种类型。还能告诉ElasticSearch如何来索引数据,以及数据是否被索引到等。

  Search Moudle,这个很简单

  Index Moudle,这个很简单

  Disvcovery,主要是负责集群的master节点发现。比如某个节点突然离开或进来的情况,进行一个分片重新分片等。这里有个发现机制。

         发现机制默认的实现方式是单播和多播的形式,即Zen,同时也支持点对点的实现。另外一种是以插件的形式,即EC2。

  Scripting,即脚本语言。包括很多,这里不多赘述。如mvel、js、python等。   

  Transport,代表ElasticSearch内部节点,代表跟集群的客户端交互。包括 Thrift、Memcached、Http等协议

    RESTful Style API,通过RESTful方式来实现API编程。

  3rd plugins,代表第三方插件。

  Java(Netty),是开发框架。

  JMX,是监控。

 

 

 

更详细,见http://www.cnblogs.com/zlslch/category/950999.html 。

以下是一个简化的Elasticsearch架构图: ``` +---------------------------+ | Client Node | | | | +-----------------------+ | | | Load Balancer | | | +-----------------------+ | | | | | | | | +----v----+ | | | Node 1 | | | +---------+ | | | | +----v----+ | | | Node 2 | | | +---------+ | | | | +----v----+ | | | Node 3 | | | +---------+ | | | +---------------------------+ ``` 在这个架构中,有三个Elasticsearch节点(Node),它们协同工作以提供分布式搜索和存储能力。每个节点都存储一部分索引数据,并且可以独立处理搜索请求。 Client Node是用于与Elasticsearch集群通信的接入点。它可以将搜索请求发送到任意一个节点,并接收来自节点的响应。Client Node还可以通过负载均衡器(Load Balancer)来分发请求,确保请求均匀地分布到不同的节点上。 每个节点都包含以下组件: - Data Node:存储索引数据的节点。它负责索引和搜索操作,并维护本地的分片副本。 - Master Node:负责集群管理和协调操作的节点。它处理索引的创建、删除、重分配等操作,并维护集群状态。 - Ingest Node:可选组件,用于在数据写入索引之前对数据进行预处理、转换或过滤。 节点之间通过内部通信协议进行数据同步、分片的分配和复制,以及协调集群操作。这种分布式架构提供了高可用性、容错性和扩展性,使Elasticsearch能够处理海量的数据和高并发的搜索请求。 需要注意的是,上述架构图只是一个简化的示意图,实际的Elasticsearch集群可能包含更多的节点和组件,以满足不同的需求和规模。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值