翻译文章:Amazon RDS和Xeround云数据库的详细比较

温馨提示:本文由厦门大学计算机系林子雨翻译自英文网站,转载请注明出处。

Amazon RDS和Xeround云数据库的详细比较

翻译:厦门大学计算机系林子雨(http://www.cs.xmu.edu.cn/linziyu) 翻译时间:2012428日星期六

英文原文地址:http://xeround.com/cloud-database-comparison/amazon-rds-feature-comparison/

和通常的理解不同的是,Amazon RDS并不是一个真正弹性的云数据库服务,而是MySQL数据库在EC2平台上的实现,换句话说,它仅仅是一个运行在普通EC2机器实例上面的MySQL数据库。相反,Xeround是一个纯粹的云数据库,它提供了自动可扩展、弹性、高可用性,而且具备了DBaaS(Database-as-a-Service)的简单、自动和易用的特点。

Xeround和Amazon RDS之间的主要区别:

Xeround

Amazon RDS

基于规则的自动可扩展,不需要停止服务

手工扩展,需要停止服务

根据实际使用情况付费

根据每个实例来付费,存在过度消费问题

从来不会失败,即使Amazon实例出现问题。Xeround提供了一个高可用性、自我修复的数据库,不需要对外停止服务。

不能保证不停止服务,包括计划中的和非计划中的。

无限的数据库尺寸

受到Amazon RDS实例尺寸的限制

数据库配置不会改变应用程序的代码

 

对于高负荷的MySQL应用而言,Xeround可以比RDS提供高出700%的吞吐量和1/10的延迟。

 

 

Xeround云数据库和Amazon RDS之间的详细比较:

 

Feature/Function

Xeround Cloud DBaaS

Amazon RDS

MySQL on EC2

MySQL兼容性

可扩展性

 

 

 

  • 线性扩展和缩减

部分(读副本)

部分(读副本)

备注:Xeround云数据库的吞吐量和尺寸,可以实现线性的扩展和缩减,而且对读和写而言都是如此。相反,Amazon RDS只提供了部分读副本可扩展性,即通过增加更多的读副本来实现扩展,这对于读操作而言,可以实现更大的吞吐量,但是对于OLTP而言,并非如此。而且,这种方法会带来ACID兼容性问题。

  • 弹性

备注:Xeround云数据库可以实现基于负载的扩展和缩减,而不需要对应用做任何改变。

  • 自动可扩展

备注:Xeround云数据库提供了自动的吞吐量弹性扩展,可以根据负载的变化而动态扩展或缩减吞吐量,不需要停止服务,也不需要对应用做任何改变。

  • 应用透明性

备注:Xeround云数据库支持完整的应用透明性,在扩展的时候,不需要进行代码的变更。而在Amazon RDS中,在进行扩展的时候,应用必须负责对负载进行均衡。这就需要在代码中嵌入某种负载均衡机制。

 

 

 

  • 簇模型

对称(没有主从之分)

主/读副本

多主/主从

备注:对称簇模型,意味着所有的节点都是平等的。记录会在服务器之间平等地进行分发和复制。所有的副本都是主记录(master record)。

  • 写/更新操作

没有冲突

没有冲突

在多主方式中可能存在冲突

备注:当在多个节点上对相同的数据进行更新时,服务器之间的数据同步操作是异步执行的,会存在冲突,而且这个冲突不好解决。这会违反ACID四性。

  • 读并发性

对于Master可以并发,但是,对于读副本会有延迟

对于Master可以并发,但是,对于Slave会有延迟

备注:当采用异步复制技术时,在Master上执行的操作传播到其他副本上时,总会存在一定程度的延迟。这就使得读取副本时,会产生不一致性。

可用性和恢复性

 

 

 

  • 自我修复

备注:Xeround云数据库可以自动确定和隔离失败,并且可以自动从服务器失败中恢复,而不需要应用去感知到失败的发生。

  • 失效备援

可选

可选

备注:Xeround云数据库是分布式的,会维护数据的多个副本。因此,在失败时,数据库会利用现有的资源继续工作,不管这种失败是网络故障、硬件故障还是软件故障。新的资源会立即被分配去保证服务的可用性。

分布性

 

 

 

多分区

备注:Xeround云数据库可以分布在多个可用的区域,既可以保证每个分区之间的低延迟,也可以在某个分区发生失效时,由其他分区继续提供对外服务。

缓存

 

 

 

读/写

部分读

部分读

备注:Xeround对读和写都进行内存缓存。对于Amazon而言,只会对部分读进行数据缓存。

DBaaS&Web管理界面

备注:Xeround云数据库可以通过服务的方式获得,具备网页控制管理界面和自动配置功能。

基于使用的付费

备注:Xeround是基于实际使用情况来付费。当你需要时,数据库会自动扩展,而你不需要时,会自动收缩,你只需要为你实际使用的部分进行付费,不需要过度消费,也不需要为高峰期预留处理能力。

(厦门大学计算机系林子雨 翻译)