A-A+

最具有权威性的虚拟盘终极教程连载(共11篇)—-第4到6篇(让你深刻理解硬盘原理和性能)。

2016年10月12日 问题知识 暂无评论 阅读 242 次

上面3篇,我们分析了很多,点击查看最具有权威性的虚拟盘终极教程连载(共11篇)----第1到3篇(让你深刻理解硬盘原理和性能)。

第四篇:<揭开SAS和SSD硬盘的真相>

什么是sas硬盘:
SAS是新一代的SCSI技术,和现在流行的Serial ATA(SATA)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部空间等。SAS是并行SCSI接口之后开发出的全新接口.
简单的说,sata是家用版本,sas就是服务器版本.
sas硬盘多半是采用2.5寸的盘片,sata一般是3.5寸的盘片(笔记本硬盘和迅猛龙硬盘除外).
Sas硬盘转速一般是1万转/分钟,或者是1.5万转/分钟,而sata的转速一般是7200转/分钟.
Sas硬盘的磁记录密度和sata差不多,所以连续读取速度上和sata硬盘差不多.但是sas硬盘的平均访问时间比sata快很多,所以在随机性能上有一定优势.
平均访问时间是由寻道时间和潜伏时间决定,而寻道时间由盘片大小和磁头臂移动时间有关,而潜伏时间和转速有关,综合起来,1.5万转的sas平均访问时间大概是是5-8ms,而sata一般是10-20ms.
下面我们通过测试来看看,1.5万转的SAS硬盘究竟有多快,

先看看顺序读取的情况:

09082709465e8773203d3915e6

(图4-1:HD TUNE测试希捷15000转SAS硬盘顺序读取)

使用的是希捷146G的15000转sas硬盘,在全顺序读取的情况下,最高速度为125M.这个速度和普通的希捷11代盘差不了多少.
再来看随机读取的情况:

090827094636b7d8d944d21224

(图4-2:HD TUNE测试希捷15000转SAS硬盘顺序读取)

因为寻道时间的大幅度减少,随机性能比sata硬盘好了不少,但是也只有9.6MB/S,大概是sata硬盘2-3倍的速度.
这样,我们基本上就可以理解为sas硬盘的速度是sata硬盘的2-3倍,在实际应用的时候,我们确实发现sas硬盘对于无盘回写的处理能力,和2-3个sata硬盘的回写处理能力相当.在支持多回写的无盘软件上,用一个sas硬盘和3个sata硬盘所能得到的效果和带机量是相当的.

再来看看固态硬盘的情况:
基于闪存的固态硬盘,采用FLASH芯片作为存储介质,就是我们通常所说的SSD。

固态硬盘中,存储单元又分为两类:SLC(Single Layer Cell 单层单元)和MLC(Multi-Level Cell多层单元)。SLC的特点是成本高、容量小、但是速度快,而MLC的特点是容量大成本低,但是速度慢。MLC的每个单元是2bit的,相对SLC来说整整多了一倍。不过,由于每个MLC存储单元中存放的资料较多,结构相对复杂,出错的几率会增加,必须进行错误修正,这个动作导致其性能大幅落后于结构简单的SLC闪存。此外,SLC闪存的优点是复写次数高达100000次,比MLC闪存高10倍。此外,为了保证MLC的寿命,控制芯片都校验和智能磨损平衡技术算法,使得每个存储单元的写入次数可以平均分摊,达到100万小时故障间隔时间(MTBF),达到20年以上的使用年限.

固态硬盘的优点是寻道时间短,没有机械机构,耐冲击.

缺点是价格高,容量小,写入速度一般.

固态硬盘这几年发展的相当快,每GB价格下降很快,几乎每年都要跌去一半的价格.现在INTEL80G的MLC硬盘大概售价在2爱生活 爱顺网左右.INTEL30G的SLC硬盘大概也是2爱生活 爱顺网左右.
固态硬盘的存储单元flash,本身速度并不是非常快的,象U盘一样,一般的读取速度也就几十M左右,但是因为flash访问延迟很低,因此固态硬盘的做法是就是将很多flash组成多个RAID0来提升速度,象INTEL提供的方案就是10通道的raid0,这样速度可以提升到200MB/S以上.
同样,我们用测试的数据说话,看看SSD到底有多快.测试对象是金士顿的32G固态硬盘,采用SLC芯片,是INTEL的OEM产品,性能和intel的硬盘几乎一样.

顺序读取:

090827094639d2e202f383b3e3

(图4-3:HD TUNE测试金士顿32G固态硬盘顺序读取)

顺序读取速度稳定在210MB/S,平均的存取时间只有0.1秒.
再来看随机读取的情况:

0908270946942d2ad4725b972e

(图7:HD TUNE测试金士顿32G固态硬盘随机读取)

同样的测试条件,金士顿的固态硬盘的随机读取的速度达到了惊人的128MB/S!平均读取时间为0.48MS,IO达到2061,这个性能是sata硬盘的30多倍,也是sas硬盘的10多倍.
结论:sata硬盘的性能远不如我们想象的那样,在实际应用当中,sata硬盘往往只有7-8MB/S的读取性能,而1.5万转的SAS硬盘确实比sata要快,性能大概能达到sata的2-3倍,而最快的硬盘式固态硬盘,能达到sata硬盘的30倍性能.
因此, 为虚拟盘服务器挑选硬盘时,如果仅从性能上考虑的话, SSD是最好的选择,sas硬盘次之.
下一节,我们继续就硬盘的随机读取性能进行深入的分析.
(未完待续)

第五篇:<随机读取性能分析>

在第三篇的时候,我讲到了一个观点,就是在应用中多数的情况都是有部分数据是随机读取的,部分数据是连续读取的,我还讲到,少量的随机读取的比例就会导致硬盘的性能大幅度的降低,现在我们来看看随机数据的比例对硬盘的确切影响.
我们使用IOMETER来进行这项测试.IOMETER是专业的磁盘测试工具,因为可以灵活的设定测试的详细条件,因此在很多专业评测中采用.大家有兴趣的话也可以研究研究.
先看看sata硬盘的测试情况.测试对象是一个西数的80G SATA硬盘.

09083110081484a4c7b8a90e6d

(图5-1:IO Meter测试西数80G硬盘读取,0%随机)
第一图是全顺序读取的结果,这个硬盘连续读取的能力为55MB/S.IOps是877.测试区块仍是64K.

0908311008dee0507845ee2bc3

(图5-2:IO Meter测试西数80G硬盘读取,5%随机)
仅仅是加入了5%的随机数据,性能已经衰减到20MB/S,iops降低到474

后面的测试图我就不一一张贴了,整理成下图

090831100881c597966d3ef424

09083110083d9268ac1d6a71b3

09083110084a0b6032ecadc461

接下来看看SAS 硬盘的情况

全顺序读取:

0908311008c282c7c5738cdb8c

(图7:IOmeter测试希捷15000转sas硬盘顺序读取)

25%的随机数据读取:

09083110081642258d75895d7d

(图7:IOmeter测试希捷15000转sas硬盘25%随机读取)

50%的随机数据读取:
090831100859c7ad9d3dfdf96b

(图7:IOmeter测试希捷15000转sas硬盘50%随机读取)

100%的随机数据读取:

09083110083236772adc971020

(图7:IOmeter测试希捷15000转sas硬盘100%随机读取)

整理成图表:

090831100811d5fd18ab3965e4

0908311008da81f908eee37e2b

0908311008151e340b5de7e2c0

综上,只要有少量的随机数据,硬盘的性能就会急剧的下降,sata和sas硬盘都不例外.

在来看看对固态硬盘来说,随机数据的影响.

讲完了硬盘,下一节,我们来看看虚拟盘的性能.
(未完待续)

第六篇:<虚拟盘的性能分析>

虚拟盘:

虚拟盘是一种虚拟的网络存储空间,它是通过网络来管理和使用的远程硬盘空间,可用于传输、存储、下载和备份计算机数据文件,聊天软件绑定的网络硬盘与传统的存储方式相比较,具有管理和使用方便的特点。
虚拟盘工作过程:
客户机发出读取需求à指令通过网络传输到服务器à服务器去读取数据à通过网络将数据发送给客户机,整个环节中,最有可能造成延迟的部分就是后2个环节.
服务器读取数据的环节,一般是服务器先在缓存中寻找,如果缓存中没有,则到相应的硬盘中去读取.缓存命中的数据,其延迟是微乎其微的,所以主要延迟还是硬盘的延迟.
通过网络将数据发送给客户机这个环节,还要经历软件处理à网卡à网线à交换机à网线à客户机网卡à客户机,这么多的过程中,虚拟盘软件的传输协议,网卡的性能,交换机的性能,网线的性能都会影响到最终的虚拟盘性能.
总结起来,影响虚拟盘性能的主要因素就是:硬盘性能,软件性能,网络性能.下面逐个来分析一下.

首先来说说网络,典型的千兆网络,使用超5类网线传输,经过我们测试,其实延迟是非常之低的,看看这个测试图:

0909021132bb5cec84d6205f5f

(图8:交换机性能测试)

这个测试表明,在64字节这样的极限条件下,2个交换机的通过率都超过99%以上,请注意测试单位是64字节,而不是64kb,普通硬盘如果用512字节来测试的话,连续数据也只有3-4MB/S,随机数据就只有几十KB/S了.交换机上单个包的延迟仅为4微秒,比硬盘的15毫秒的寻道时间少了3000倍.尽管网吧里的状况不可能象实验室中的测试条件那么好,但是实际上,网络上真正的延迟还是远比硬盘的延迟要低的多的多!

我们再来看看虚拟盘软件
在客户机用HDTUNE测试网维大师5.0版本虚拟盘的速度.我们将数据全部缓存在内存当中,以屏蔽硬盘对虚拟盘速度的影响,按64K的条件来测试,结果如下:
0909021132a1aa421e39a9e209

(图9:虚拟盘在缓存命中情况下随机读速度(客户机测试))

测试方法是随机读取,在64K的条件下,速度约55MB/S左右,很好理解,服务器每次按64KB大小进行发包,1秒钟要达到55MB的流量,需要发880个包(普通硬盘每秒只能处理60个64K的数据),因而我们可以计算出虚拟盘软件+网络最终造成的延迟:64KB/55MB*1024=每个64K包的延迟=1.1毫秒

由此可见,软件性能和网络性能导致的延迟相加不过是1.1毫秒而已,远比普通硬盘的10毫秒-20毫秒的延迟小的多.所以:真正要提高虚拟盘的性能,关键还是在于硬盘,硬盘才是整个环节中的最大瓶颈.

我们加上硬盘的影响,做个直接的对比测试吧:
0909021132491ff730d96d37e1

(图10:虚拟盘在有缓存和无缓存情况下随机读速度(客户机测试))

蓝色的是完全没有内存缓存的情况,所有的数据都是直接从硬盘中读取.在同样的测试条件下,同样的虚拟盘,缓存命中和缓存未命中带来的差异是惊人的.除了固态硬盘,其他2个硬盘的测试结果都非常的糟糕.希捷7200.11虚拟盘速度只有缓存命中情况下的1/10,超过90%的时间都损耗在硬盘的寻道时间上了.

分析到这里,要获得好的虚拟盘性能,对应的方法就很简单了:
1、尽可能的减少硬盘的读取,用内存对常用数据进行缓存.
2、尽可能提高服务器硬盘的性能,比如使用SSD硬盘
3、使用好的虚拟盘软件
4、网络性能不能太差

OK.下一节我们开始讲该怎么做.
(未完待续)

点击查看下一篇:最具有权威性的虚拟盘终极教程连载(共11篇)—-第7到9篇(让你深刻理解硬盘原理和性能)

万豪棋牌手机版技术交流群

给我留言

<meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name= <meta name=

Copyright © 万豪棋牌手机版 保留所有权利.   联系站长 万豪棋牌手机版技术交流群 托管于阿里云 冀ICP备12002422号-3

用户登录

分享到: