云存储的几十年发展历程,其计算架构模型,也从Scale Up走向Scale Out。但是展望未来数字世界的海量需求,目前流行的模型还能够持续满足吗?本文通过对云存储历史的回顾,及对Scale Up和Scale Out两种扩展模型的诠释,来揭开云存储的未来模式。
 
1. 云存储及其历史
 
简而言之,云存储(cloud storage)就是将数字内容安全的存储在服务器上,从而任何连接互联网的设备可以方便的获取。首先让我们简单回顾一下云存储的历史。
云存储的早期雏形要回溯到上个世纪的90年代,也就是互联网泡沫时期(dot-com boom),当时有许多家公司,例如EVault, NetMass, Arkeia和CommVault等等[1]均提供在线数据备份服务,当然它们绝大部分也随着互联网泡沫的破碎而烟消云散了。少数幸存下来的有一家叫Veritas NetBackup最后也被Symantec收购,现在依旧提供Symantec NetBackup的在线存储服务。
 
而真正让大家耳熟能详的云存储是2006年由Amazon提供的AWS S3云存储服务,其最具有革命意义的变革是,提出了即买即用(pay-per-use)的价格模型,使得云存储的使用像水电一样可计算衡量。从此云存储以S3为标准一路绝尘,我们所熟悉的大厂,比如Netflix, Pinterest, Dropbox也是S3的顾客。尾随的Microsoft和Google也于2010年分别发布了类似的Azure Blob Storage和Google Storage的存储服务。
 
云存储真正发展的十几年中,见证了移动互联网的崛起,大数据的生机勃发,人工智能的再次复兴,并能够展望到未来物联网,无人驾驶及各类机器人自动化的世界。海量数据的产生,存储,分析,预测及应用,快速以正反馈循环方式,推进着人类社会向数字世界大步迈进。所以,为了适应数据存储新的需求,各家云存储产品的应用场景及价格模型,已从单一向多元发展,比如AWS S3就有Standard,Intelligent-Tiering, Standard-IA,One Zone-IA,Glacier和Glacier Deep Archive六类存储产品来满足各类使用场景,我会在未来的文章里针对性的细讲一下。而本文重点所探讨的是,目前云存储的基础架构体系是否能够适应未来数据存储的要求和挑战?为了回答这个问题,让我们先简单回顾一下计算机体系架构里的Scale Up和Scale Out扩展模型。
 
2. Scale Up和Scale Out?
 
Scale Up又称为垂直扩展(scale vertically)[2],意为在单节点上添加资源,如CPU,内存和存储,在纵向上扩展从而获得更多计算或存储能力;Scale Up初期能够快速达到升级目的,操作起来相对比较简单,但随着计算或存储的要求越来越高,硬件资源的添加可能已经达到极限,不仅单节点的造价非常昂贵,维护成本很高,而且更容易留下单点故障的隐患。传统的RAID(Redundant Array of Inexpensive Disks)存储就是此种模式。
 
Scale Out又称为水平扩展(scale horizontally)[2],意为在分布式环境下,通过添加节点计算或存储资源,在横向上满足更多的计算存储需求;随着计算和存储单位价格的降低和效率的提升,使用低端的商用(commodity)系统,利用分布式技术可以搭建起“超级计算”中心,以及后来衍生出来的私有或公有云平台解决方案。虽然分布式系统会带来一定程度上的软件复杂度和管理困难,但由软件定义的计算和存储解决方案,能够以较低的价格和较高的鲁棒性,优雅的解决了海量增长的计算存储需求,也是目前云平台的主流技术。但它就一定能够承载未来的更加海量的需求吗?云存储的未来是什么?方向是向左还是向右?
 
3. 未来向左还是向右?
 
话说天下大势, 分久必合, 合久必分,事物发展的规律似乎从来就没有什么绝对。当下,云平台内部似乎已完全是Scale Out模式了,但当我们把镜头再拉远一点,从云平台在全球部署的每一个可用区来看,整体上它又是一个Scale Up模型,不是吗?单点投入巨大,耗费能源,使用成本高昂。而相反,随着强大的计算,存储和带宽能力能够进入寻常家庭、工作和生活等边缘节点,资源闲置或者不均衡使用也变得越来越明显。那么, - 是否能够将这些边缘节点的计算存储能力结合起来,组成一个真正意义上的Scale Out平台,提供人们日益增长的计算存储需求? - 可否将浪费或者不对等的资源重新组合,提供一个更加节能环保的绿色Scale Out平台? - 可否摒弃中心化的单点故障和数据安全隐患,真正做到廉价高效,零数据泄露的Scale Out平台?
 
答案是应该可以而且必须可以!
 
纵观云存储平台的发展历史,从单节点的Scale Up模式走向可用区内部的Scale Out模式,又从内部的Scale Out模式走向整体上相对的Scale Up模式。而未来数字世界的海量计算和存储需求的满足,一定需要真正意义上的全球Scale Out模型,那就是把边缘节点和半中心化节点高效且系统的组织起来,减少浪费,提高效率,节省成本,去除中心。将天空中几块为数不多的白云,变成漫天遍布的朵朵白云,让人们自由定价、自由选择、自由组合。
挑战虽然巨大,但未来很美好,让我们一起努力迎接云存储的明天!
 
文章作者:Bruce Lee(PP.IO总架构师)
转载请注明出处
如果有关于PPIO的交流,可以通过下面的方式联系我:
加我微信,注意备注来源
wechat:omnigeeker

云存储的未来:Scale Up还是Scale Out?的更多相关文章

  1. 自建存储与使用微软Azure、七牛等第三方云存储综合考察分析

    http://www.cnblogs.com/sennly/p/4136734.html 各种云服务这两年炒的火热,加之可以降低成本,公司想先在部分业务上尝试使用下,刚好最近有个项目有大量小文件需要存 ...

  2. 什么是Scale Up和Scale Out?

    导读:Scale Out(也就是Scale horizontally)横向扩展,向外扩展 Scale Up(也就是Scale vertically)纵向扩展,向上扩展 无论是Scale Out,Sca ...

  3. 国内云存储对比: 阿里云、腾讯云、Ucloud、首都在线

    阿里云的数据存储<http://www.aliyun.com/product/rds/> RDS — 关系型数据库服务(Relational Database Service,简称RDS) ...

  4. uploadify控制 上传图片到百度云存储

    最近使用uploadify 控制图片上传到百度网盘....总的想法是 招待会uploadify获取文件传入后台,调用百度云存储api上传到百度网盘,返回url 联系.送存储在数据库中的链接.因此,我们 ...

  5. JDFS:一款分布式文件管理系统,第四篇(流式云存储续篇)

    一 前言 本篇博客是JDFS系列博客的第四篇,从最初简单的上传.下载,到后来加入分布式功能,背后经历了大量的调试,尤其当实验的虚拟计算结点数目增加后,一些潜在的隐藏很深的bug就陆续爆发.在此之前笔者 ...

  6. 腾讯云VS AWS :云存储网关性能谁更优?

    p { text-indent: 2em }    随着企业规模的扩大及业务的扩展,现有IT基础设施特别是存储设备无法满足爆炸性的数据增长,企业 IT 部门为了解决该问题,往往面临市场上多种存储产品及 ...

  7. 什么是scale up和scale out

    Scale Out(也就是Scale horizontally)横向扩展,向外扩展Scale Up(也就是Scale vertically)纵向扩展,向上扩展无论是Scale Out,Scale Up ...

  8. YottaChain主网全面上线预示商业应用的落地区块链云存储不一样的云

    Yottachain存储网12月24日平安夜全面启动,意味着全球首个可商用的区块链存储公链全面落地.对于数据存储来说,小到我们个人的照片文档,大到政企机构数据库资料,都是互联网生活中如影随形的标配. ...

  9. 泛圈科技Yottachain区块链云存储打破传统云迎来价值数据存储

    随着物联网时代的发展,更多的数据随之产生.从智能设备到电脑再到视频游戏机,各种各样的信息从不同的电子产品源源不断地涌入.通常,人们将数据存储在本地驱动器中.但是,由于产生的数据量是无限的,超过了本地存 ...

随机推荐

  1. EBS 请求输出Html报表集成Echarts

    百度开源的ECharts有样式丰富且美观的报表类型可供选用,可以将其集成至EBS请求输出的Html报表中,这其实就是一个生成Html数据的过程. 定义输出类型为HTML的请求我就不在此处赘述.   我 ...

  2. [la P5031&hdu P3726] Graph and Queries

    [la P5031&hdu P3726] Graph and Queries Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: ...

  3. spring boot Tomcat文件上传找不到零时文件夹

    springboot项目上传文件是找不到零时文件夹 1.本身启动jar包时内置Tomcat没有创建零时文件夹 2.在zuul网关级别没有创建零时文件夹 处理方案: -Djava.io.tmpdir=/ ...

  4. ionic1 添加百度地图插件 cordova-plugin-baidumaplocation

    cordova-plugin-baidumaplocation 这个插件返回的数据是 json 格式的  可以直接获取  android 和 ios 都可用 1.先去百度地图平台去创建应用  获取访问 ...

  5. day 17 项目开发常用模块

    ---恢复内容开始--- time模块 import time print(time.time()) # 时间戳: print(time.strftime("%Y-%m-%d %X" ...

  6. 使用jsoup轻松爬数据

    刚刚学习爬虫,感觉使用jsoup爬虫挺容易的.记录一下自己爬取数据的过程. Jsoup介绍: Jsoup 是一个 Java 的开源HTML解析器,可直接解析某个URL地址.HTML文本内容.使用Jso ...

  7. 入门项目 A5-2 interface-shop 第三方接口2

    from db import db_handler # 从db数据包下面调用db处理模块,以使用其内部的名称空间与函数功能 # 添加购物车接口 def add_shopping_cart_interf ...

  8. Eclipse安装Activiti Designer插件

    本人使用的是在线安装: 打开Eclipse -> Help -> Install New SoftWare-> Add 然后按照如下对话框输入: Name:Activiti BPMN ...

  9. mysql locking

    1. 意向锁 https://dev.mysql.com/doc/refman/5.7/en/innodb-locking.html#innodb-insert-intention-locks 官方文 ...

  10. php之强制回调类型callable

    <?php function demo(callable $fn) { $fn(); } function callback() { echo __FUNCTION__,'<br/> ...