您当前的位置是:  首页 > 新闻 > 国际 >
 首页 > 新闻 > 国际 >

亚马逊35PB数据存储上云经验首度大公开

2018-12-19 15:50:23   作者:   来源:CTI论坛   评论:0  点击:


  Amazon数据库搬迁主要负责人亲自传授从Oracle数据存储搬上云的第一手经验,更总结这次搬迁学到的最重要10件事
  Amazon首度公开过去电商平台采用多年的线上交易与数据存储服务架构图
(还未全面改用AWS数据存储前)。(图片来源/AWS)
  从这个架构图来看,不只数据存储是采用Oracle RAC数据库架构,在它上方,还有提供3个针对营运、探查与BIM数据设计的专用数据存储或数据库,里面用也都是Oracle, 再透过DB Link方式相连,连各种交易资料存放的OLTP数据库,也都有部分使用到Oracle产品。
  「这是一个高达35PB的超大型数据存储迁移的挑战。」Amazon.com大数据技术资深经理Thomas Park在今年AWS re:Invent一场专谈DBFreedom的黑板开讲(Chalk Talk)上,对着台下听众分享Amazon数据库上云经验时首度公开揭露这项数据。
  Amazon在11月1日正式关闭电商平台使用多年的Oracle数据存储系统,改搬到自家AWS云端数据存储Redshift上,当时这个消息一出,科技圈譁然,成了热议话题。也让全球云端龙头AWS与企业数据库巨人甲骨文(Oracle)的数据库之争正式浮上台面。
  也因此,今年每一场只要打着Amazon数据库上云的相关议程,都成了今年最抢手的热门场次,早在活动前两周,议程才刚公布,坐位就早已全数被预定一空,只剩下现场候位,甚至活动前一天下午,议程还没开始,场外就已经排满人潮,等着抢听Amazon分享第一手的搬移经验。Thomas Park就是其中一场专谈「Amazon.com从Oracle数据库搬上AWS经验」的讲者。
  Thomas Park表示,Amazon很早就开始采用Oracle数据存储,在换成AWS以前,系统存放的资料总共有多达35PB(压缩後),1个PB(Petabytes)等同於1,000个TB,若以一个1TB硬碟厚度平均0.7公分来计算的话,35PB的硬碟,堆成的高度超过200公尺高,这还不包括还有一个同样压缩过的5PB的核心资料集,也都要一并改上AWS,这正是Amazon数据存储上云面对的最大挑战。
  Amazon大数据技术资深经理Thomas Park
(摄影/余至浩)
  Amazon大数据技术资深经理Thomas Park坦言,旧有的数据库设计方式,已无法跟上Amazon事业快速成长的脚步,所以,Amazon决定将数据库重新打掉重练,改用新的云端数据库设计方式来取代,以便能够快速横向扩展,来因应业务成长需求。
  Thomas Park在传授数据库搬迁经验的过程时,也首度公开过去Amazon电子商务平台背後采用的线上交易与数据存储服务架构图(自11月1日以後,Amazon数据存储已全面改由AWS取代)。
  从这个架构图来看,首先,Amazon所建置的一个超大型数据存储丛集,全部都是采用Oracle RAC数据库架构,在它上方,还有提供3个针对营运、探查与BIM数据设计的专用数据存储或数据库,里面用也都是Oracle, 再透过DB Link方式相连,连做为各种交易资料存放的OLTP数据库,也都有部分使用到Oracle产品,并透过Amazon自行开发一个可以用来管理不同数据库处理流程的ETLM管理平台,来进行协助交易资料萃取和转置。
  Thomas Park指出,就像其他电商平台,Amazon刚开始,也使用许多OLTP数据库与Oracle数据存储,用来处理不同类型的工作负载,像是Oracle数据库可以被用於承载交易型与非交易的工作任务,能处理的资料型态,包括目录、库存、线上交易、网页点击串流,以及行销等资料。而数据存储则是用於蒐集大量交易数据与分析所用。
  数据库扩充力,才是Amazon决定换掉Oracle的真正原因
  但是,为何Amazom後来决定换掉原本数据库?Thomas Park说:「就是为了要让数据库具备横向扩展(Scale Out)的能力。」他表示,Amazon成立20多年来,在业务发展上,从开始用来查询交易资料与储存使用的数据库,用的就是Oracle数据库及其技术,并用这些数据库来建立Amazon网站底层的架构。但是当业务量逐渐成长,需要扩建更多的销售据点与资料中心,并且跨入不同领域市场,对於IT团队来说,必须要能很快扩展原有基础设施,来迎合业务快速成长需求。
  但是旧有的数据库设计方式,已无法跟上Amazon事业快速成长的脚步,所以,Amazon决定将自己的旧数据库全部打掉重练,改用新的云端数据库设计方式来取代,以便能够快速横向扩展,来因应业务迅速成长。「这也是我们会决定从使用已久的Oracle数据库搬上AWS的最重要原因。」当然成本也是另一大考量,他事後补充说到。
  一般来说,在新旧数据库搬迁过程中,企业会先针对旧数据库的纲要(Schema),先经过复制或转换,改到了目标的数据库後,才接着将旧数据库里存放的资料,透过如AWS DMS等数据库搬迁工具,再将全部资料移到新的数据库。
  不过,Thomas Park强调,当一家企业发展成长到达一定规模,要迁移数据库,就不是一件容易的事,随着业务量成长,系统架构也将日益庞大复杂,例如需要不断扩增新数据库与备份数据库,来满足营运所需,还要能依据不同关键性应用,来针对数据库采用分层架构,以便於依资料使用频率与重要程度,对应到不同的数据库层存放,或是配合业务发展需求,采用新的数据库架构设计,如分散式数据库等。
  以这次35PB迁移经验来说,Thomas Park坦言,光是要将这些资料全部搬迁到AWS环境,就花了1年多才完成,同时搬移的过程,还要确保整个数据存储服务不能中断,能持续稳定运作,继续提供原有的数据蒐集与分析服务。对Amazon的IT团队来说,这是一大挑战。
  最後,Thomas Park也说到,Amazon至今已经关掉的Oracle数据库,少说也有数千到数万个,现在,都已改用AWS的数据库服务,如Redshift、Amazon RDS,Aurora与DynamoDB等。
  除了数据存储之外,Amazon也将过去沿用了20年关键核心财务系统用的Oracle数据库,也都一并搬上AWS,总共搬迁多达93个数据库、185个实例,累积120TB的资料量,现在都改使用DynamoDB云端数据库。经过改用新的数据库以後,除了更易於管理,更高可靠,更加快近一倍的反应处理时间,也替Amazon省下70%整体成本。
  Amazon从数据库迁移学到的10件事
  1. 必须先提高能见度,全盘了解数据库使用状况,以利掌控进度。
  2. 搬迁工程影响许多单位,事前须尽早寻求高层支持。
  3. 须先获得所有数据库管理人员的支持,搬迁才能顺利。
  4. 搬迁过程,应单独设立一组开发团队,解决不同数据库团队的共通问题,有助加快迁移。
  5. 执行全程须与AWS团队保持密切合作。
  6. 团队应克服对技术的恐惧,找出最棘手及真正的技术问题。
  7. 认清便宜没好货,应追求最高价值,而非最省成本。
  8. 以整体效率的改善,来说服尚未转换的单位。
  9. 资料上云後,要建立统一管理平台。
  10. 随时保有扩充弹性,然後庆祝胜利到来。
  资料来源:AWS,iThome整理,2018年12月
【免责声明】本文仅代表作者本人观点,与CTI论坛无关。CTI论坛对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

专题

CTI论坛会员企业