我眼中的云计算3-带宽资源

        带宽(band width)通常指信号所占据的频带宽度;对于数字信号而言,带宽是指单位时间内链路能够通过的数据量。

        带宽源于空间的限制,越大的数据输出能力也同样意味着越高的成本,因此互联网实际上被各种宽窄不同的链路分割成了一块块,从常见的分类来看大概有以下几种:
                不同数据中心间的带宽,可能在100MB/s或1000MB/s数量级,带宽由数据中心内本应用集群下所有的计算节点共享,以每中心100个节点计,则每个节点分到的平均带宽在1MB/s~10MB/s之间;
                同一数据中心的不同机架间的带宽,视交换设备而定,一般为2000MB/s或20000MB/s,对机架上的所有计算节点共享,以每机架极限的40节点计算,则每个节点平均带宽为50MB/s或500MB/s;
                同一机架上不同的物理机器的带宽,双1000M网卡情况下,在200MB/s左右;

        我们再看一下单计算节点的结构(以Intel的Sandy Bridge结构为例):
                同一物理机器上CPU到硬盘的带宽,虽然CPU的I/O总线预留了4GB/s的带宽,而且还可以通过PCIE进一步扩展,但受限于硬盘本身的速度,目前SATAIII接口和SAS接口均为6Gb/s,通过采用分布式文件系统,存储系统的I/O能力得到近乎线性的提升,远远超过硬件的Raid方案;
                同一物理机器上CPU到内存的带宽,DDR3 1333的理论值是21.2GB/s,从AIDA64的带宽测试看,内存读写能达到16GB/s(内存控制器基本都已经集成到CPU内部);
                同一物理机器上的不同的物理CPU的带宽,Intel使用QPI进行物理CPU间的连接,桌面级与服务器级存在差别,一条QPI 1.0的带宽理论值为19.2GB/s;
                同一物理CPU上不同的核心间的带宽,也就是各核心与L3缓存间的带宽,在Sandy Bridge上则是96GB/s,四核CPU的总带宽高达384GB/s,并行任务则可以充分利用多核的带宽;

        根据IDC的数据,2006年全球的数据产生量为1610亿GB,而2011年全球的数据产生量达到1.8ZB(或1.8万亿GB),5年间增长了11倍。那么硬盘的发展又是怎样的呢?

                2006年4月,机械硬盘的垂直记录技术开始应用,单碟容量提升到188GB,读写能力提升到70MB/s,速度为3Gb/s的SATAII接口开始普及; 

                2012年4月,机械硬盘的单碟容量提升到1000GB, 读写能力提升到150MB/s,而同期大容量固态硬盘读写能力接近500MB/s,得到速度为6Gb/s的SATAIII接口助力,市场份额开始增大;

                2012年4月,RAMDISK虚拟出的硬盘(使用主流的DDR3 1333内存),读写能力为3400MB/s以上;


        可以看出6年来,机械硬盘的单碟容量提升为原来的5倍,但速度提升只有1倍,存储成本在逐渐下降;存储能力从小到大依次是机械硬盘,固态硬盘,内存,当然成本也是从小到大增加,每个类型下又有很多分支选择。

        我们以单硬盘为例简单说明存储容量和读写速度提升曲线不一致时带来的问题,假设每用户产生的数据保持不变以及在线时间足够分散,那么单块硬盘的存储容量增加了50%,就可以多存储50%的用户,同样单位时间的用户访问量也增加了50%,但是硬盘的读写速度只提高了10%,无法满足多出来的40%用户访问,那么用户的响应时间会增加,用户的体验迅速恶化,

        显然硬盘的I/O带宽在用户量增长时迅速成为系统的瓶颈,解决办法有二:控制单块硬盘上的用户量,提升单硬盘的读写能力;通常采用的分库分表策略类似于单位空间内控制用户量的办法,而采用RAID/固态硬盘/分布式文件系统/利用内存存储数据则是当下提升硬盘读写能力的另种选择,但是转向更快的存储设备也意味着硬件/软件成本的提升,软件方式是我们工作的重点,因此利用内存的各类NOSQL数据库和分布式文件系统是我们后面讨论的内容。


        出于成本考虑,千兆网卡还是现在计算节点最见用的选择,相当于100MB/s的传输速度,配备双千兆网卡的服务器的网络出口带宽约为200MB/s,但对交换端口的占用增加1倍,而最新的单碟1T的7200转硬盘持续读取/写入速度已经提升至150MB/s,以每个物理机器8块硬盘算,分布式文件系统的单机的写入/ 读取带宽能达到1000MB/s,网络出口带宽相当于本地存储系统读写能力的1/5,而随着单机硬盘数量的增加,其比例还将进一步下降。

         如果10G网卡和交换设备的价格降至可接受的程度,计算节点采用双万兆网卡,那么网络出口带宽可提升到约2000MB/s,但需要占用一定的CPU计算能力,这时候也许机架会更加适合作为一个整体以提高资源的利用率,在充足的带宽支持下,更多的计算/存储资源可以做完一个整体存在,云应用/云存储的利用率会有明显提升;不知道公有云是否提供相应的用户/资源配置能力?
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值