横向扩展(scale horizontally)

随着数据增长的需求,应该怎么样扩展ES呢?如果开启第三个node,这个cluster就会变成如下如所示:

从node1和node2各自移出一个shard到node3中,现在在每个node中有两个shard而不是三个了,这意味着每个node的shared共享了其硬件资源,这样每个shard能达到更好的性能。

每一个shard在自己的权利控制范围中都是一个成熟的搜索引擎,并且有能力使用一个单独的node的所有资源。我们这6个shard能最多扩展到6个node,这时候,每个node的每个shard都能拥有这个node的全部的数据。

但是如果我们想扩展到多于6个node该怎么办呢?

primary
shard的数量在index被创建的时候就已经确定了。这个数量也确定了index可以存储的最大的数据量,但是这个最大数据量是和你的数据和硬件环境相关的。然而读请求,文档搜索能被primary处理,也能被replica
shard处理,所以,这个repolica shard的大小也决定了ES所能处理搜索吞吐量的大小。

在工作的cluster中replica shard的数量是可以根据需求i动态修改的。如过把blogs的replica shard增加一个如下:

PUT /blogs/_settings
{
   "number_of_replicas":2
}

执行后的ES如图:

正如图中所示,blogs这个index现在已经有9个shard,3个primary shard ,6个replica
shard。如果我们在增加三个node到目前的六个node,那么将会在每个node中有一个shard,此时ES能比以前多处理50%的请求。

当然,仅仅是对node增加replica shard并不能提高性能,因为每个shard都要消耗node的资源。你应该通过增加硬件来提高吞吐量。

但是,扩展replica数量的意义在于,我们有更多的数据冗余。通过以上的配置,我们即使丢失了两个node也不会造成数据的丢失。

原文:http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/_scale_horizontally.html

时间: 2024-11-10 14:29:21

横向扩展(scale horizontally)的相关文章

关系型数据库横向扩展的三种方法

本文是 Oracle Coherence 3.5一书,第一章: Achieving Performance, Scalability, and Availability Objectives,第二节:Achieving scalability中,数据库横向扩展部分的读书笔记. 传统的关系型数据库很难扩展,通常是纵向扩展,但到达一定程度时只能横向扩展. 数据库的横向扩展支持三种方法,即主从复制,集群和分片(sharding). 主从复制 主从复制(Master-slave replication)

WinSrv2016横向扩展存储(SDS)[无共享存储]

在Windows Server 2016中引入了一个新存储功能,这个功能非常类似其他的横向扩展存储解决方案,如VMware的VSAN,可以进行存储空间的直连,使用的是存储节点的本地存储,也就是使用每一个存储节点的内部磁盘设备构建HA存储系统连接到单个的存储节点: 所有的节点是利用SMB3来直接与存储空间进行通信: 存储空间无缝集成组成Windows Server的软件定义存储功能,包括横向扩展的文件服务器,群集共享卷,存储空间和故障转移群集. 除此之外按照同样的道理也可以提供给Hyper-V虚拟

构建横向扩展文件服务器

上一篇中,主要演示了如何构建高可用SMB3.0wenjian 服务器,今天主要为大家演示如何构建横向扩展文件服务器并将Hyper-V虚拟机创建到该服务器中. 在 Windows Server 2012 中,横向扩展文件服务器设计用于提供横向扩展文件共享,该类共享可供基于文件的服务器应用程序存储连续使用.横向扩展文件共享允许从同一群集的多个节点上共享同一文件夹.例如,对于使用在 Windows Server 2012 中引入的服务器消息块 (SMB) 扩展的四节点文件服务器群集,运行 Window

Puppet扩展篇6-通过横向扩展puppetmaster增加架构的灵活性

零基础学习Puppet自动化配置管理系列文档 puppetmaster横向扩展将采用以下架构进行部署,也可以参考<puppet实战>第246页的内容. puppet集群扩展架构图 主机IP地址信息机用途表 puppet集群扩展架构图 工作原理: 客户端通过配置ca_server指定CA服务器,以达到独立CA服务器的目的. CA服务器可以部署在多个机房. Master集群可以在同一机房配置负载均衡器,也可以使用DNS解析Puppet Master域名到不同机房的多台服务器,通过DNS实现负载均衡

报表设计--分组报表-多层分组-横向扩展

一.新建数据源 参展网格式报表设计 二.操作步骤 在B2单元格中填写=ds.group(TYear),设置为横向扩展: 在B3单元格中填写=ds.group(tjd),设置为横向扩展: 在B4单元格中填写=ds.group(TMonth),设置为横向扩展: 在B5单元格中填写=ds.group(Tmoney) 三.报表计算后预览效果

Scale horizontally和Scale vertically

Methods of adding more resources for a particular application fall into two broad categories: horizontal and vertical scaling.[5] To scale horizontally (or scale out) means to add more nodes to a system, such as adding a new computer to a distributed

presto的动态化应用(一):presto节点的横向扩展与伸缩

一.presto动态化概述 近年来,基于hadoop的sql框架层出不穷,presto也是其中的一员.从2012年发展至今,依然保持年轻的活力(版本迭代依然很快),presto的相关介绍,我们就不赘述了,相信看官多对presto有或多或少的了解,详细的一些说明可以看官网(https://prestodb.io)的说明. presto自身功能和思想富有先进性,虽然由于是内存计算,稳定性方面还有很大提升空间,但整体依然在adhoc方面有很好的竞争力,我们本次介绍针对我们团队对于presto部分应用个

【转】横向扩展与纵向扩展

谈到系统的可伸缩性,Scale-up(纵向扩展)和Scale-out(横向扩展)是两个常见的术语. 鱼缸的启示:Scale-out和Scale-up架构 其实我认为Scale-out和Scale-up的概念可以用一个简单的例子来解释. 不知您有没有养过鱼?当你只有六七条鱼的时候,一个小型鱼缸就够了;可是过一段时间新生了三十多条小鱼,这个小缸显然不够大了. 如果用Scale-up解决方案,那么你就需要去买一个大缸,把所有沙啊.水草啊.布景啊.加热棒.温度计都从小缸里拿出来,重新布置到大缸.这个工程

Infortrend亮相2019年台北国际电脑展,横向扩展NAS集群、云存储、AI一体机集体登场

Infortrend普安科技在2019年台北国际电脑展上展示了几条重要的产品线,向与会者显示我们应对数据管理和分析等需求的决心.具备高扩展性的横向扩展NAS,云存储解决方案.智能AI一体机将是我们重点推介的解决方案,这些方案能够帮助企业客户构建灵活的数据环境,在大数据和AI的潮流中持续推动产品与服务的前进. 如今各个行业都在经历数字化转型,数据已成为企业最宝贵的资产. 根据IDC的数据,2019年大数据和数据分析的总产值将达到1891亿美元,预计到2022年将增长到2743亿美元,复合年增长率为

(10)横向扩展ceph集群

当集群容量或者计算资源达到一定限定时,就需要对集群进行扩容,扩容操作主要可以分为两种 :1.纵向扩展:向已有节点中添加磁盘,容量增加,集群计算性能不变:2.横向扩展:添加新的节点,包括磁盘.内存.cpu资源,可以达到扩容性能提升的效果: 一. 在生产环境中避免新增节点影响性能,添加标识位 生产环境中,一般不会在新节点加入ceph集群后,立即开始数据回填,这样会影响集群性能.所以我们需要设置一些标志位,来完成这个目的.[[email protected] ~]##ceph osd set noin