首页> 外文期刊>ACM transactions on database systems >ElasTraS: An Elastic, Scalable, and Self-Managing Transactional Database for the Cloud
【24h】

ElasTraS: An Elastic, Scalable, and Self-Managing Transactional Database for the Cloud

机译:ElasTraS:面向云的弹性,可扩展和自管理事务数据库

获取原文
获取原文并翻译 | 示例

摘要

A database management system (DBMS) serving a cloud platform must handle large numbers of application databases (or tenants) that are characterized by diverse schemas, varying footprints, and unpredictable load patterns. Scaling out using clusters of commodity servers and sharing resources among tenants (i.e., multi-tenancy) are important features of such systems. Moreover, when deployed on a pay-per-use infrastructure, minimizing the system's operating cost while ensuring good performance is also an important goal. Traditional DBMSs were not designed for such scenarios and hence do not possess the mentioned features critical for DBMSs in the cloud.We present ElasTraS, which combines three design principles to build an elastically-scalable multitenant DBMS for transaction processing workloads. These design principles are gleaned from a careful analysis of the years of research in building scalable key-value stores and decades of research in high performance transaction processing systems. ElasTraS scales to thousands of tenants, effectively consolidates tenants with small footprints while scaling-out large tenants across multiple servers in a cluster. ElasTraS also supports low-latency multistep ACID transactions, is fault-tolerant, self-managing, and highly available to support mission critical applications. ElasTraS leverages Albatross, a low overhead on-demand live database migration technique, for elastic load balancing by adding more servers during high load and consolidating to fewer servers during usage troughs. This elastic scaling minimizes the operating cost and ensures good performance even in the presence of unpredictable changes to the workload.We elucidate the design principles, explain the architecture, describe a prototype implementation, present the detailed design and implementation of Albatross, and experimentally evaluate the implementation using a variety of transaction processing workloads. On a cluster of 20 commodity servers, our prototype serves thousands of tenants and serves more than 1 billion transactions per day while migrating tenant databases with minimal overhead to allow lightweight elastic scaling. Using a cluster of 30 commodity servers, ElasTraS can scale-out a terabyte TPC-C database serving an aggregate throughput of approximately one quarter of a million TPC-C transactions per minute.
机译:服务于云平台的数据库管理系统(DBMS)必须处理大量的应用程序数据库(或租户),这些数据库具有不同的架构,不同的占用空间和不可预测的负载模式。使用商品服务器集群进行横向扩展并在租户之间共享资源(即多租户)是此类系统的重要功能。此外,在按使用付费的基础架构上部署时,在确保良好性能的同时将系统的运行成本降至最低也是一个重要目标。传统的DBMS并非针对这种情况而设计,因此不具备对云中的DBMS至关重要的上述功能。我们提出了ElasTraS,它结合了三种设计原理,以构建可弹性伸缩的多租户DBMS,以处理事务处理工作负载。这些设计原理来自对构建可伸缩键值存储的研究多年以及对高性能交易处理系统的数十年研究的仔细分析。 ElasTraS可扩展到成千上万的租户,有效地合并占地面积小的租户,同时在集群中的多个服务器之间扩展大租户。 ElasTraS还支持低延迟的多步ACID事务,具有容错,自我管理功能,并且高度可用于支持关键任务应用程序。 ElasTraS利用低开销的按需实时数据库迁移技术Albatross来实现弹性负载平衡,方法是在高负载期间添加更多服务器,并在使用低谷期间整合到较少的服务器。这种弹性缩放即使在无法预测的工作负载变化的情况下也能最大程度地降低运营成本并确保良好的性能。我们阐明设计原理,解释架构,描述原型实现,介绍Albatross的详细设计和实现,并通过实验评估使用各种事务处理工作负载来实施。在由20台商用服务器组成的群集中,我们的原型为数千名租户提供服务,每天服务超过10亿笔交易,同时以最小的开销迁移租户数据库以实现轻量级的弹性扩展。通过使用由30台商用服务器组成的集群,ElasTraS可以横向扩展一个TB的TPC-C数据库,其总吞吐量约为每分钟一百万个TPC-C事务的四分之一。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号