跳至主要内容
2018 年

Amazon Advertising 从 Oracle 迁出数据,以便更轻松地在 Amazon RDS 上进行扩展

关键成果

2 倍
吞吐量
2 倍
数据库队列在几分钟内即可应对高峰流量

挑战

当人们在 Amazon.com 网站或移动应用程序上搜索产品时,他们代表着一类既非常特别,又无比重要的潜在客户。他们在零售网站上进行搜索,因此与在公共 Web 搜索引擎上执行相同搜索的那些人相比,他们更有可能做出购买决定。

当定位和转化这些潜在客户时,卖家采用的其中一种方法是使用 Amazon Sponsored Products Ads。为了创建 Sponsored Products 广告活动,卖家需要对与他们的产品相关的关键字出价,以便进行实时竞拍。中标者的广告将出现在与他们的条款相匹配的搜索结果页面上,或者出现在相关产品的详情页面上。卖家只需为他们的广告获得的点击量付费,详细的广告活动报告可以帮助他们跟踪和了解自己的支出和广告效果。

转化数据表明,Sponsored Products Ads 是一款强大的工具,可以帮助新老卖家扩大覆盖面、最大限度地提高销售额,以及设计符合预算的广告活动。成千上万的卖家已经采用了这种方法。

“自从我们推出 Sponsored Products 以来,这款产品一直呈爆炸式增长,”Amazon Self-Service Performance Advertising(SSPA)的数据库架构经理 Samujjwal Roy 表示。SSPA 是 Amazon Engineering and Development 组织的一部分,负责构建、管理和扩展各项技术,这些技术将为包括 Sponsored Products Ads 在内的各种广告产品提供支持。“我们预计,在未来的几年里,交易量和数据量将呈指数级增长。”

对企业来说,如此迅猛的增长当然是好消息,但在不久前,这一增长原本会引发可扩展性问题。原因在于,该团队的产品必须使用大量的 Oracle 数据库。“在短短的几年内,我们需要将现有的 Oracle 数据库扩展到 30 多个,每天要支持数十亿次的广告曝光量,”Roy 说道。“我们必须继续扩展 Oracle,才能支持这一级别的预期增长,但那会是一场噩梦,原因在于 Oracle 的可扩展性有限、维护工作繁重。”

Missing alt text value
Amazon RDS for PostgreSQL 会根据需要自动增大存储空间,这样一来,我们就不必针对未来的峰值进行预置,只需为我们在增长时使用的存储空间付费。

Samujjwal Roy

Amazon.com 数据库架构经理

弃用 Oracle 的原因

该团队并未经历那场“噩梦”,而是决定从 Oracle 迁移到 Amazon Web Services(AWS)。具体而言,该团队打算放弃用来创建和管理广告活动库的众多 Oracle 数据库。广告活动库不仅对亚马逊的各种程序化广告计划(包括 Sponsored Products Ads)的自动化功能至关重要,也是广告商之所以能够管理和分析广告活动的一个关键要素。

广告活动库具有一个大容量在线事务处理(OLTP)数据存储空间,其中包含重要的广告活动记录和数据。长期以来,尽管 SSPA 团队支持的广告服务越来越受欢迎,但随之而来的是吞吐量不断增大。面对这种情况,该团队需要在本地的 Oracle 部署中维护这一数据存储,因此面临着诸多挑战。

这些挑战包括在添加每个新的 Oracle 数据库时需要完成大量的手动工作;特别是,需要维护硬件以及做好准备在流量高峰活动中保持高可用性,但这样会产生运营开销。仅仅数据库升级和修补就占用了 DBA(数据库管理员)30% 的工作时间。

为何选择 Amazon Web Services

向 Amazon RDS 寻求答案

SSPA 断定,广告活动库中使用的数据是分层数据,因此他们需要一款关系解决方案。在考虑了多种选项之后,该团队发现,兼容 PostgreSQL 的 Amazon Relational Database Service(Amazon RDS)版本最有能力提供这一使用案例所需的低延迟。

利用 Amazon RDS,可以轻松在云端设置、操作和扩展基于 PostgreSQL 的关系数据库。这项服务负责管理 PostgreSQL 软件的安装和升级、根据需要进行扩展,并自动执行包括预置、修补和配置在内的各项数据库管理任务。Amazon RDS 还会持续将数据备份到 Amazon Simple Storage Service(Amazon S3),以便进行时间点恢复。

在将传统的 Oracle 架构从 400 个主表标准化为 40 个主表之后,Roy 的团队采取了三步迁移法。首先,该团队基于 Amazon RDS for PostgreSQL 构建了一个原型并对其进行了功能测试,以便确保 AWS Schema Conversion Tool(AWS SCT)和 AWS Database Migration Service(AWS DMS)执行的所有转换都能成功完成。随后,在预生产数据库中,该团队执行了应用程序 API 延迟测试,并基于生产数据调整了 AWS DMS 配置。在第三步也是最后一步中,该团队创建并测试了一项回滚计划和一项数据验证技术,以便能够在出现任何问题时进行恢复。

好处

AWS 上的一款更加简单、更加强大的解决方案

通过从本地 Oracle 数据库解决方案迁移到兼容 PostgreSQL 的 Amazon RDS,SSPA 获得了相当强大的可扩展性、性能和容错能力。“放弃 Oracle 之后,大大减少了检查点和由此产生的网络消耗,”Roy 表示。“通过迁移到 Amazon RDS,我们的吞吐量翻了一番,当为亚马逊的第四季度进行扩展时,我们能够在短短的几分钟内将 Amazon RDS 实例集数量增加一倍。”

由于 Amazon RDS for PostgreSQL 实现了如此全面的自动化,因此维护工作现在变得更加轻松、快捷。“通过使用 Amazon RDS for PostgreSQL 来自动检测和修复损坏的磁盘,我们能够减少数据库管理员的操作负担,因此他们就不必再经常熬夜加班了,”Roy 说道。

这样就节省了大量的成本和时间,这些好处让 SSPA 感到欢欣鼓舞。“我们能够轻松将已经投入使用的性能监控器和管理工具从 Oracle 移植到 Amazon RDS for PostgreSQL,这样就不必花费三年的时间从头开始构建这些监控器和管理工具了,”Roy 表示。“此外,Amazon RDS for PostgreSQL 会根据需要自动增大存储空间,这样一来,我们现在就不必针对未来的峰值进行预置,只需为我们在增长时使用的存储空间付费。”

关于亚马逊

Amazon.com 秉持四大原则:客户至上而非专注于竞争对手;勇于创新;致力于卓越营运;并且高瞻远瞩。客户评论、一键式购物、个性化推荐、Prime、Fulfillment by Amazon、AWS、Kindle Direct Publishing、Kindle、Fire 平板电脑、Fire TV、Amazon Echo 和 Alexa 是亚马逊首创的部分产品和服务。


开始使用

无论行业无论规模,每天都有各种组织在使用 AWS 实现自身业务转型、实现企业愿景。欢迎您联系我们的专家,立即踏上您的 AWS 之旅。
联系销售人员