|
来源:存储在线 作者: 时成阁 本站授权转载
2.3 多数据流对磁盘阵列系统性能的影响
2.3.1 单主机连接情况下的磁盘阵列存储系统性能
一般在单主机连接的情况下,磁盘或磁盘阵列拥有最好的性能。由于目前几乎所有的操作系统都是基于本身独自占有的文件系统,即文件系统只能被一个单一的操作系统所独有,所以操作系统或基于操作系统的应用软件可以在对存储系统进行数据读写的时候,针对磁盘存储系统的读写特点,无论操作系统还是应用软件都会对读写方式做最优化处理,以减少磁盘的物理寻道次数,降低磁盘的机械反应时间。每个程序进程的数据请求对其它的数据请求来说是不确定的,但由于操作系统本身的对数据访问的管理和控制,所有出自该操作系统的数据请求都被操作系统做了有序化处理,因此对于磁盘或磁盘阵列来说,数据读写请求是被优化过的,或者说在经过优化以后没有任何变化,这个时候存储系统拥有最佳的性能。
作为磁盘阵列,虽然在操作系统和各个磁盘驱动器之间增加了一层RAID 控制器,但目前所有的RAID 控制器本身只作为对磁盘容错的管理和校验的计算等一些必要的操作,并不对数据请求做合并、重新排序和优化处理,因为它的设计出发点是建立在单个主机连接的已经经过操作系统优化的和排序的数据请求的基础之上,它所拥有的缓存也只有直接缓存和计算缓存的功能,不对数据做排队处理,只是将主机端口过来的数据按着先进先计算先出的方式通过CPU 计算校验以后写入磁盘。缓存的性能虽然非常快,但其容量相对于多媒体数据来说并不足够大,在很快写满缓存以后,速度立即衰减到实际操作磁盘的速度。
所以RAID 控制器的功能只是将许多磁盘组成一个或多个大的容错的磁盘,并且利用每个磁盘上的缓存的缓冲存储功能提高整体的数据读写速度,RAID 控制器的读缓存可以在短时间内再次读取同一数据的情况下明显提高磁盘阵列的读性能。整个磁盘阵列的实际的最高读写速度受到主机通道带宽、控制器CPU 的校验计算和系统控制能力(RAID 引擎)、磁盘通道带宽和磁盘性能(每个磁盘有自己的最高性能,这里指多个磁盘总的实际性能)中的最低值的限制。另外,操作系统的数据请求的优化基础与RAID 格式不匹配,也会对磁盘阵列的性能造成很大的影响,如I/O 请求的数据块大小与RAID 的数据段大小不匹配等。
2.3.2 多主机同时访问下,传统磁盘阵列存储系统的性能变化
首先,分析在视音频应用环境中来自不同主机的多个媒体流对小规模磁盘阵列存储系统性能的影响。 小规模磁盘阵列存储系统一般拥有单个或一对冗余的磁盘阵列控制器,所能连接的磁盘的数量较少,具有基本的容错和管理功能,结构相对简单。
在存储区域网络的多主机共享存储环境中,虽然每台主机对自己所发出的数据请求做了排序和优化,但各个主机之间的数据流对共享的存储系统来说是无序的,导致了更多的磁盘重新寻道次数、更多的数据段头尾信息和更多的数据碎片读出、合并、校验计算和再写入过程。这样导致存储的性能比单主机连接时下降许多,主机连接得越多,磁盘系统的性能下降的幅度就越大。
图2-1 显示了一个磁盘阵列在多主机同时访问的环境中的测试结果,多主机的同时访问造成磁盘阵列总性能的衰减。一般情况下,不同磁盘阵列、不同的磁盘阵列设置和使用不同种类的磁盘驱动器,测试结果会稍有不同,但都不可避免地出现性能明显衰减的状况。
 图2-1 在多主机的数据流同时访问时小规模磁盘阵列总性能的衰减
其次,分析在视音频应用环境中来自不同主机的多个媒体流对大规模磁盘阵列存储系统性能的影响。
|