• 空档滑行
    2018-06-27
    1.远距离集群网络延时较高,而且网络出问题的几率加大,导致数据复制的逻辑会比较复杂
    2.成本过高,数据全量复制,等于存储多份
    所以更好的办法是从业务端对数据做分区,出现地理故障时只形象一部分用户或者功能的使用

    作者回复: 分析到位👍

    
     34
  • 孙振超
    2018-08-15
    数据集群可以做到在不同节点之间复制数据,确保当一个集群断网断电的情况下,仍然有机房可以读取数据,但是在对外提供服务时不仅仅考虑是否能读写数据,还需要考虑读写数据所需的耗时。距离过远意味着耗时较长,如果是搭建专线,成本也会非常高,因而从成本和用户体验两个纬度考量远距离同步集群不适合直接对外提供服务。

    对于城市级数据集群出故障,主要还是通过短距异地(网络耗时在十毫秒级别)集群来解决,远距离集群主要还是用于做冷备、数据离线比对等功能。

    作者回复: 正解👍👍

    
     17
  • XNorth
    2018-06-26
    远距离集群,需要考虑带宽影响。数据量较大,复制成本较高。
    
     8
  • 海罗沃德
    2019-07-14
    AWS按照地理分区为region,每个region之间大约相当于跨国分区,当然在很多国家里AWS都有多个region比如us-west-1,us-west-2,就分别位于加利福尼亚和俄勒冈,而us-east-1在弗吉尼亚

    每个AWS的region下面又有多个availablility zone简称AZ,就是所谓us-west-2 a,us-west-2 b这样的,AZ基本上是不在同一个城市,距离至少要在数百公里以上,以保证地理级别可用

    不同的region级别上数据是很难迁移的,如果有多region的数据同步需求,可能需要联系AWS的工程师来调配资源,而且费用也会很高,但是同region下的AZ级别数据同步是很容易的,费用也很低
    展开

    作者回复: 感谢补充👍👍👍

    
     5
  • feifei
    2018-06-26
    1,远距离分布的网络延迟高,将导致集群中的数据数据同步时延很高,如果出现业务远距离的数据同步,业务的时延不然很高,某些极端情况,可能用户得不到响应,影响用户的使用
    2,远距离的网络可靠性很难保证,支付宝就因为挖断光缆导致用户不可用
    3,成本高,数据中心稀缺的资源是宽带资源,因为是远距离分布,所以宽带的费用会很高
    
     5
  • 郭涛
    2018-06-26
    数据集群中的节点间需要通信,远距离通信网络延迟高,无法保证集群中节点间的数据一致性;长距离网络传输带宽不比局域网,大量数据复制带宽容易成为瓶颈;且一旦出故障,排查的成本也高。数据集群架构适合应对硬件级的故障,远距离、地理范围的可用性保障采用数据分区。
    
     3
  • 文竹
    2018-08-23
    数据分散集群具有均衡性,容错性,可伸缩性特点,响应比较快。

    远距离分布的集群可有如下特点:
    1、更容易出现不可用性,具体表现在业务响应慢,数据读/写/复制延迟高
    2、一致性也难保证
    3、也难保证均衡性,容错性,可伸缩性特点
    4、复杂度较近距离的集群呈现指数级增长


    展开

    作者回复: 正解👍👍

    
     2
  • ttxser
    2018-07-24
    我觉得这是我购买的众多课程中,最值的一个,谢谢!

    作者回复: 谢谢😄每个课程面向的用户和目标不太一样,只能说我的这个正好解决了你的需求,其他课程也不错,我自己也买了几个

    
     2
  • Geek_88604f
    2019-09-16
    既然数据集群就可以做到不同节点之间复制数据,为何不搭建一个远距离分布的集群来应对地理位置级别的故障呢?从以下几个方面来考虑:业务本身、均衡性、容错性、可伸缩性。
            业务本身:在这样的一个集群上网络访问的质量是不可控的,导致用户体验差,用户无法忍受就只能放弃。
            均衡性:在大规模的情况下算法很难保证各个服务器上的数据分区是均衡的。一个可能是算法本身在大规模的情况下失效了;另一个可能是集群中节点的负载情况时时刻刻在发生变化,分区一直处在调整当中。
            容错性:大规模集群中服务器故障是家常便饭,当服务器故障时数据分区需要分配给其他服务器,这就导致了时时刻刻在发生数据迁移,影响正常业务的带宽。
            可伸缩性:一是这样的集群Master是瓶颈,系统节点规模有上限;二是增加或删除节点带来数据分区的大面积迁移
            总的来说,搭建一个远距离分布的集群来应对地理位置级别的故障是很不实际的方案,它注定不能将均衡性、容错性、可伸缩性这三者的影响控制在有限的范围内,进而影响正常业务的开展。
    展开

    作者回复: 专业👍

    
     1
  • 正是那朵玫瑰
    2018-08-03
    老师回复留言真是好快呀!定了好几个专栏,华仔老师对留言的回复是最认真和最负责任的,从专栏学习了很多东西,此留言是特意感谢华仔老师的!
    另外rocketmq确实是producer轮训发给每个master,应该是producer充当了算法分配角色,我开始理解以为一定要服务器端一个节点来充当!

    作者回复: 不是的,算法实现方式很多,客户端实现,路由层实现,服务器转发等都可以😄

    
     1
  • 衣申人
    2018-07-04
    老师,数据分散集群,数据应该是不一样的吧?关键是分区吧,虽然可能节点会互备数量数据,但不等于数据都相同,不然和数据集中集群有和区别?

    作者回复: 嗯,数据分散集群中的节点数据不同,我之前的回复混淆了,参考es就知道了

    
     1
  • 衣申人
    2018-07-03
    请问数据分散集群不就是分区吗?文章在论述时的分类和层次上是不是有点重合?还是我理解错了呢?请老师指导

    作者回复: 分散集群是地理位置上在同一个机房,集群中的数据一样;分区分布在不同地理位置,且数据不一样

    
     1
  • @漆~心endless
    2018-06-29
    能否引入区块链的相关思想去做数据备份,将非机密数据进行“去中心化”操作,这样能降低硬件成本,以及提高容灾能力。

    作者回复: 区块链性能太差😂

    
     1
  • 生活就是态度
    2018-06-28
    可以讲讲es,kafka这些中间件优化及应用不

    作者回复: 专栏的目的在于提炼架构设计中本质和通用的内容,这样以后你看到一个系统就知道怎么去分析和研究,如果只是详细讲解某个系统,换个系统这些东西可能都没用了

    
     1
  • 问题究竟系边度
    2018-06-27
    如果采用远距离集群,网络抖动和延时就会对整个集群性能造成影响。 如果出现网络分区,数据出现差别。 同时副本复制的控制会比较复杂

    作者回复: 👍👍👍

    
     1
  • xiong
    2019-11-29
    您好,想问下,集中式数据备份模式,是不同地区的数据都备份到同一个库中吗,还是各备份数据在备份中心也是各自独立的?

    作者回复: 独立的,不然恢复的时候没法操作,这里的集中主要是地理位置上集中

    
    
  • 布小丫学编程
    2019-11-24
    数据分区是按区域划分数据,每个区域提供单独读写功能,不同区域访问不同分区数据可以大大提高数据的访问速度。其他区域可能仅仅是备份。

    数据集群是全量备份,一来数据量很大,二来增加了集群的同步压力,而且远距离实时备份延迟很高。还不如各个区域自己管理自己分区数据。
    
    
  • 赤城
    2019-11-21
    目前阿里云数据库大行其道的背景下,需要做数据库集群部署和分布的只剩下一些大厂在做了,真正上手生产环境的机会越来越可遇不可求了。

    作者回复: 是的,云服务成为基础服务

    
    
  • godtrue
    2019-08-30
    课后思考及问题
    本文核心观点
    1:啥是集群?
    集群就是多台机器组合在一起形成一个统一的系统,这里的“多台”,数量上至少是 3 台;相比而言,主备、主从都是 2 台机器。
    2:集群的类型?
    根据集群中机器承担的不同角色来划分,集群可以分为两类:数据集中集群、数据分散集群。
    数据集中集群与主备、主从这类架构相似,我们也可以称数据集中集群为 1 主多备或者 1 主多从。无论是 1 主 1 从、1 主 1 备,还是 1 主多备、1 主多从,数据都只能往主机中写,而读操作可以参考主备、主从架构进行灵活多变。——核心在于,数据只能往主机中写。
    适合数据量不大,集群机器数量不多的场景。
    数据分散集群指多个服务器组成一个集群,每台服务器都会负责存储一部分数据;同时,为了提升硬件利用率,每台服务器又会备份一部分数据。——核心在于,集群中的机器既负责存储数据又负责备份数据,每台机器都能负责读写请求,需要一个任务分发的角色。
    由于其良好的可伸缩性,适合业务数据量巨大、集群机器数量庞大的业务场景。
    3:啥是数据分区?
    数据分区指将数据按照一定的规则进行分区,不同分区分布在不同的地理位置上,每个分区存储一部分数据,通过这种方式来规避地理级别的故障所造成的巨大影响。
    4:分区和集群,大数据存储系统或者大型网络系统的标配。通俗点说就是单机的性能或者存储已近极限,但是还是满足不了业务的需要就需要加机器来扛啦!当然,为了数据的高可用性也是采用分布式数据冗余的方式来实现的。
    今天感觉对集群和分区理解的更好一点啦!
    既然数据集群就可以做到不同节点之间复制数据,为何不搭建一个远距离分布的集群来应对地理位置级别的故障呢?
    如果这么做了,会有啥问题呢?最明显的估计会出现更多更大的数据复制延迟问题,数据不一致问题会比较凸现,如果为了更好的网络通信以用来减少数据延迟,会花更多的钱来铺设专线,那由于这些问题可以看出这种方式不太合适。
    展开
    
    
  • Leon📷
    2019-02-25
    ceph这种读写都在一个主OSD进行,从OSD仅仅是在主故障时提供备份给新加入的主OSD,集中和分散如果是相对于主机而言,ceph就是数据分散的集群,如果是按进程来划分的话,就是数据集中式集群。这样理解对吗

    作者回复: 是集中还是分散是根据数据纬度来判断的

    
    
我们在线,来聊聊吧