当您需要保证MaxCompute作业持续运行时,MaxCompute提供跨地域(Region)灾备功能,支持以项目(Project)为单位远程备份数据和元数据,确保备份地点与数据源的地理距离超过一百公里,以提升数据安全性。您能够自定义选择备份目标地域,并监控备份进度。当遇到地域级别的故障时,该功能允许您将项目迅速切换到备份地域,并利用已备份的数据恢复业务。本文为您介绍跨地域灾备功能说明和使用跨地域灾备功能备份MaxCompute项目。
功能说明
MaxCompute跨地域灾备会选择与当前地域地理距离100公里以上的地域作为数据灾难备份集群,为客户的项目级数据建立完整的异地备份,备份副本包括项目中完整的数据(表、分区、Delta Table、物化视图)和元数据(版本信息、用户角色、权限策略等),小时级备份周期尽可能保护客户数据的完整性和可用性,降低地域性自然灾害造成的数据损失。具体如下:
灾备方式
跨地域灾备采用文件级增量备份,拷贝列压缩的二进制数据文件,兼顾备份效率并降低传输成本,实现小时级备份周期。
故障恢复
当灾难发生,主地域服务不可用时,用户可以选择切换项目到备地域,为项目分配备地域的计算资源,将上游业务连接到备地域的Endpoint,即可立即恢复业务运行。
MaxCompute控制地域和元数据实现了跨地域(Region)高可用,不会因为某个地域故障而停止服务。如上图所示,将北京地域的项目配置为灾备项目,备份目标地域选择上海地域,即选择了一条北京地域至上海地域的复制链路,跨地域复制功能开始从北京地域(主地域)向上海地域(备份地域)同步数据。备份顺序由系统自动识别所有未备份的数据最新版本,并启动并行任务进行备份,备份完成时间主要由待备份数量和跨地域数据传输带宽决定。备份周期受跨地域复制的自动调度策略控制,不保证备份数据的每个增量版本,而是在每次备份启动时复制用户数据的最新版本。
如果主地域发生灾难后,经阿里云确认主地域不可恢复,会开放将项目切换到备份地域所在地域的按钮,您可以根据业务需求选择是否切换地域。切换结果为项目的默认地域从原来的主地域改为备份地域,以备份地域切换时的最新数据版本为可见可用版本。
计费说明
MaxCompute会对开启跨地域灾备的项目以按量付费的方式收取跨地域灾备数据复制费用和跨地域灾备存储费用。关于计费详情,请参见跨地域灾备费用(按量计费)。
使用限制
仅内部项目(即项目管理页项目类型为managed的项目)支持跨地域灾备。
目前仅华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华南1(深圳)、西南1(成都)地域支持跨地域灾备功能。
单个项目的数据仅支持备份到一个目标地域。
仅支持普通表、Delta Table类型表、物化视图等数据备份,暂不支持Resource备份。
说明Delta Table表的灾备数据做Time travel查询时,存在版本限制:仅支持从最新备份版本到用户或系统最近一次触发compact major操作的版本之间进行Time travel查询。关于compact major操作,请参见COMPACTION。
不支持将已备份数据从备份集群回写到主集群。
注意事项
您需要在目标地域开通MaxCompute,即开通后付费(按量付费)资源或购买预付费(包年包月)资源。如果未开通MaxCompute,目标地域不可选,开通MaxCompute请参见开通MaxCompute。
复制链路由MaxCompute提供,MaxCompute会保证项目可以备份到多个地域;此外,您也可以选择将所有项目都备份到同一个地域;以及在任何时候将新创建的项目数据备份到已经存在备份的任何其他地域,如果有链路不可见或报错,可以通过工单、您的专属钉群或MaxCompute开发者社区群(钉钉群号:11782920)联系我们。
增量数据的定义是文件的元数据版本是否发生变化,如果在主地域进行了覆写、合并小文件、删除数据等操作,就会产生新的版本,跨地域复制会将最新数据同步到备份地域。
备份是文件粒度,即跨地域复制尽量保证每个文件是最新版本,但不保证整个项目所有数据在某个时刻的快照版本同时备份,即不支持时间点恢复(PiTR)。因此备份任务调度决定了文件级别恢复点目标(RPO)小于等于1天,您需要考虑不支持PiTR带来的数据版本时间对齐问题。
如果您的项目使用预付费资源,地域切换后默认都会切换到后付费资源。后续可以在备份地域购买预付费资源,修改项目默认计算Quota为新购买的预付费Quota。
说明当前大量灾备项目迁移涌入备份地域的时候,MaxCompute可以保证项目切换到备份地域有计算资源使用,也会补充计算资源,但不能保证性能不受影响。如果您对计算资源性能有非常高的要求,可以在目标地域购买预付费计算资源,地域切换后修改项目默认计算Quota为新购买的预付费Quota。
项目的地域切换后,您需要将对接MaxCompute的周边产品或应用连接的Endpoint切换为目标地域的Endpoint才可以正常访问切换后的项目,否则使用跨地域的Endpoint连接项目可能会有连接稳定性或性能问题。
如果在备份地域恢复生产,并且切换之前的项目关联了DataWorks、OSS等周边配套产品,则这些产品都需要在目标地域开通,然后将迁移后的项目以新项目的方式在目标地域与周边产品重新绑定或配置外部表才可以使用。例如您需要在迁移后的地域新建DataWorks工作空间,使用迁移后地域的Endpoint重新绑定迁移后的MaxCompute项目。因为原地域的DataWorks工作空间即使还可以使用,但其使用原地域的服务角色身份认证或原地域的Endpoint连接已迁移的项目,会产生认证错误或无法连通等问题。如果您在迁移前使用OSS,容灾场景下可能原地域的OSS也无法访问,您需要在迁移后的地域修改MaxCompute外部表配置,指向新地域的OSS Endpoint和文件存储位置。即使原地域OSS还可以使用,也无法保证迁移后的MaxCompute项目可以跨地域读取OSS数据。
重要DataWorks的任务、 OSS的数据等由用户使用这些产品各自的备份功能进行备份或迁移。
使用说明
(可选)开通MaxCompute。
您需要在目标地域开通MaxCompute,即开通后付费(按量付费)资源或购买预付费(包年包月)资源,开通MaxCompute请参见开通MaxCompute。如果您已经在目标地域购买了按量付费或包年包月资源,则可以跳过此步骤。
新增跨地域备份项目。
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择
。在灾备管理页面,单击新增跨地域备份项目。
在新增跨地域备份项目对话框中,选择需要备份的项目和备份目标地域。
如果没有您需要备份的目标地域,可以通过工单、您的专属钉群或MaxCompute开发者社区群(钉钉群号:11782920)联系开通。
单击开始跨地域备份。
(可选)切换至备份地域。
当主地域发生故障后,阿里云确认主地域不可恢复,开放将项目切换到备份地域的能力,切换按钮可用,由您选择触发切换,操作步骤如下。
重要您需要谨慎操作切换功能。因为备份非实时,不支持PiTR,所以切换可能会有数据丢失。如果切换到目标地域后又要切换回源地域,您需要将项目重新建立备份配置,并全量传输数据,再做一次切换才可以完成迁移。
在灾备管理页面,单击目标项目操作列的切换。
在灾备切换对话框,确认切换项目的地域后,单击确定。
切换成功后,在备份地域所在地域的项目管理页面,将可以看到项目。
其他相关操作
删除备份
如果需要取消备份配置,在灾备管理页面,单击目标项目操作列的删除,按照提示输入项目名称再单击确定。
删除操作将停止项目从源地域到目标地域的跨地域数据灾备,同时删除备份地域的备份数据。
您需要谨慎操作删除功能,此操作会立即删除备份地域已复制的数据;如果您要恢复备份,需要重新建立灾备配置,并重新传输全部主地域数据到备份地域。
灾备监控
您可以在灾备管理页面,单击目标项目操作列的监控,查看主地域、备份地域当前已经存储的数据大小和历史累计跨地域复制产生的流量。此信息随跨地域复制任务调度产生,不保证是实时信息,可以表示最多24小时前的信息。