有“备”无患,互联网“黑天鹅”事件杀手锏来了!
1
有“备”方可无患
今年黑天鹅事件接踵而至,世界范围史无前例的新冠疫情,原油和诸多因素引发美股8天3次熔断,蝗虫,澳洲火灾等等,谁也不知道今年还会有什么发生。
互联网行业今年也经历了几次黑天鹅事件:
有些人可能心存侥幸,恶性事件没有发生在自己身上。然而《随机漫步的傻瓜》提出了一个观点:你的成功不见得是因为比其他人高明,而很可能是运气的结果。随机现象比比皆是,大起大落只是发生在须臾之间。
最大的风险,不是你想到的风险,而是你做梦也想不到的巨大风险。历史表明,最大风险往往是“黑天鹅”事件。
很多互联网企业对数据库的数据安全意识不强,还没有充分意识到数据是企业的核心资产。企业数据库的数据是企业日常运营的心血。既有可能因为程序日常迭代带来的bug,导致数据库数据写脏,也有可能因为员工出现异常情绪,顶着极大法律风险删库跑路。不论是意外影响还是有意破坏,都有可能导致这份核心资产不可用,日常工作功亏一篑。
数据库备份是保护这份核心数据资产的有效保护手段。制定严谨的备份计划,可以让你优雅的掌控随机现象,不需要靠一两个英雄人物力挽狂澜。
微盟和某云厂商花了整整7天才抢救恢复了所有数据,力挽狂澜值得称赞,但是更需要深思,毕竟力挽狂澜仍然有可能结果不如人意。
备份安全措施应做到日常规划中,成为重要而不紧急的事情,根据企业定义的目标和节奏逐步完成。
2
有效的数据库备份策略
备份恢复的方案很多,下面是SHARE提出来的7层恢复能力,能力越强,价值越高,成本也越高。备份恢复有很强的专业性,尤其是在数据库领域,数据的一致性,任意时间点恢复,表级别甚至行级别的恢复,恢复的操作流程等都是难点。不同的平台上不同的数据库的备份方案也不尽相同。
SHARE 7层恢复能力详见:
https://en.wikipedia.org/wiki/Business_continuity_planning#cite_note-33
备份策略通常遵循321原则(也叫3R原则):
- Redundancy:同一数据至少保留三份,包括原数据;
- Replication:保存到二种以上存储介质上,比如光盘、硬盘、云存储;
- Remote:至少有一份异地备份,本地灾难后还可恢复。
数据库备份是较为专业的备份领域,需要关注备份的可恢复性,一致性,RPO,RTO等等。
数据库跟普通文件不同,由于数据库有缓存,事务,日志的机制,直接备份数据库所有的磁盘文件,恢复时可能根本打不开数据库。
RPO跟备份策略有关系,最近一次的备份调度周期影响了最近可用的恢复点,同时数据库日志的备份可以帮助实现任意时间点的恢复。
RTO跟备份方式和恢复策略有关,业界最强可以做到任意大库(甚至是分布式数据库)秒级恢复,在本文后面会介绍到秒级恢复。
3
数据库备份的分类
通常备份厂商提供的数据库备份都是物理备份,实际上,根据备份数据的获取方式,数据库备份可以分为逻辑备份和物理备份。
- 物理备份:将数据库的数据文件和日志文件备份出来,需要借助数据库的备份恢复接口、操作系统的增量数据获取方法以及一致性保障方法进行备份,难点在于如何无入侵获取全量和增量数据。如果把数据库以文件的方式备份出来,那么这个数据库大概率是拉不起来的。一些商业数据库如Oracle等备份恢复内容和流程较为复杂,需要丰富的数据库运维经验。
- 逻辑备份:将数据库的全量和实时增量数据转化成一种中间格式,恢复到不同版本和不同的数据库中。难点在于如何无锁地获取一致性全量数据,以及如何解析出实时增量数据。全量备份可以借助数据库的dumper/loader实现,但通常这些dumper需要对数据库上锁以获得一致性备份点。实时增量数据通常是借助日志解析实现的,其他方法如物化视图、trigger等都对业务有一定影响,开源数据库可以通过一些开源工具解析出实时增量数据,但是稳定的工具并不多,而商业化数据库的日志解析也都不开放。
根据数据库的数据和文件特性,又可将数据库备份分为数据备份和日志备份:
🔸 数据备份:全量、增量和差异备份
- 全量备份:所有数据的备份。
- 增量备份:最近一次全量或者增量备份之后的新增数据备份。恢复时,需要回放最近一次全量备份以及这次全量之后的所有增量。增量备份减少了用户备份的数据量,避免频繁的全量备份带来的开销。
- 差异备份:最近一次全量之后的新增数据,跟增量备份不同的是,不论最近一次全量之后有多少次差异备份,新增数据都是从最近一次全量之后的变化数据,所以多次差异备份之间是逐步叠加的过程。恢复时,需要回放最近一次全量备份以及最近一次差异备份。
🔸 日志备份:借助日志备份可以实现任意时间点的一致性备份。
例如,SQL Server的物理备份可以提供全量、差异、日志备份能力:
如果具备增量合并和历史数据打快照的能力,则可实现一次全量永久增量,每一个增量备份点都能提供全量数据,以更小的备份代价实现更快的恢复速度。尽管如此,为了保障备份恢复正确性,通常还是会周期性做全量,只是会减少全量周期的频率。
在备份策略的选择中,物理备份相对逻辑备份在恢复的速度上更快,逻辑备份相对物理备份在恢复的版本和用途上更灵活,两种备份手段最终都可以实现行级别恢复;通过全、增、差、日志组合的备份计划,一方面考虑备份的成本,一方面考虑恢复的速度,不管是备份的原始全量还是合并出来的全量,全量周期都是恢复的关键因素之一。
4
阿里云数据库备份DBS
不同场景多种方案
备份恢复的产品在过去较长时间都是几个头部的大厂垄断,Data Domain,Veritas等,支持数据库、文件、VM等数据源的全增量备份,借助自己的存储和重删技术保留在本地或分布式文件系统中,并支持长期归档到磁带库和蓝光盘等归档媒介里。
过去几年,虚拟化技术带来了新的备份恢复形态,涌现了一些rubrik和cohesity等创新的厂商。不管是传统还是新型备份厂商,都会借助云厂商的对象存储等低价存储方案来替代磁带库和光盘塔成为归档和异地备份的存储媒介。长期来说,云厂商由于同时具备数据库和VM的生产资料,云厂商的备份恢复的生态将会更加丰富。
DBS是阿里云出品的一款数据库备份产品:
- 完善和安全的自动备份机制:全量、增量和日志备份,逻辑备份和物理备份,传输和存储加密,数据CRC校验;
- 高性能恢复机制:秒级恢复,云容灾,一键恢复到RDS MySQL和SQL Server;
- 低成本的备份存储:可靠的存储,热数据有快照和秒级挂载,冷数据能长期归档;
- 无死角备份冗余:跨地域、跨账户、跨云备份,本地手工和自动下载
- 开放的备份数据:数据湖DLA,秒级挂载,支持业务的各种分析和开发测试需求,盘活冷数据。
DBS可以帮助客户实现跨云、线下备份到云上、阿里云自建ECS以及云数据库等不同环境的数据库备份。
客户可能会面临不同需求,例如:借助备份上云可以实现云上无限存储容量;可以借助极致弹性实现大促或者定时报表分析等按需计算的需求;可以解决多云多环境冗余等数据安全的需求;亦可以借助备份恢复实现开发测试、线上验证等隔离环境搭建。
DBS目前支持Oracle、MySQL、SQL Server、PG、MongoDB、Redis、云原生数据库PolarDB和云原生分布式数据库PolarDB-X的备份恢复。
物理备份需要安装DBS的备份网关,备份恢复性能佳:
- Oracle,支持多流并发备份和挂载备份两种模式的物理备份,挂载备份可秒级挂载。
- MySQL,支持多流并发物理备份和秒级挂载。
- SQL Server,支持多库物理备份。
而逻辑备份是无入侵和无锁备份,备份恢复的版本和粒度更为灵活,可支持表/SQL级别备份,同时备份的全量数据可被数据湖DLA分析,并通过DLA实现行级别恢复。
部分备份的数据可以一键恢复到阿里云数据库,例如,MySQL逻辑备份一键恢复到RDS,SQL Server物理备份一键恢复到RDS。可以按需创建和释放RDS,实现恢复演练,按需查询,弹性计算等功能。不论源端数据库在什么环境,都可以享受到云数据库的弹性和稳定性。
MySQL和Oracle备份的秒级挂载的功能,正在内测,欢迎大家试用。借助备份数据的秒级挂载,可搭建丰富的应用生态,保障生产库小而美,解决一些业务痛点和顽疾,比如可实现非生产环境的秒级恢复,可实现应用之间隔离避免环境相互影响,可帮助业务快速搭建开发测试环境等,还可拉起精准时间点的数据库实例进行数仓分析,数据拖取,复杂计算等等。
针对最近互联网的一系列黑天鹅解决删库跑路事件,针对RDS和ECS的用户,我们推出了跨账户备份的能力。
企业的管理层可以经过授权将数据备份到自己的独立账户中,实现CEO/CTO和运维人员之间权责分离,运维和归档数据和操作分离,避免人工误操作,多一份保障,企业管理者可以多一份安心。
5
“战绩”颇丰
DBS为企业数据安全保驾护航
DBS产品上线至今,服务了众多大、中、小型企业,也帮助企业解决过种种异常情况,从本地硬件故障到程序员开发bug删错数据等等。
1. DBS可以帮助客户解决无心过失操作,例如某跨境券商程序员误删库,通过DBS实现任意时间点恢复。
2. DBS可以帮助自建IDC的客户实现低成本的异地容灾方案,例如某二甲医院借助DBS实现异地备份,满足国家二甲医院等保规范。
3. DBS可以帮助线下客户实现线上高可用方案,例如某大型家电企业借助DBS实现云备份和秒级恢复。
4. DBS可以帮助跨云客户实现跨地域和跨云的容灾,例如某运行在一线云平台的互联网公司借助DBS实现多云冗余,另某运行在非一线云平台的互联网公司借助DBS实现多云备份和容灾。
5. DBS可以帮助线下客户实现无限容量,例如电商行业数据保存3年的要求,借助DBS实现备份上云无限存储容量,而且可以任意时间点恢复到线下或者云上。
6
小结
DBS旨在保护生产数据最后一道生命线,并将持续推出新的安全保护措施。DBS还将推送系列文章,针对产品特性的细节再展开,欢迎关注!
也欢迎对数据备份、安全、存储的有志之士加入我们,联系信息cuiyun.fcy@alibaba-inc.com。
作者:延瑛,阿里云数据库高级技术专家
文章转自公众号:阿里云数据库