“这是一个高达35 PB的仓储巨量数据库迁移的挑战”Amazon.com大数据技术资深经理Thomas Park在今年AWS re:Invent一场专谈DBFreedom的技术议程中,对着台下听众分享Amazon数据库上云经验时首度公开披露这项数据。
今年在美国拉斯维加斯举行的AWS年度大会re:Invent中,AWS也特别开设了一系列专谈DBFreedom议程,其中一场就是专谈“Amazon.com从Oracle数据库搬上AWS”经验的chalk talk,议程还没开始,场外就已经排满人潮,等着抢听Amazon的自身经验。
Amazon在11月1日正式关闭电商平台使用多年的Oracle数据存储系统,改搬到自家AWS云计算数据存储Redshift上,当时这个消息一出,科技圈哗然,成了热议话题。也让全球云计算龙头AWS与传统数据库巨人甲骨文(Oracle)的数据库之争正式浮上台面。
而今年在美国拉斯维加斯举行的AWS年度大会re:Invent中,AWS也特别开设了一系列专谈DBFreedom议程,其中一场就是专谈“Amazon从Oracle数据库搬上AWS”经验的chalk talk上,Thomas Park也以这次Amazon成功换掉Oracle数据存储系统当例子。
Thomas Park表示,Amazon很早就开始采用Oracle数据存储,在换成AWS以前,系统存放的数据总共有多达35PB(压缩后),1个PB(Petabytes)等同于1000个TB,若以一个1TB硬盘厚度平均0.7厘米来计算的话,35PB的硬盘,堆成的高度超过200米高,这还不包括还有一个同样压缩过的5PB的核心数据集,也都要一并改上AWS,这正是Amazon数据存储上云面对的最大挑战。
Thomas Park也首度公开在换成AWS以前,Amazon原本使用甲骨文数据存储与数据库运行的构架图。就像一般企业,Amazon一开始,也使用OLTP database与数据存储,用来处理不同类型的工作负载,像是Oracle数据库可以用在交易型与非交易的workload。包括catalog、inventory、transactions、Clickstream、Marketing等数据,而数据存储是可用来搜集大量交易数据与分析所用。并通过Amazon自行开发一个可以用来管理不同数据库处理流程的ETLM管理平台,除了用协助交易数据萃取和转置外,也能用来处理特殊应用,如跑报表,将取得结果发送给不同使用单位。
他也解释为何AWS数据库上云的原因,就是要让数据库具备横向扩展(Scale Out)的能力,他表示,Amazon成立20多年来,在业务发展上,从开始用来查找交易数据与存储使用的数据库,用的就是Oracle数据库与技术,并用这些数据库来创建Amazon网站底层的构架。但是当是业务逐渐增长,扩建更多的region、与跨入不同领域市场,对于IT团队来说,必需要很快扩展原有基础设施来迎合这样的需求。
但是旧有的数据库设计方式,已无法跟上他们业务快速增长的脚步,所以,Amazon决定将自己的数据库重新打掉重练,改用新的数据库设计方式来取代,以便能够scale out来由于业务增长需求。“这也是我们会决定从使用已久的Oracle数据库搬上AWS的最重要原因。”当然成本也是另一大考察,他也补充说到。
最后,Thomas Park总结从这次推动Amazon数据库与数据存储迁移学到的10堂课:
1.当企业开始要思考迁移数据库,必须先提高能见度(visibility),对数据库使用状况有全盘了解,以利于掌控时间进度。
2.由于数据库搬迁会影响到许多单位正常运行,因此事前必须尽可能寻求高层的支持
3.数据库转移想要顺利进行,事前必须获得Oracle 与SQL数据库管理负责人的支持与协助
4.在数据库转移时,应单独设立开发团队,负责协助解决不同数据库团队移
转遇到的公用问题,有助于缩短迁移时间
5.执行上须与AWS团队保持密切合作
6.团队心态上必须克服对技术的恐惧,并且找出造成技术阻碍的问题症结
7.迁移付出成本和价值的比较,应以能够创造更高价值的目标
8. 以数据库上云带来整体效率的改善当作案例,来说服其他未使用单位加入采用
9.在云计算数据库运维上,也必须要有一套云计算数据库管理工具,能对所有云计算数据库进行统一管理
10.随时保有扩展弹性,然后庆祝胜利到来