相信大家对云存储的优点都已经有所了解,例如云存储支持按需使用,按需付费,不必承担多余的开销,也无需增加额外的硬件设施或配备专人负责维护。正因为有如此多的优点,市场上云存储公司也如雨后春笋越来越多,但选择太多有时候也意味着无从选择。本文正是通过客观的性能评测告诉大家该如何选择。

一般云存储会分几种类型:对象存储(冷、热数据存储)、块存储、表格存储等,今天主要是评测的是对象存储中的热存储,小编带着大家一起通过性价比的对比方式来给各个云厂商排出名次。

本次入选的云厂商有:AWS,Azure,七牛云,华为云,阿里云等5个厂商,使用同样的评测方法和工具,选取离存储最近的同一供应商的虚拟机,测试环境同样也选用离云存储最近的区域,测试机带宽1000Mbps,为了保证测试公平性不把测试机打爆,测试机的CPU利用率<50%,带宽使用率在<70%,磁盘IO的读写吞吐<80MB/s,尽量让测试机是在舒服的情况下工作。

测试工具和方法

本次性能测试使用开源软件:apache-jmeter-2.13,测试方法是通过调用各个云厂商对外发布的最新版本的SDK(java)来进行上传下载操作,操作的对象大小分别是1KB、10KB、100KB、1MB、10MB、1GB,各个厂商的SDK详细版本见列表,如下图示是一个简单流程图。

A、测试性能指标:

1、Response Time(RT):响应时间,本次比较中RT第50百分位的响应时间。

2、Transactions Per Second(TPS):平均每秒处理的事务数。

B、选取的请求:Get(下载),Put(上传)来测试其性能。

C、价格数据:官网价格(截止到2015年11月)。

性能数据结果

为了模拟真实的用户场景,我们预先在各个云厂商存储中分别压入了接近3000万个对象,涵盖了6个不同尺寸大小的对象,分别是1KB、10KB、100KB、1MB、10MB、1GB,在做下载请求的时候,为了防止有读缓存会影响性能,使用随机获取对象Key值,同时为了不让测试机器成为瓶颈,仅使用3线程操作(1GB文件是1个线程),在每个线程中加入Thinking Time来保证测试机网络带宽不是瓶颈,测试机都选用离云存储相同的区域,例如华为对象存储是华北区,在华为云上购买的弹性云(测试机)也是华北区,阿里云的云存储是北京区的,测试机(ECS)也选用北京区的,小编在测试AWS的时候,AWS的华北区仅仅是预览版,所以选择了AWS的俄勒冈,同样测试机(EC2)选用俄勒冈区,以此类推,这样的做法,是保证测试结果是准确和公正的。

下载(GET)文件性能结果:

结论:如果云服商能够在上下行链路中做更多的优化(如减少数据在各节点间的转发次数,尽量让数据一次性的从存储节点到达最前端的节点),那么大小文件的下载的响应速度就会表现更好。综合从测试结果看来,下载1K,10K的小文件,AWS, Azure相对弱势,而下载1M,10M的大文件,七牛云,阿里云表现更好。

响应时间(RT):

TPS:

上传(Put)文件性能结果:

云服务厂商要在上传方面达到好的效果,通常要做几方面:1. 尽量减少数据的中转环节;2. 数据写入多个节点时,传统做法是从写入节点同时发到多个节点,但是如果从写入节点先发给节点a,再从a发送给节点b,这样就可以避免发送节点带宽的限制。此外,本测试结果只针对服务端上传到云存储,更全面的独立测试还可以围绕客户端进行(比如有些云服务厂商在客户端上传sdk中加入断点续上传功能以便让用户体验更好。)

综合从测试结果看来,写1K,10K小文件响应时间中阿里云与七牛云有突出的表现,写1M,10M,1G的大文件中,AWS性能表现也不错。大文件中,Azure排名垫底。此外,Azure直接上传1G的文件全部都超时失败了,只能通过分片的方式上传,由于测试工具的原因,这组数据仅限参考并不计入性价比。

响应时间(RT):

TPS:

价格数据

现在小编要模拟一个客户真实的场景,来计算一下实际的发生费用,假定一个中小型客户:客户每月的存储空间10T,每天下载流量100G/天,上传和下载的请求次数50万次/天,其中AWS和阿里云的存储分为热存储和冷存储,微软的Azure的存储计费方式有本地冗余和跨区域冗余和只读跨地域冗余。为了统一跟其他厂商一致都选用热存储本地冗余的价格,小编从各个厂商的官网公布价格计算得到下面总价格,详见下表,从总价格列表能看出:最贵的是Azure,最便宜的是七牛,Azure几乎是七牛的2.5倍价格。到这里几乎大部分的客户都有第一个反应,七牛确实便宜,但是还是要从性能性价比的角度来真正评定。

(注:由于各厂商价格经常有浮动,以上价格选用2015年11月份的价格)

价格示意图:

性价比

到了最重要的性价比的环节,我们要清楚知道每一块钱到底能买多少性能,根据上面的测试结果和价格,这样我们可以得到这样一组计算公式:性价比=性能相对值/价格相对值,由于1G文件上传有些厂商没值,小编选用了1K小文件+10M大文件的上传下载作为性能数据,以国内厂商阿里云的OSS性价比作为标杆,其性价比值设置为1,其他厂商来跟他对标情况。根据给出的测算公式,综合性价比排名前三的是:七牛云,阿里云,AWS。 垫底的是跟AWS一样来自海外的Azure。

(注:按照一个用户购买云存储一个月:存储空间10T,流出流量100GB/天,Get和Put请求次数(均25万次/天))

计算公式:性价比=性能相对值/价格相对值

性能相对值=(云存储RT性能相对值/4*60%)+(云存储TPS性能相对值/4*40%)

云存储RT性能相对值=阿里云/AWS(GET1K文件(RT))+阿里云/AWS(PUT1K文件(RT))+阿里云/AWS(GET1M文件(RT)+阿里云/AWS(PUT1M文件(RT)

云存储TPS性能相对值=AWS/阿里云(GET1K文件(TPS))+AWS/阿里云(PUT1K文件(TPS))+AWS/阿里云(GET1M文件(TPS))+AWS/阿里云(PUT1M文件(TPS))

价格相对值=AWS的云存储价格/阿里云的云存储价格

注:/ 符号为除以符号;用阿里云的值作绝对值,另以上RT性能越小越好,所以用阿里云/AWS,TPS性能越大越好,所以用AWS/阿里云;性能取值为50百分位。

结束语:

对于互联网领域的初创企业和转型互联网+的传统企业来说,选择正确的云存储的厂商是创业和转型成功的基本保障。然而对待各种厂商宣传的各种能力,我们要做到心里有杆秤,既不盲目听从厂商性能宣传,也不能仅仅从价格上来做选择。

对于如何评价一个云厂商的好坏,性价比是一种很好选择的方法,当然我们在做选择的时候,还可以通过产品的易用性,厂商的服务质量和能力,以及产品安全能力和产品覆盖区域来做更多的选择。

本文作者:佚名

来源:51CTO

云存储之对象存储性价比小谈相关推荐

  1. 阿里云国际站的对象存储oss与自建存储的区别

    对象存储oss是阿里云国际站的一个云产品,其功能是提供海量.安全可靠.低成本高持久的云存储服务.那么为什么要选择阿里云国际站的对象存储oss而不是自建存储,下面跟Unirech小编从几个方面来对比分析 ...

  2. 微信、QQ都在用的腾讯云EB级对象存储架构剖析

    背景:5月23-24日,以"焕启"为主题的腾讯"云+未来"峰会在广州召开,广东省各级政府机构领导.海内外业内学术专家.行业大咖及技术大牛等在现场共议云计算与数字 ...

  3. 腾讯云常见云产品中的云硬盘(块存储)、文件存储、对象存储三者的区别!

    云硬盘.文件存储.对象存储,三种都是存储的,对于刚接触的同学来说,感觉好绕呀,这三种有啥子区别,什么时候应该用云硬盘?什么时候应该用文件存储?什么时候应该用对象存储? 对于使用过的老手,那肯定是可以区 ...

  4. 天翼云从业认证(1.2)存储的概念、体系结构、块存储、对象存储、文件存储以及 RAID 磁盘管理技术

    (1)块存储.对象存储.文件存储 存储方式 技术实现 优势 劣势 代表作 块存储 裸盘上划分逻辑卷,逻辑卷格式化成任意文件系统 支持多种文件系统,传输速度快,提供硬件容错机制 无法实现网络共享 FC- ...

  5. 块存储、文件存储、对象存储这三者和分布式文件存储系统的本质区别

    块存储和文件存储是我们比较熟悉的两种主流的存储类型,而对象存储(Object-based Storage)是一种新的网络存储架构,基于对象存储技术的设备就是对象存储设备(Object-based St ...

  6. 【存储】块存储、文件存储和对象存储的区别?

    目录 简单说明 详细解释 存储分类 01 块存储(提供虚拟磁盘) 02 文件存储 03 对象存储 04 三种存储的区别和对比 分布式块存储.文件存储.对象存储的区别 理解Ceph的三种存储接口:块设备 ...

  7. CEPH篇 块存储、文件存储和对象存储意义和差异及ubuntu20.4下 ceph安装

    理解块存储.文件存储和对象存储的应用场景和选择 应用场景 分布式存储的应用场景相对于其存储接口,现在流行分为三种: 对象存储: 也就是通常意义的键值存储,其接口就是简单的 GET.PUT.DEL 和其 ...

  8. 理解块存储、文件存储和对象存储的应用场景和选择

    理解块存储.文件存储和对象存储的应用场景和选择# 应用场景(王豪迈(麦子迈|wheats))# 分布式存储的应用场景相对于其存储接口,现在流行分为三种: 对象存储: 也就是通常意义的键值存储,其接口就 ...

  9. 块存储、文件存储、对象存储三者有什么区别,有什么关系?

    一.块存储.文件存储.对象存储,三者的本质差别是什么? 1.块存储 典型设备:磁盘阵列,硬盘 块存储主要是将裸磁盘空间整个映射给主机使用的,就是说例如磁盘阵列里面有5块硬盘(为方便说明,假设每个硬盘1 ...

  10. 块存储,文件存储和对象存储

         首先,我们介绍这两种传统的存储类型.通常来讲,所有磁盘阵列都是基于Block块的模式(DAS),而所有的NAS产品都是文件级存储 1.块存储         以下列出的两种存储方式都是块存储 ...

最新文章

  1. iphone相关总结
  2. 【Scratch】青少年蓝桥杯_每日一题_6.09_密码
  3. python把一堆图片分成n份,用Python一键生成炫酷九宫格图片,火了朋友圈
  4. ·XP注册表修改大全
  5. Python入门教程 | Python学习的必经阶段
  6. gc --JNI调用引发的长gc问题
  7. 计算机控制技术数据存储器有,计算机控制技术复习资料.doc
  8. 448.找到所有数组中消失的数字
  9. LINUX-VIM编辑器常用命令大全(超全)
  10. HBase 安装配置及下载地址
  11. rce远程执行 0day漏洞 复测
  12. kronecker引理证明_连续型Kronecker引理
  13. CentOS护眼颜色
  14. 机器学习 (六): Sigmoid 公式推导和理解
  15. 人脸识别最低像素_人脸识别新利器:让你在50米内无处遁逃
  16. tensorflow2.3版本 LSTM作为最后输出层 报错Function call stack: train_function -> train_function -> train_functio
  17. 利用python爬取豆瓣电影top250
  18. C语言程序设计编程题[七](山西大学876)
  19. 《马克思主义基本原理》复习重点
  20. 如何在Revit中监听键盘事件

热门文章

  1. codeforces test #12 C. Subsequences 树状数组统计
  2. 第3章 一切基于pom
  3. Java实现HTML页面转PDF解决方案(转)
  4. spring 配置异步要点
  5. 只有在配置文件或 Page 指令中将 enableSessionState”的异常解决办法
  6. cocos2d-x性能优化的那些事
  7. SpringCloud工作笔记053---SLF4J简介与使用(整合log4j_并切换logging)
  8. resnet 50 网络分析
  9. 杭电1874畅通工程续
  10. linux 中文编码环境,linux中文编码问题总结