背景介绍

随着数据湖技术从离线向实时的发展,数据湖在业务已逐渐从辅助决策向实时决策,实时干预甚至提前预防的方向发展,同时,随着国家把数据作为第五种生产要素,数据据价值在逐步提升,这样对海量数据湖的可靠性提出了新的要求。

首先,数据湖作为企业全量数据存储的地方,对数据的安全性有着至关重要的作用,如何保证湖内的数据在任何情况下,都不要出现丢失的情况,是越来越多的企业在思考的问题,同时,随着数据湖逐步补齐交互式查询,实时分析等能力,大量的分析师正逐步将日常的数据分析工作转移到数据湖中,在这种背景下,一旦出现数据湖无法对外提供服务或者是数据丢失,将会对企业产生重大影响。但另一方面,数据中心级的故障在全球不断出现,火灾、水灾等各种新闻不断涌现。同时,日常运维过程中的误操作,也是时时刻刻悬在头上的一把利剑,这种情况可能比机房起火更常见,但对数据的影响却也是致命的。

每一次有新闻报道这方面的事故时,相信很多大数据平台的运维人员都是心头一紧,如何确保数据湖系统的绝对可靠,成为越来越多企业关心的问题。

对于一个数据湖平台,常见的故障包括:

类型 故障场景
自然灾难 地震,火灾,水灾等重大灾难导致的机房级、城市级的故障,虽然出现概率低,但影响大,恢复周期长。
错误操作 运维人员无意或无意进行的某些会影响到整个局点数据安全的操作,如数据误删除,此类场景最为常见,对数据的影响也最为致命。
硬件故障 服务器、网络类的小范围故障,随着集群规模的增大,此类故障已成为常态。

数据湖一般作为大规模分布式系统,对以小范围硬件故障类一般都已在系统架构中有比较完善的考虑,本文不做详细描述。下面主要介绍的是重大灾难以及误操作场景下,MRS的高可用方案。

MRS灾备方案介绍

华为云MRS作为全球领先的数据湖平台,在可靠性方面已有比较完整的规划,为应用不同的故障场景,提供了以下三种方案:

  • 数据备份:采用OBS或者备MRS集群来作为备份存储,将关键数据备份到OBS/HDFS中。
  • 单集群跨AZ:采用多AZ方式建设单集群,通过副本放置策略(BPP)和YARN的任务调度机制的优化,确保单AZ故障时数据不丢失,关键业务不中断。
  • 异地主备容灾:分别建设主、备两个MRS集群,配置主备容灾关系,主集群数据周期/实时自动同步到备集群上。主集群故障时,将业务倒换到备集群上,确保业务快速恢复。

下面将对以上三种方案进行详细描述:

MRS备份方案介绍:

备份方案,作为一种最基础的数据保护方案,具有成本低,方案简单的特点,特别是相比其它方案,在数据误删保护方面,具有独特的优势。但是,大数据业务的备份,也是十分有挑战的一项工作,主要体现在:

  • 由于大数据平台的组件多,各类组件的备份方案也不统一,实施起来较为复杂,特别是有些场景,还要考虑组件间的数据一致性问题;
  • 数据体量巨大,全量备份成本高,正因如此,很多大数据项目都没有采用备份方案。

华为云原生数据湖MRS,作为企业级的数据湖平台,具有简单易用的备份管理功能,支持对接多种备份存储方案。整体备份能力如下:

在组件上,支持了Manger、DBService、HDFS、YARN、HBase、Hive、ES、Redist、ClickHouse、IotDB等所有涉及数据的组件。同时MRS支持图形化的备份配置界面,用户只需要按需选择所需要备份的数据,设置好备份周期,系统将会自动周期进行备份,且会保证组件间数据关联的一致性,同时也支持手工一次性备份。

备份存储,MRS支持将数据备份到备MRS集群或OBS上,对于有条件采用OBS备份的场景,可优先采用OBS备份,对于无OBS的场景,可以采用备MRS集群进行备份,在此场景下,考虑到成本,备集群HDFS可以采用两副本。

以下是备份任务的主要管理界面:

创建备份任务时的策略选择:

备份任务管理:

总结:备份方案,由于其在应对数据丢失方面的优势,一般会作为基础的数据保护能力,特别是其全量数据的保存能力,可以应对数据误删除的场景。

MRS单集群跨AZ方案介绍

备份方案虽然可以解决数据可靠性的问题,但无法解决业务可靠性的问题,如果发生机房机的故障,虽然数据可以从备份系统中恢复,但这时的恢复周期会非常长,针对机房级的故障,如何同时解决业务和数据的可靠性,MRS提供了单集群跨AZ的方案,此方案的核心是利用大数据的分布式能力,将一个MRS集群部署到多个AZ中,对于存储层的HDFS,自动识别多AZ,并将多副本分布在多AZ中,确保任一AZ故障,都不会导致数据丢失。对于计算层,支持同一个队列跨AZ部署,并在一个AZ故障时,自动将任务在另一个AZ中重试,实现应用层无感知的AZ迁移。

MRS单集群跨AZ的部署架构如下:

如上图所示,同一个MRS集群会同时部署到3AZ中,对于存储层,通过块放置策略(BPP)对AZ的感知,将同一数据的3个副本,分别放置到3个AZ中,确保任一AZ故障,不会造成数据丢失,对于计算,通过将租户队列配置到多个AZ中,实现租户的应用,在一个AZ故障以后,仍然可以在另外一个AZ中执行。

在跨AZ的的场景下,还有一个比较大的挑战是AZ间的带宽,AZ间的带宽一般会比较有限,如何降低跨AZ部署的时候,对AZ间带宽的要求是一个不可忽视的问题,MRS的跨AZ方案中,为了降低对跨AZ带宽的诉求,MRS从以下三个方面,对跨AZ的流量进行了优化:

  • 应用内的Shuffle流量:基于自研的Superior调度器,实现了正常场景下,计算任务不跨AZ,这样,将作务运行过程中的Shuffle流量全部控制在一个AZ内,减少了跨AZ的流量消耗。
  • 业务数据读取流量:对于业务数据的读请求,通过基于数据本地化的调度,实现了数据从本AZ读取,将跨AZ的读流量降到接近于零。
  • 业务数据写流量:HDFS上的写流量,会有大量的临时文件、日志类的写入流量,MRS实现了按目录配置是否需要跨AZ,实现了只针对真正的业务数据按跨AZ的策略进行副本放置。消减掉了临时文件、日志类的无用的跨AZ流量。
    如下图所示,App1运行于跨AZ队列Queue1上,虽然此队列关联了AZ1和AZ2的计算资源,但MRS自研的Superior调度器通过AZ感知调度,不会将App1的计算任务同时分发到两个AZ上同时执行,而是仅在其中一个AZ上执行,

而当AZ1故障时,Superior会自动将此应用在AZ2上重跑,此时应用看到的任务状态并不会中断,也不需要进行失败重试的改造,实现了对应用的完全透明。

同时可以看出,无论App运行在哪个AZ上,对存储层的访问,都可以实现在本AZ内的闭环,并不需要跨AZ访问,保证性能的同时,也降低了对AZ间带宽的要求。

考虑到某些场景,没有足够的3AZ资源可用,MRS也支持2+1的部署模式,即:两个主AZ加一个仲裁AZ,仲裁AZ不用于实际的数据存储和业务计算,只需要几个工部署需要3AZ仲裁的组件,主要包括Zookeeper、HDFS JournalNode。

针对某此AZ间资源不均的场景,MRS也提供了灵活的配置能力,可以按需配置需要保护的业务(租户)和数据(表/目录),只要最小的AZ中的资源,满足需要跨AZ保护的业务和数据的资耗的诉求即可。不需要强制所有AZ的的资源完全一样。

MRS提供了简单易用的跨AZ部署配置界面:

集群开启跨AZ能力:

选择每个AZ的节点:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FAGohrJ3-1647832171011)(https://bbs-img.huaweicloud.com/blogs/img/image-20210722202913229(1)].png)

总结:

通过在计算、存储、集群管理方面的设计,业务可以方便灵活地部署出跨AZ的MRS集群,在业务看来,跨AZ的集群仍然是一个单集群,且在平台内部实现了AZ故障时的应用重试,应用层也不用进行失败重试类的改造,真正实现了对应用的完全透明的高可用能力。

MRS主备容灾方案介绍

虽然跨AZ的方案,可以解决机房级的故障,但由于单集群跨AZ方案对网络时延的要求,AZ间的距离一般只能在一个城市之内。为了应对城市级的故障场景,需要采用MRS主备容灾的方案,实现真正的高可用,这里需要说明的是,主备容灾方案,是一个端到端的方案,不是一个大数据平台层单方面能实现的,因此很多时候需要结合数据源、应用层的架构进行完整的设计,本文主要介绍大数据平台层的主备容灾方案。大数据平台层的主备复制方案如下图:

针对主备容灾场景下,涉及组件多,同步管理复杂的问题,MRS提供了统一的容灾管理能力,业务只需要将主备集群的容灾关系配置好,即可完成对所有组件的容灾保护。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gUPQTBjF-1647832171012)(https://bbs-img.huaweicloud.com/blogs/img/image-20210724161800050(1)].png)

考虑到容灾服务,很多时候只会针对核心数据和业务进行保护,MRS提供了保护组的概念,一对主备集群,可以配置多个保护组,用于不同业务和数据的主备保护。

一个保护组内,可以配置HDFS目录、Hive表等各种纬度的保护内容。

配置好保护组以后,系统会提供保护组的同步状态、历史记录等管理功能。

总结:通过MRS的主备容灾能力,业务可以很容易地实现大数据平台的异地主备容灾能力,满足应对城市级灾难的能力,配置业务侧的主备容灾方案,真正实现业务的绝对高可用。

总结:

通过上面介绍的三种方案,MRS可以实现从简单的数据备份到跨AZ高可用,到异地容灾的完整场景覆盖,支撑业务应对各种异常场景,三种方案的对比如下:

业务可以根据自身业务特点以及需要应对的故障场景,灵活选择适合自己的方案。如在华北某城市中,通过跨AZ的方式建设主集群,在华南某城市建设一个备集群。这样既能防护AZ级的火灾、电力故障,也能防范城市级的水灾等重大灾难场景。

华为云FusionInsight MRS容灾:大数据两地三中心的容灾也可以如此省心相关推荐

  1. 快来看,大数据两地三中心的容灾也可以如此省心!

    摘要:随着数据湖技术从离线向实时的发展,数据湖在业务已逐渐从辅助决策向实时决策,实时干预甚至提前预防的方向发展,同时,随着国家把数据作为第五种生产要素,数据据价值在逐步提升,这样对海量数据湖的可靠性提 ...

  2. 华为云FusionInsight MRS:千余节点滚动升级业务无中断

    本文分享自华为云社区<华为云FusionInsight MRS如何实现千余节点滚动升级无业务中断升级>,原文作者:沙漏. 华为开发者大会2021(Cloud)大会期间,由华为技术专家天团打 ...

  3. 华为云FusionInsight MRS在金融行业存算分离的实践

    摘要:华为云FusionInsight MRS的大数据存算分离解决方案,实现资源价值最大化,存储与计算资源全面云化.灵活配置.弹性伸缩,降本增效. 在大数据.云计算.5G.AI等技术日新月异,数字经济 ...

  4. 华为云FusionInsight MRS:助力企业构建“一企一湖,一城一湖”

    摘要:华为云FusionInsight MRS新一代的数据湖,让大数据越用越快.越用越易.越用越稳.越用越省!让数据价值近在眼前! 10月30日,以"携手共赢·数创未来"为主题的第 ...

  5. 华为云FusionInsight MRS ClickHouse 增强特性介绍

    ClickHouse是Yandex开发的用于联机分析(OLAP)的DBMS. 2016年根据Apache 2.0许可证开源.功能上支持DDL.DML.数据备份恢复.权限控制.分布式管理等完备的DBMS ...

  6. 华为云快成长直播间大数据AI专场,加速经济物联网智能化提升

    万物智联的经济物联网环境,传统经济场景单一化.管理不集中.用户画像不精准等问题,促进了经济智能化提升,企业也需要更稳定.更安全的大数据平台作为经济提升的产品驱动力. 9月8日,华为云快成长直播间大数据 ...

  7. 国泰君安构建首个两地三中心OpenStack证券灾备云

    三年数字化战略,国泰君安证券与金融产品交易综合服务平台. 国泰君安作为中国证券业全面领先的综合金融服务商,多年来始终以客户为中心,深耕中国市场,为个人和机构客户提供领先的综合金融服务.与此同时,国泰君 ...

  8. 服务器灾备解决方案--两地三中心(图文详解)

    说明 灾备: 是指容灾和备份.容灾是为了在遭遇灾害时能保证信息系统能正常运行,帮助企业实现业务7*24小时连续性的目标,备份是为了应对灾难来临时造成的数据丢失问题.容灾备份产品的最终目标是帮助企业应对 ...

  9. 高可用演进方案(同城灾备、两地三中心、异地双活)

    目录 01 系统可用性 02 单机架构 03 主从副本 04 风险不可控 05 同城灾备 06 同城双活 07 两地三中心 08 伪异地双活 09 真正的异地双活 10 如何实施异地双活 11 异地多 ...

最新文章

  1. 刚刚,2021QS美国大学排名发布!哈佛,斯坦福,MIT位列前三
  2. 3分钟带你理解深度学习中的RNN和LSTM究竟是什么?
  3. 当postgres的主键序列不同步时,如何重置?
  4. CentOS 6.3编译安装Nginx1.2.2+MySQL5.5.25a+PHP5.4.5
  5. 联想Z5手机夺得京东销量第一,联想这是要翻盘的节奏吗?
  6. 如何限制浏览器使用_论如何优雅地使用chrome 浏览器
  7. “先加密后签名”是不是安全?看完这篇就秒懂!
  8. L2-029 特立独行的幸福 (25 分)-PAT 团体程序设计天梯赛 GPLT
  9. Momentum(动量/冲量)的理解及应用
  10. 模块二 会务现场服务策划方案 案例1样本
  11. java毕业设计彩妆销售网站Mybatis+系统+数据库+调试部署
  12. C#生成与识别条形码、二维码示例 zxing、 barcodelib生成条形码 code128B等 无白边 自动宽度
  13. 解决TortoiseSVN不显示状态图标(图文步骤详解)
  14. 消费者购买决策行为研究模型
  15. 基于机智云的智能花盆1.0
  16. 汉语词典快速查询算法研究
  17. php7.4 redis扩展
  18. 快速上手Matlab二维画图
  19. 小白学习HCIA2022
  20. 微信开发者模式php,PHP实现模拟微信公众号开发者模式

热门文章

  1. 轻松实现富文本编辑器
  2. 六、cocos2dx-效果(Effect)
  3. 计算机表格数字怎么,电脑怎么在表格里填字-在EXCEL中数字怎么输入到方框□内??...
  4. 关于revision 的cover letter
  5. 判断一个数是否为两个素数乘积_如何高效筛选素数?
  6. 老夫我写代码的起手式是怎么样的?
  7. Office 365 批量创建用户
  8. 语音增强算法的概述[转]
  9. jqGrid 学习笔记整理——进阶篇(一 )
  10. 快速上手matlab(二)