概述:在评测各个云厂商的云数据库的时候,我们经常被各种复杂的数据迷惑,不知道该怎么看数据库的性能,怎么评比价格,怎么选出性价比超高的产品,对于大部分没法试用(原因你知道的,费用太高)的产品,就只能听厂商宣传了,今天我们来一起探讨如何评选出一款性价比超高的云数据库。
PS: 目前主流的云数据库一般分两大类,一类是互联网公司常用的开源数据库MySQL,一类是Windows下标配的SQL Server,这两大类产品都拥有自己的客户群。本次评测也围绕这两类展开。
PPS: 本次参与评测的厂商有:AWS(国际),AWS(中国),Azure(国际),Azure(中国),阿里云,青云,UCloud等。由于各个厂商的实例规格有细微差距,我们选用数据库内存6G-12G的中等规格的实例(12G以上,对性能要求更高企业选用,相比较价格也比较昂贵),磁盘选用普通云磁盘250G来做计算,表结构100张,数据量:100张*1000万条数据(表的数据量会影响到数据库性能,所以尽可能压多一些数据),总数据量size在240G左右,该数据规模能覆盖很大一部分企业的使用场景。
好,言归正传,请看下面详情分解。
(一)评测工具和性能指标
云数据库:MySQL5.6
测试工具:SysBench0.5(通用开源的数据库测试工具)
数据量:100张*1000万条=250G数据
数据库规格:
低:内存6G以下,一般企业用户很少选用,多半是开发者试用。
中:6G-12G,大部分企业因为价格的问题会选用此规格的
高:12G以上,对性能要求更高企业选用,相比较价格也比较昂贵。
性能指标:
1、TPS(Transactions Per Second)数据库平均每秒处理的事务数
2、QPS(Query Per Second)数据库平均每秒处理的查询数。本次比较中Query包括Read/Write。
3、RT(Response Time)响应时间。本次比较中RT包括平均响应时间和第95百分位的响应时间。
测试数据库版本:SQL Server 2008R2
测试工具:BenchmarkSQL4.1,基于TPC-C的规范(TPC-C的规范详见http://www.tpc.org/tpcc/default.asp)所实现的一款开源的数据库测试工具。
仓库数量:10, 数据量size:4-5G
终端数量:100
运行时间:60分钟
性能指标:
1、tpmC(Transactions Per Minute)TPC-C规范下的每分钟新订单数
2、tpmTOTAL(Transactions Per Minute Total)每分钟完成的总的事务数
(二)测试规格
每个厂商申请的云数据库产品规格如下:
MySQL:
MySQL | 厂商规格实例详情 |
---|---|
阿里云 | 内存:6000M 容量:250G 区域:北京一区 版本:MySQL5.6 |
AWS中国 | 内存:7.5 GiB≈8000M 规格:db.m3.large 区域:华北 版本:MySQL 5.6.23 容量:250G |
AWS | 内存:7.5 GiB≈8000M 规格:db.m3.large 区域:Oregon us-west-2c多可用区 版本:MySQL 5.6.23 容量:250G |
AWS-Aurora | 内存:15 GiB≈16000M 规格:db.r3.large 区域:Oregon us-west-2c多可用区 版本:Aurora 5.6.10a 容量:250G |
Azure中国 | 规格:MS4 区域:北京 版本:MySQL 5.6.23 容量:100G |
UCloud | 内存:6G 区域:华北 版本:MySQL 5.6 容量:250G |
青云 | 内存:8G 区域:亚太区 版本:MySQL 5.6 容量:250G |
SQL Server:
阿里云 | |
---|---|
内存:6000M容量:250G区域:北京一区版本:SQL Server 2008R2 | |
AWS中国 | AWS |
内存:7.5 GiB≈8000M实例规格:db.m3.large版本:SQL Server SE 10.50.6000.34.v1(2008R2)区域:华北 | 内存:7.5 GiB≈8000M实例规格:db.m3.large版本:SQL Server SE 10.50.6000.34.v1(2008R2)区域:Oregon us-west-2c |
Azure中国 | Azure |
实例规格:S3(100DTU)版本:Microsoft Azure SQL Database区域:中国东部 | 实例规格:S3(100DTU)版本:Microsoft Azure SQL Database区域:美国西部 |
新鲜直送的性能数据如下:
MySQL:Query/sec图
从测试结果图看,AWS和Azure,数据库性能相对落后,中国厂商整体表现均不错,阿里云、青云、Ucloud分列前三,阿里云表现不错。
SQL Server:
( 注:在Azure官网上购买SQL Server的方式跟其他厂商不同,不像其他厂商会把数据库的内存,详细的版本号等都标注出来,Azure仅模糊对标了Microsoft Azure SQL Database,所以不能确保这个版本跟其他厂商的版本是否匹配,暂且用它做相应的对标。)
通过测试结果,从tmpC(每分钟执行新订单数事务数)的值来看,AWS中国和阿里云在第一梯队,Azure相对落后。
MySQL:
(注:AWS购买的预留实例多可用区的db.m3.large(定价日2015-11-24),Azure购买的标准服务层的S3费用(定价日2015-11-24),青云和UCloude的定价日2015-11-24)
从价格的柱状图上看,各家厂商按月的价格都在1000-2000之间,差距不大。青云稍高,阿里云和AWS-Aurora稍低。
SQL Server:
(注:AWS购买的预留实例多可用区的db.m3.large(定价日2015-11-24日),Azure购买的标准服务层的S3费用(定价日2015-11-24日) )
从价格柱状图上看,各厂商价格差距较大,AWS最高,Azure最低。
如果只看价格的话,Azure的价格是全网最低价,AWS是Azure的6倍多,阿里云是Azure的2倍多。但是价格低是否就意味着竞争力强,而价格高竞争力就弱呢?稍等,我们还需要考察一下性价比。
到底每一元钱能买多少性能,每个厂商的性能比到底如何,我们可以根据一个计算公式:性价比=性能相对值/价格相对值得出来。以全球最大的云厂商AWS的性价比作为标杆,把AWS的性价比值设置为1,其他厂商来跟他对标情况,分别计算其性价比。
MySQL:
计算公式:性价比=性能相对值/价格相对值
性能相对值=MySQL性能相对值/2
MySQL性能相对值=阿里云/AWS(QPS)+AWS/阿里云(RT)
价格相对值=阿里云MySQL价格/AWS的MySQL价格
注:1、/ 符号为除以符号;用AWS的值作绝对值,所以用阿里云/AWS;性能取值为50百分位。
2、AWS购买的预留实例多可用区的db.m3.large(定价日2015-11-24日),Azure购买的标准服务层的S3费用(定价日2015-11-24日)
计算结果如下:
柱状图:
从柱状图来看,国内厂商的性价比均优于两大国际云厂商AWS和Azure。
MySQL性价比排名:阿里云>青云>UCloud>Azure中国>AWS中国>AWS>AWS-Aurora
SQL Server:
计算公式:性价比=SQL Server性能相对值/价格相对值
SQL Server性能相对值=阿里云/AWS(tpmC)
价格相对值=阿里云SQL Server价格/AWS的SQL Server价格
注:/ 符号为除以符号;用AWS的值作绝对值,所以用阿里云/AWS;性能取值为50百分位。
计算结果如下:
柱状图:
从柱状图上看,各厂商差异较大,阿里云的性价比优势较明显。
SQL Server综合排名:阿里云> Azure >Azure中国>AWS>AWS中国
好了,性能,价格,性价比都分别进行比较了,企业到底要怎么选择云数据库呢?......当然还是看企业自己的需求了,侧重性能的就去看性能比较,侧重价格的,去看价格比较,侧重性价比的,就去看性价比吧~
本文分享自 云计算D1net 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与?便宜云服务器自媒体同步曝光计划? ,欢迎热爱写作的你一起参与!