空心|Aurora,万字详文:腾讯数据库专家深度探索Amazon( 七 )
首先 , 存储层与事务管理分离 , 即ACID的D特性独立 , 使得存储有机会成为独立的服务而存在 , 便于跨数据中心时实现数据的容错(fault-tolerant)、自愈(self-healingservice)[11]和快速迁移 。 一旦存储层具备了容错、自愈和可快速迁移特性 , 则对外提供服务就不用再担心数据的短暂或长久的不可用性 。 在数据为王的时代 , 此举能保护好最核心的财产 , 确保云数据库服务能持续不断地对外提供服务 , 这使得Aurora具备了云服务的弹性 。 此点在AWS看来 , 十分重要 。 有了这种需求 , 推动技术架构发生变化便水到渠成 。
服务的过程中 , 局部数据修复的能力 , 速度很快 。 数据库宕机后的恢复 , 速度也很快 。
Oncethedatabasestartsupitperformsvolumerecoveryincollaborationwiththestorageserviceandasaresult,anAuroradatabasecanrecoververyquickly(generallyunder10seconds)evenifitcrashedwhileprocessingover100,000writestatementspersecond.
服务中断后 , 最后的招数就是数据迁移加数据库引擎重新部署 , 而AWS的整个云系统具备了快速迁移数据的能力 , 这使得以存储为核心的云数据库有了超强的持久服务能力 。
Wemonitorandautomaticallyrepairfaultsaspartofourservice.A10GBsegmentcanberepairedin10secondsona10Gbpsnetworklink.Wewouldneedtoseetwosuchfailuresinthesame10secondwindowplusafailureofanAZnotcontainingeitherofthesetwoindependentfailurestolosequorum.Atourobservedfailurerates,that’ssufficientlyunlikely,evenforthenumberofdatabaseswemanageforourcustomers.
其次 , 存储层从高度耦合的数据库引擎中分离 , 降低了数据库引擎的复杂度 , 数据库组件的分离使得数据库部署适应巨量数据的分布式处理需求 。 这将进一步带动数据库引擎上层的语法分析、查询优化、SQL执行、事务处理等组件进一步的解耦 。
笔者认为 , 这是Aurora用实践为数据库架构技术的发展指出的可行方向 。 一个具有实践意义的分布式发展架构 , 总是最亮眼的 , 也总是具有指导意义的 。 存储与计算解耦 , 各种组件互相解耦 , 不断解耦...在此种思路下 , AWS已经走在发展万能数据库引擎的道路上(参见4.2节) 。
3.Aurora的事务处理
Aurora基于MySQL和InnoDB , 实现的是单点写的一主多从架构 , 所以在事务处理方面 , 没有大的变动 , 事务处理技术得到继承 。 整体上是依据SS2PL和MVCC技术实现了事务模型(参见《数据库事务处理的艺术事务管理与并发控制》一书的10.3.3、10.3.4节)和并发控制(参见《数据库事务处理的艺术事务管理与并发控制》一书的第11、12章) 。
3.1持久性
对于Aurora , 事务的ACID特性 , 只有D特性与MySQL和InnoDB有很大的不同 。 Aurora利用MySQL的Mini-transaction和LSN在存储节点构造数据页(基本过程参见2.1节) 。
如前所述 , Aurora的存储层与计算层分离 。 存储层其功能在2.1节讨论 , 其设计思想在2.2节讨论 。 本节从事务的角度来讨论与存储层紧密相关的持久性 , 如表1-2所示存储层是表中的“存储节点S1、S2、S3、S4、S5、S6” 。
推荐阅读
- 空心|招聘丨山西千沐云物联科技有限公司
- 空心|另辟捷径研发“光子芯片”,有望彻底突破美国封锁,华为突然宣布
- 空心唯心|咬一口满嘴飚汁,酥到入口即化,舔屏的节奏,看这爽爽的猪脚皮
- 醉倾城空心|40 Pro真机曝光,Mate30沦为弃机创历史,Mate
- 空心|恐怕只有华为了,2020年还敢出这样配置的手机来割韭菜的
- 空心|全面去除西方技术,打响芯片突围战!中科院出手
- 醉倾城空心|小米10让路新机跌至白菜价,雷军透露小米未来策略
- 空心|iQOO5和小米10Pro现在买谁,4k档5G旗舰终极之战
- 空心|一中国企业不惧打压,超越谷歌,力挺华为,美国全面“封锁”下
- 空心|智能增强的机器人收割机可以灵活采摘人们需要的蔬菜