Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases

Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases
复制标题

DOI:
10.1145/3035918.3056101
复制
发表时间:
2017-05
期刊:
Proceedings of the 2017 ACM International Conference on Management of Data
影响因子:
--
通讯作者:
Alexandre Verbitski;Anurag Gupta;D. Saha;Murali Brahmadesam;K. Gupta;Raman Mittal;S. Krishnamurthy;Sandor Maurice;T. Kharatishvili;Xiaofeng Bao
Alexandre Verbitski;Anurag Gupta;D. Saha;Murali Brahmadesam;K. Gupta;Raman Mittal;S. Krishnamurthy;Sandor Maurice;T. Kharatishvili;Xiaofeng Bao
中科院分区:
其他
文献类型:
--
作者:
Alexandre Verbitski;Anurag Gupta;D. Saha;Murali Brahmadesam;K. Gupta;Raman Mittal;S. Krishnamurthy;Sandor Maurice;T. Kharatishvili;Xiaofeng Bao

文献摘要

被引文献

相似文献

Amazon Aurora是作为Amazon Web Services(AWS)的一部分提供的用于OLTP工作负载的关系数据库服务。在本文中,我们描述了极光的架构和设计考虑,导致该架构。我们认为,高吞吐量数据处理的核心约束已经从计算和存储转移到网络。Aurora为关系数据库带来了一种新颖的架构来解决这一限制,最明显的是将重做处理推到专为Aurora构建的多租户横向扩展存储服务。我们描述了如何这样做不仅减少了网络流量,而且还允许快速崩溃恢复,故障转移到副本而不丢失数据,容错,自我修复存储。然后,我们描述了极光如何实现共识的持久状态在众多的存储节点使用一个有效的异步方案,避免昂贵的和繁琐的恢复协议。最后,在Aurora作为生产服务运营超过18个月后,我们分享了我们从客户那里学到的关于现代云应用对数据库的期望的经验教训。
Amazon Aurora is a relational database service for OLTP workloads offered as part of Amazon Web Services (AWS). In this paper, we describe the architecture of Aurora and the design considerations leading to that architecture. We believe the central constraint in high throughput data processing has moved from compute and storage to the network. Aurora brings a novel architecture to the relational database to address this constraint, most notably by pushing redo processing to a multi-tenant scale-out storage service, purpose-built for Aurora. We describe how doing so not only reduces network traffic, but also allows for fast crash recovery, failovers to replicas without loss of data, and fault-tolerant, self-healing storage. We then describe how Aurora achieves consensus on durable state across numerous storage nodes using an efficient asynchronous scheme, avoiding expensive and chatty recovery protocols. Finally, having operated Aurora as a production service for over 18 months, we share the lessons we have learnt from our customers on what modern cloud applications expect from databases.