在去年的AWS re:Invent大会上,亚马逊宣布了Amazon Aurora。Aurora是一个关系型数据库,可以跨3个可用区域复制6份数据,其设计目标是提供高性能和高可用性(99.99%),并且存储可以轻松高效地扩展到64TB。近日,AWS首席传道士Jeff Barr宣布Amazon Aurora正式发布,但目前只有美国东部(北弗吉尼亚)、美国西部(俄勒冈) 和欧洲(爱尔兰)等三个地区的用户可以使用。
\u0026#xD;\n\u0026#xD;\n关于Amazon Aurora的特性,Jeff在先前的博文中已经阐述过。因此,这次他只介绍了该数据库的新特性:
\u0026#xD;\n\u0026#xD;\n- 零宕机迁移:如果用户正在使用Amazon RDS for MySQL,那么借助Amazon Aurora的新特性,只需要很简单的操作(打开RDS控制台,选中现有数据库实例,并从Instance Action菜单下选择Migrate Database)就可以实现零宕机迁移。如果数据库处于活动状态,则需要首先在实例的DB参数组中启用二进制日志(具体方法参见这里)。 \u0026#xD;\n\u0026#xD;\n
- 丰富的指标:每个Amazon Aurora实例都会向Amazon CloudWatch提报大量的指标。用户可以通过控制台查看,并根据需要设定预警值。 \u0026#xD;\n\u0026#xD;\n
- 简单快速的复制:每个Amazon Aurora实例最多可以有15个副本,用户只需几次点击即可完成。而且,得益于Amazon Aurora独特的架构,复制延迟通常只有10到20毫秒。 \u0026#xD;\n\u0026#xD;\n
- 性能提升5倍:在同一硬件上运行时,Amazon Aurora的性价比是传统关系型数据库的5倍。不过,这不是说单个查询的速度快5倍,而是说Amazon Aurora能够处理的并发查询比其它产品多许多。Amazon Aurora独特的高并发存储访问方式减少了数据存储争用,让它可以用一种非常高效的方式处理查询。也许,这可以解答人们先前的疑问。\u0026#xD;\n
AWS合作伙伴网络(APN)已经开始在他们的产品中测试Amazon Aurora,包括Tableau、Talend、Alfresco等。Amazon Aurora已经可以用于生产环境,其计费方式如下:
\u0026#xD;\n\u0026#xD;\n- 数据库实例——主实例和副本均以小时为单位计费。 \u0026#xD;\n\u0026#xD;\n
- 存储——每GB每月0.10美元,依据是数据库实际占用的存储字节数。 \u0026#xD;\n\u0026#xD;\n
- I/O——数据库发起的每百万次I/O请求0.20美元。\u0026#xD;\n
更多价格信息,请查看Amazon Aurora定价页面。
\u0026#xD;\n\u0026#xD;\nAurora发布的消息在Hacker News上引发了激烈的讨论。许多网友都对Aurora的技术架构感兴趣,比如elktea和falcolas就想知道“它是否是基于Galera(一个以InnoDB为基础构建的存储引擎,是MySQL和MariaDB集群实现的基础)?”,而falcolas猜测Aurora是基于NDB构建。对此,Redshift总经理awgupta回复道:
\u0026#xD;\n\u0026#xD;\n\u0026#xD;\n\u0026#xD;\n\u0026#xD;\nAurora既不是基于Galera,也不是基于NDB。
\u0026#xD;\n\u0026#xD;\n你可以将Aurora看作一个单实例数据库……事务、锁、LSN生成等都是在数据库节点完成的。我们会将日志记录向下推送到存储层,Aurora存储负责从日志生成数据块。
\u0026#xD;\n\u0026#xD;\n因此,ACID中的ACI都是在数据库层使用传统的技术实现的。而D则使用了分布式系统的技术……我们有一个生成LSN的头节点,提供一个单调逻辑时钟……
\u0026#xD;\n
另外,谈到Aurora的性能,有网友对基准测试感兴趣,但苦于没能找到独立的第三方对Aurora进行基础测试的案例。对此,awgupta回复说:
\u0026#xD;\n\u0026#xD;\n\u0026#xD;\n\u0026#xD;\n\u0026#xD;\n对于类似TPC-C这样的基准测试,你可以运行:1)CloudHarmony;2)Percona。
\u0026#xD;\n\u0026#xD;\n我们发现,使用CloudHarmony加载大型数据集更简单,但我们两个都做了。
\u0026#xD;\n
另外,他还建议网友阅读这篇文章。这有助于确保,他们配置的客户端有足够的网络吞吐量来运行一次完整的测试。
\u0026#xD;\n\u0026#xD;\n除了上述问题外,有许多网友对Aurora究竟是什么还存在疑问。Jeff建议他们阅读他先前的博文。而关于Aurora的架构细节,网友mathnode则建议观看这段YouTube视频。
\u0026#xD;\n\u0026#xD;\n要了解更多关于Amazon Aurora的信息,请访问Amazon Aurora官方网站或阅读Amazon Aurora文档。
\u0026#xD;\n\u0026#xD;\n感谢郭蕾对本文的审校。
\u0026#xD;\n给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群)。