基于排队论的海量信息存储配置优化

时间:2022-08-11 12:28:38

基于排队论的海量信息存储配置优化

【摘要】本文为了探讨海量信息存储的配置问题,首先对几种主要的网络存储构架进行比较,利用排队理论对iSCSI-SAN存储中的排队过程进行分析和数学建模,用带宽比例求解方法,即系统负载所需的带宽与阵列所能提供的带宽的比例,来确定该存储配置是否能满足用户的需求,据此可以组成优化配置。

【关键词】网络存储;iSCSI-SAN存储;排队论;带宽比例;配置优化

1.引言

由于计算机技术多方面的发展和应用,人们对数据存储的需求有了巨大的变化,对存储的容量和速度的要求越来越高,对存储系统的容量提出了前所未有的需求。原有的以服务器为中心的存储技术已经不适应今天的存储需求,而以网络为中心的存储技术得到快速发展。

存储结构的发展经历几个阶段,大致包括DAS、NAS和SAN,其中的网络存储技术能够有效地管理一定范围内的数据存储,将存储系统从传统的集成计算机系统中独立出来,使得存储与计算脱离,这对于存储系统的各方面特性的专门研究开辟了更大的空间;同时,高速网络的迅猛发展和普及也为网络存储提供了底层支持,使大规模远距离的网络存储系统成为可能。网络存储技术为解决海量存储中存储设备的分散性、I/O的并行性以及协议的高效性提供了一种很好的手段[1]。

对存储网络系统I/O请求响应时间的分析和建模,国内外的研究者作了大量的工作,但是这些研究大都是定性的[2-4],而定量研究模型不多,比如:曹强[5]是从网络存储的存取过程入手,分析影响网络存储性能的各种因素,提出针对网络存储系统中的I/O响应时间的性能评估模型并进行了验证;崔宝江[6]通过分析建立网络RAID存储系统的闭合排队网络模型,研究的是网络RAID存储系统的I/O响应时间的性能边界;周薇[7]是基于使用光纤通道的磁盘阵列构建的存储区域,利用排队模型评估的是不同的预取策略对于存储系统性能的影响。但是他们的分析仅仅是对网络存储系统性能的分析,而没有再进一步,比如可以探讨访问模式和具体配置优化的相关性等等。

本文是对iSCSI-SAN存储系统中请求I/O的平均响应时间进行分析并建立排队论数学模型,用带宽比例求解方法,即系统负载所需的带宽与阵列所能提供的带宽的比例,来确定该存储配置是否能满足用户的需求,达到优化配置目的。

2.信息存储架构比较

2.1 海量信息存储的基础设备――RAID技术

RAID(Redundant Array of Inexpensive Disks),简称“磁盘阵列”,这种磁盘阵列在提高存储系统的容量、速度的同时,也提高了数据可靠性和数据管理,成为存储系统的基础存储设备之一。

RAID可以将离散的磁盘变成RAID子系统。由于不同磁盘上的数据可以同时读取,提高磁盘的带宽,因此具有较高的性能;所有的磁盘可以并行执行寻道工作,减少寻道时间,提高整体性能;还能保证一定程度的容错性。

2.2 DAS存储

DAS(Direct Attached Storage)是服务器直接连接存储的缩写,是一种传统的基本存储结构,存储设备直接连接在主机上。在中小型系统中,存储设备和处理器是处在同一个机箱中的;在大型系统中,存储设备和服务器分别处在不同的单元中,通过SCSI电缆、光缆或其他的缆线进行连接。具体如图1所示。

但是,当用户进行大量数据访问时还是容易造成“瓶颈”效应,因为服务器和多次存储转发的开销对系统性能的制约作用,使得服务器成为整个系统的“瓶颈”。而且多个服务器之间各有各的存储设备,不能实现存储空间的共享,无法实现统一的管理软件,在系统的管理上增加很大的难度和维护成本。

因此,直接连接存储DAS这种存储方式远远不能满足企业分布式业务的需要,于是就发展出了网络存储技术。

网络存储技术就是将网络技术和存储I/O技术集成,利用网络的可寻址能力、即插即用、连续性和灵活性,存储具有高性能和高效率,提供基于网络的数据存取和共享服务,在超大数据的存储管理方面具有很显著的优势。网络存储一般可以分为三大类:NAS、FC-SAN和iSCSI-SAN。

2.3 NAS存储

NAS(Network Attached Storage)是附网存储的缩写,这一概念是1996年从美国硅谷提出的,源于基于以太网的数据访问技术,并以网络服务器为模型。NAS在物理连接上是将存储器直接连到网络,是一种专用的数据存储设备,可以向网络用户提供跨平台的文件级海量数据信息共享。如图2所示。

NAS主要采用两种基本的文件共享协议:NFS协议(网络文件系统)和CIFS协议(公用互联网文件系统),从而能实现不同网络环境下,用户跨平台共享数据。

但是,NAS存储的缺点是带宽消耗大,在进行数据备份时,由于多个存储设备在同一个TCP/IP网络上,备份时会占用大量的LAN资源。

2.4 SAN存储

SAN(Storage Area Network)[8]是存储区域网络的缩写,它是将存储设备从网络分离出来,通过专用的存储交换设备再连接到一群计算机上,采用高速的光纤通道作为传输媒体。SAN存储有三个主要部分组成:计算机主机、光纤通道(Fiber Channel,FC)交换机和存储设备,如图3所示。

从上图3可以看到,由于SAN提供多主机的连接,使得网络中的任何服务器都可以连接到任何的存储阵列,于是不管数据存放在哪里,服务器都可以直接存取所需的数据,实现数据共享。并且随着存储容量的剧增,用户只需增加磁盘阵列中的磁盘或是增加新的磁盘阵列就可以扩充企业或单位所需的存储容量。可见,SAN可以简化管理,实现数据的集中存放和控制。SAN不只是一种产品,同时还是配置网络化存储的一种方法。它支持远距离通信,并允许存储设备真正与服务器隔离,使得存储设备成为所有服务器共享的资源。

从上图3中还可以看到系统有两个网络,一个是通常所使用的TCP/IP网络,即互联网;另一个是服务器和存储设备之间的SAN网络。

2.5 iSCSI-SAN存储

iSCSI即Internet SCSI,把SCSI命令装在TCP中在IP网络中传输,使得采用iSCSI协议接口的存储设备可以直接挂接在互联网上,构成IP-SAN。它既结合SAN结构的优越性能,又充分利用了现有以太网设施。这是由IETF(Internet Engineering Task Force,互联网工程任务组)开发的一种基于IP存储网络的新的技术标准。

iSCSI的工作原理如图4所示。iSCSI协议是推动存储区域网络(SAN)技术快速发展的关键技术之一,因为它使数据存储的传送更加快捷。

iSCSI-SAN技术结合了以太网和传统I/O技术的特点,真正实现了系统中服务器端和存储设备的分离。用户可以根据需要在存储网络中增加服务器和存储设备,而不改变现有的网络结构以及当前应用的运行[9]。

3.排队论模型

排队论(Queuing Theory)是研究排队现象的理论和应用的学科,专门研究由于随机因素的影响而产生拥挤现象的科学,也称为随机服务系统。排队分析是计算机和网络人员的重要工具之一[10]。

排队系统有输入过程、排队规则、服务机构三部分组成,具体见图5所示。最简单的输入过程是服从参数为λ的泊松分布,服务过程一般是服从参数为μ的负指数分布。

3.1 M/M/1排队模型

当系统中只有一个服务窗,顾客按参数为λ的泊松分布到达,并且任务到达的时间间隔与服务系统为每个顾客服务的时间均为负指数分布,这样的排队系统构成了M/M/1排队模型。

其稳定分布为:

3.2 一般服务时间M/G/1排队模型

如果服务窗为顾客服务的时间是一般分布G,系统就构成M/G/1排队模型。它的平均排队等待时间为:

在存储系统中最常用到的排队模型就是上述这几类。

4.iSCSI-SAN存储的排队论模型分析

4.1 iSCSI-SAN存储中的I/O路径分析

iSCSI-SAN存储是基于iSCSI协议实现的IP-SAN存储系统,和SAN存储系统的I/O路径相比,只是光纤通道卡和光纤通道协议变为iSCSI适配卡和iSCSI协议。所以,当用户发出I/O请求时,应用程序通过调用访问文件系统,文件系统经分析这个I/O所在的设备和地址后,再发送给SCSI驱动程序,将相应的I/O转化为SCSI命令,传给iSCSI协议,将SCSI命令加入IP封装打包后,经iSCSI适配卡送到TCP/IP网络,经过IP网络再经iSCSI适配卡和iSCSI协议传送到iSCSI目标器的反向解包,还原出SCSI命令,传送到RAID驱动程序,由它完成I/O请求的数据处理,之后按照相反的路径将结果返回给用户。

通过以上的I/O路径的分析,可以知道在iSCSI-SAN存储中的数据请求I/O响应时间是由命令延迟时间、数据校验时间和数据传输时间组成(iSCSI协议的性能是不受iSCSI目标器设备的影响的)。

4.2 iSCSI-SAN存储中排队过程的分析和数学建模

上图显示iSCSI-SAN的队列模型。当用户I/O请求通过iSCSI协议到达SCSI阵列控制器后,SCSI阵列控制器根据阵列中的数据分布情况向阵列中的磁盘发出子I/O请求。磁盘收到I/O命令后,执行请求,并由SCSI阵列控制器通过iSCSI网络把结果返回给用户。

可考虑将该系统分为3个基本的串行排队模型,即服务器级的交换传输队列、iSCSI协议中的服务队列和存储级的调度服务队列。我们知道在排队系统中,串行的多个排队子系统的任务的响应时间可以分别计算,最后将各个滞留时间进行累计相加就是任务在系统中的总的响应时间,即:

其中,为I/O请求在服务器级中的响应时间,为I/O请求在存储级中的响应时间,而为I/O请求在iSCSI协议中的响应时间[11]。

4.3 利用带宽比例求解iSCSI

-SAN存储中的优化配置

在iSCSI-SAN存储中的存储环境复杂,要完成复杂系统的配置工作相应很有难度,因为其中的存储设备不再属于某个服务器,而是在存储网络中共享,同时服务器也可以在多个存储设备上存储数据。这就需要根据用户具体的负载状况进行优化配置,合理分配存储资源而不至于造成资源的浪费。

在iSCSI-SAN存储中,可由用户的应用负载相对存储系统的带宽比例关系,即系统负载所需的带宽与阵列所能提供的带宽的比例,来确定该存储配置是否能满足用户的需求:如果带宽比例小于等于1,表示该阵列的配置能满足用户需求;如果带宽比例大于1,表示该阵列的配置是不能满足用户需求的;如果带宽比例远小于1,表示用户的负载不能充分利用存储资源,需要根据系统负载进行重新优化配置,达到既能满足用户需求又能充分利用存储资源的目的。

4.3.1 用户负载

用户负载应该包括该负载所占用的空间、I/O请求的到达率、平均I/O请求的大小、在I/O请求中读写请求分别占用的百分比以及在I/O请求中顺序I/O请求和随机I/O请求所占的比率等等,也可能存在多个用户负载共享相同的存储资源情况,这需要把这些用户负载综合起来考虑[12]。

4.3.2 带宽比例的表示

如果iSCSI-SAN要满足存储网络中有负载的带宽,就必须满足:作用在磁盘阵列上的负载所占用的带宽小于域存储控制器所允许的带宽[13],即:

其中,:表示用户的负载;

:表示用户请求到达率服从泊松分布;

:表示平均请求大小;

:表示域存储控制器所允许的带宽

4.3.3 iSCSI-SAN存储中的iSCSI-SCSI阵列带宽比例

由于磁盘阵列是iSCSI-SAN存储中的最基本组成部分,也是存储系统配置的基本单元,因此研究磁盘阵列在iSCSI-SAN存储中的带宽比例相当的重要。

iSCSI-SAN存储中的磁盘阵列主要有两种:

(1)使用iSCSI协议连接到主机的磁盘阵列(简称iSCSI-SCSI阵列),如图6所示;

(2)由iSCSI磁盘所组成的网络磁盘阵列(简称iSCSI-iSCSI阵列)。

图6所示的队列模型中,iSCSI-SCSI阵列的带宽比例取决于iSCSI网络的带宽比例和SCSI阵列中的带宽比例,即:

如果SCSI阵列所提供的带宽低于以太网的带宽,那么SCSI磁盘阵列的带宽比例就会高于iSCSI网络的带宽比例。又因为假设负载是均匀分布在系统中的各个磁盘上的,SCSI阵列的平均带宽比例可以近似看成阵列中磁盘的平均带宽比例,就有,那么就有带宽比例的表达式:

其中,其中为I/O请求到达率,是系统中磁盘对I/O请求的服务时间。从式子中可以知道:iSCSI-SCSI阵列的带宽比例只与SCSI阵列的带宽比例有关,而与iSCSI网络的性质没有关系。

在(6)式子中的为磁盘的I/O服务时间,是由磁盘访问延迟时间和磁盘传输时间组成的,磁盘访问延迟时间包括寻道延迟和旋转延迟,都可以从磁盘本身的出厂的参数中得到。

将(7)代入(6)就可以求得iSCSI-SAN存储中iSCSI-SCSI阵列的带宽比例表示式,将数据代入表达式后看,是否大于1?小于等于1?还是远小于1?从而判断出该系统的配置是否达到优化配置?

5.结论

iSCSI-SAN存储的存储环境较复杂,要完成系统的配置工作相应有难度,需要根据用户具体的负载状况进行优化配置,合理分配存储资源而不至于造成资源的浪费。本文通过分析,找到了用户的应用负载相对存储系统的带宽比例关系,即系统负载所需的带宽与阵列所能提供的带宽的比例,来确定该存储配置是否能满足用户的需求:如果带宽比例小于等于1,表示该阵列的配置能满足用户需求;如果带宽比例大于1,表示该阵列的配置是不能满足用户需求的;如果带宽比例远小于1,表示用户的负载不能充分利用存储资源,需要根据系统负载进行重新优化配置,达到既能满足用户需求又能充分利用存储资源的目的。本文仅从理论上进行了分析,有待进一步进行实证检验。

参考文献

[1]张江陵,冯丹著.海量信息存储(第1版)[M].北京:科学出版社,2003:22-24.

[2]Luyp,David.Performance study of Iscsi-based storage subsystems [J].IEEE Communications Magazine,2003,41(8):76-82.

[3]Hexb, Beedanagari,Zhou D. Performance evaluation of distributed iSCSI RAID[A].Proceedings of the 2003 IEEE/ACM International Workshop on Storage Network Architecture and Parallel I/O(SNAPI'03).

New Orleans,LA, USA,2003.

[4]Weetn,Hillyer,Shriver E. Obtaining high performance for storage outsourcing[A].Procee-dings of Conference on File and Storage Technologies (FAST'02).Monterey, California,2002:145-158.

[5]曹强,谢长生.网络存储系统中I/O请求时间的研究[J].计算机研究与发展,2003,40(8):1271-1275.

[6]崔宝江等.网络存储系统I/O响应时间边界性能研究[J].通信学报,2006,27(1):70-74.

[7]周薇等.排队论在计算机存储系统性能中的应用和分析[J].微计算机信息,2006,22(7-3):271-296.

[8][美]Marc Farley著,孙功星等译.SAN存储区域网络(第2版)[M].机械工业出版社,2002:12-34.

[9]B.Phillips.Have storage area networks come of puter[J].1998,31(7):10-12.

[10]徐玖平等编著.运筹学[M].北京:科学出版社,2004:247-275.

[11]向东.iSCSI-SAN网络异构存储系统管理策略的研究.[博士学位论文].中国:华中科技大学,2002.

[12]C.Ruemmler,J.Wilkes.Unix disk access patterns.Winter USENIX,January 1993:405-420.

[13]林闯.计算机网络和计算机系统的性能评价(第1版)[M].北京:清华大学出版社,2001:356.

基金项目:杭州师范大学中青年培育基金(编号:2010QN28)。

作者简介:孙红莺(1970―),女,浙江桐乡人,硕士,馆员,现供职于杭州师范大学理学院,研究方向:网络信息存储及管理。

上一篇:EPON技术在配网自动化系统中的应用研究 下一篇:DVD影碟机的音频输出信号