拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

数字云阙客
• 阅读 2565

拔掉数据库的电源会怎样?

假设我们拔掉数据库的电源会怎样?

在日前举行的阿里云“企业级”云灾备解决方案发布会上,阿里云智能技术战略总监陈绪就来了一场现场“断电”演示,拔掉了数据库的电源。

直播回放:https://yq.aliyun.com/live/1104/event

猜猜现场发生了什么?

数据丢失,业务瘫痪,企业资金受损?

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

上述情况统统没有出现!没有出现任何数据丢失,也没有业务瘫痪,10秒后,上云企业的业务就完全恢复了。

那么这是如何实现的呢?

在会上,阿里云智能数据库产品事业部技术总监天羽为大家全面解析《云时代,数据库新型灾备架构》,详细介绍了在混合云架构下,从异地备份、容灾、双活到统一管理的数据库一站式灾备解决方案。

有了云数据库新型灾备架构,即使断电又何妨?通过阿里云提供的DBSDTSHDM等服务,您的企业也可轻松构建灾备体系,做到“有备无患”。

墨菲定律 鸡蛋不能放在一个篮子里

对于每个企业而言,数据库都是其最为核心的资产。但是单点故障是不可避免的,因此为了提升数据安全,需要做的就是数据冗余。

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

国家对于数据库灾难恢复能力也定义了相应的标准。对于位于等级2~3的一般业务而言,需要每天进行备份;对于位于等级4的重要业务而言,需要每天全量+增量备份;对于等级5的关键业务而言,要求数据丢失不能超过半个小时,并且要求在分钟级别恢复业务;对于位于等级6的核心业务而言,则需要做到数据零丢失。

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

阿里巴巴数据库从备份到多活的发展经过了以下历程:

2012年之前,阿里巴巴采用的是异地冷备+热备方案,提供只读副本,当时异地冷备和热备可能出现异地延时比较长的问题,导致出现灾难之后敢不敢进行数据库切换成为一个问题,可能现在很多传统企业还在使用该方案。

2013年,阿里巴巴通过数据库实时日志的解析能力实现了同城双活。

2014年,阿里巴巴实现了异地双活。

2015年,阿里巴巴就实现了中美同步以及多个地域、多点写入的数据同步策略。

2016年,阿里巴巴实现了分布式数据强一致的能力以及异地多活能力。

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

在不断提升阿里巴巴灾备能力的过程中,我们也在阿里云上孵化了数据库备份(DBS)、数据传输(DTS)、混合云数据库管理(HDM),搭建从备份、容灾、双活及混合云统一管理的一站式云灾备解决方案。

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患
对于等级1到等级4的业务而言,可以通过DBS将数据实时备份到阿里云OSS上,该方案具有低成本、秒级RPO的优势;

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

对于等级5的业务而言,可以通过DTS数据传输服务将本地IDC或者其他云产商的数据库备份到阿里云上去,实现热备或者双活解决方案,实现秒级RPO和秒级RTO。

阿里云数据库新型灾备方案

众所周知,传统灾备解决方案存在成本高昂、实施困难、运维复杂、RTO和RPO无法保障等问题。

阿里云拥有遍布全球安全可靠的数据中心,是企业用户天然的异地灾备中心。阿里云的新型灾备方案可以为您提供低成本、高质量、开箱即用的数据库灾备服务。

1、数据库备份服务DBS
数据库备份服务DBS结合阿里云对象存储服务OSS,能够为用户提供秒级RPO以及低成本的特性,并且实现了国家灾备等级4的相应能力。

用户自建的IDC或者来自其他云厂商的数据库可以通过DBS备份到阿里云OSS之上,而且整个备份的实现过程非常简单,只需要打通网络就可以通过DBS实现数据备份到云上,当出现灾难的时候就能够完成云上数据库快速恢复。

除了和云上数据库进行打通之外,对于数据的备份集而言,也可以通过数据湖服务直接进行查询和验证(无需恢复),这也是阿里云特有的能力之一。

阿里云数据库备份服务DBS主要有如下优势:

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

  • 秒级RPO:因为数据库发生变更的时候,首先会记录日志,再刷新数据。而阿里巴巴沉淀了一整套数据库解析技术,通过这个技术能够实现秒级冷备到阿里云上的能力,并且其冷备数据和在线数据之间仅存在秒级延时。
  • 低成本:借助OSS的能力可以实现对于数据的周期性归档,并且允许数据库只备份核心关注的数据业务表,仅备份有效数据,同时进行加密和压缩。
  • 备份数据可在线读,验证有效性:基于DLA的数据湖能力,备份逻辑数据集允许用户直接进行备份集查询,查询里面的数据内容并且校验其中的数据。基于RDS的能力能够帮助用户在出现灾难时实现数据库的快速恢复。
  • 丰富的备份数据源:阿里云数据库备份服务DBS能够支持非常丰富的数据源,包括Oracle、MySQL、SQLServer、MongoDB以及Redis等。

2、数据库热备以及双活架构DTS

结合DTS和RDS就能够实现云上数据库热备,可以实现国标等级5的灾备能力。无论是将业务中心建立在自建IDC还是其他云厂商上,通过DTS热备到阿里云上,当出现本地IDC出现数据库故障或者误操作的时候,用户就可以一键切换到云热备之上,实现秒级RPO和秒级RTO。

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

您还可以更进一步,借助DTS和RDS实现多活,除了将业务切换到阿里云上之外,还可以反向建立阿里云到本地IDC数据库的同步链路,从而建立双向同步通道,这样就能够提供异地双活能力,两端都可以进行写入和切换。业务也可以在云上和本地IDC之间进行分流,从而实现就近写入和就近服务的查询能力,同时能够支持实现容灾。

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

如果采用传统热备方案,将数据热备到云上之后可以支持实现秒级RPO的数据库切换,但是当切换完成之后如果想要去恢复灾备系统,则需要一定的恢复过程,但是当建立了双向同步通道之后,可以很快地切换到阿里云,同时很快地切换回来,因此能够支持企业实现在线的容灾演练。

关于阿里云数据库传输服务DTS:

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

阿里巴巴在2011年左右开始投入做数据库的日志解析,而DTS除了能够实现日志解析之外,还能够实现高效的数据同步,是阿里巴巴内部实现异地多活的基础设施,也是阿里巴巴的数据从生产到消费的数据流基础设施。

DTS也支持了非常丰富的数据源,包括关系型数据库、NoSQL及大数据等17种数据源,承担了阿里云上的40多万的数据传输任务。

3、基于DMS+HDM的数据库统一管理方案

除了上述的DBS和DTS两款灾备产品之外,当用户使用线下到线上的数据同步或者线下到线上数据热备之后,就会形成一个混合云数据库架构。

阿里云为此提供了一整套数据库混合云统一管理解决方案,该方案沉淀了阿里在脱敏审计、变更管控以及研发协同等多方面的能力。

拔掉数据库的电源会怎样?阿里云数据库新型灾备架构,让云端容灾有“备”无患

在混合云上,如果数据库分布在自建的IDC、其他云厂商以及阿里云上,就可以通过阿里云的混合云数据库管理(HDM)进行统一管理,通过One Console实现统一监控、告警、性能优化和风险识别。

了解企业级云灾备解决方案——“十万先行者计划”,请点击:
https://promotion.aliyun.com/ntms/act/hclouddr/index.html

相关阅读

阿里云发布企业级云灾备解决方案,十万先行者计划开启普惠灾备
专访阿里数据库备份专家 教你Pick最有效的备份系统



本文作者:七幕

阅读原文

本文为云栖社区原创内容,未经允许不得转载。

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Jacquelyn38 Jacquelyn38
4年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Peter20 Peter20
4年前
mysql中like用法
like的通配符有两种%(百分号):代表零个、一个或者多个字符。\(下划线):代表一个数字或者字符。1\.name以"李"开头wherenamelike'李%'2\.name中包含"云",“云”可以在任何位置wherenamelike'%云%'3\.第二个和第三个字符是0的值wheresalarylike'\00%'4\
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这