VSAM让大型机存储性能重获新生

在虚拟时代,存储性能相当关键,而借助已有的一项技术可以让大型机得到新生。数据条带技术的使用打破了几个卷之间相邻模块的顺序,其目的是要降低设备对I/O的竞争,提高I/O并行性,使得更多的I/Os能够在多个设备上同时运行。本文将讨论IBM针对大型机启用的名为VSAM(虚拟存储访问方法)的条带技术软件。

  数据条带技术基本要素

  要弄明白数据条带的优点,就有必要了解一下这种技术的原理。参看图1,这里展示的是一个普通集群,VSAM在控制区(CA)里按顺序摆放了I/O基础单元--控制间隔(CIs)。在本例中,诸如CA1,CA2等等控制区,它们包含了15个磁道,这些磁道呈直线安放在直接存取存储器(DASD)圆柱体上。如果集群扩展到其它卷,VSAM仍遵循同一规则在控制区里有序安放控制间隔--例如C46,C47,C48等。

VSAM让大型机存储性能重获新生

  图1 常见磁盘组织方式,把相邻模块放在同一个卷中

  这种结构本身就存在多种潜在瓶颈问题。例如,按顺序处理数据,系统就要让I/O每次与一台设备的一个磁道对应排序。即使直接存储可能也要排序,假如两个在线进程想要辨识位于相同磁道上的两个不同控制间隔。

  现在思考一下图2 ,该图显示了横跨四个卷提取到的一个数据组。

VSAM让大型机存储性能重获新生

  图2 数据条带可识别控制间隔,允许磁盘I/O平行发生,提高了存储性能

  在上述数据条带例子中,VSAM从逻辑上把控制区延展到了四个卷而不仅局限在一个圆柱体或是单独一个卷。并且,VSAM在设备中采用了循环方式的控制间隔,例如C1在卷1上,C2在卷2上,等等。如果数据组扩展了,VSAM会给四个新扩展区分配出空间,同时能够保持四个卷原有的条带结构。

  条带式排列提高了按序处理效率,因为系统可以同时发起针对多卷的并行I/O访问动作。条带化帮助关键访问比如在线应用能够实现即时访问一个卷的数据,而无需等待I/O结束对另一个数据卷的访问。

  VSAM还支持“层级”理念。IBM把该理念定义为将会包含在“I/O包”中的数据卷。实际上,一层代表了一个数据组扩展区,它们共享相同的数据记录。当一个数据组扩展时,扩展区可能延伸到不同的数据卷上。VSAM可能会得到进一步优化,识别出每个层分别属于哪个数据卷。

  用户可以对除AIXs(辅助索引)之外几乎所有类型的VSAM集群进行条带化。IBM也可以把条带化限制在一个集群的数据组件上。

  IBM提醒VSAM要支持多达16条带。这意味着控制区可能伸展至16个磁道而非传统的15个磁道,并且包含更多的控制间隔。对于(KSDS)关键性排序数据组,这就意味着指向数据模块(索引序列组)的索引控制间隔可能没有足够空间引用控制区的控制间隔。这就表明其本身是控制区末端不使用的控制间隔,或者说是某种空间浪费。为了充分利用这部分空间,存储管理员一定要用较大的控制间隔来覆盖默认的索引控制间隔。

  定义条带集群

  条带集群必须是由系统管理存储器(SMS)来管理。数据以及存储类特性组合起来决定了一个集群是如何条带化的。概况如下表1。

VSAM让大型机存储性能重获新生

  Table 1 一个集群是如何进行条带化的取决于数据和存储类特性

  首先,条带化集群要在数据类中用数据组名类型设定EXT。在数据类中设定了EXT属性标签后,存储类就掌控了有关条带化的细节内容。

  在存储类中,根据是否设定了“有保证的空间”这一特性,相应就有两种方法可以进行条带化。如果“有保证的空间”这一设定处于关闭状态,那么可以选择通过设置持续数据速率(SDR)值大于另一个。VSAM把SDR除以四就能得出条带数。因此,存储类SDR值是12时,三个条带就能生成集群。另外,VSAM在分配数据组时,会在所有数据卷范围内对主要分配内容进行均衡分配。

  如果启用了有保证空间设置,任何大于零的持续数据速率(SDR)都将导致VSAM分配一个新条带号,其中包含在数据存储类分配列表中卷数相同的数据卷,最多可分配到16个。相反,如果启用了无保证空间设置,VSAM将使用每个数据卷上全部主用空间生成一个集群。

  数据条带有用性

  今天,RAID技术通过广泛的与各类基于现代DASD技术框架的缓存技术结合解决了大部分存储问题,但还是没能消除过去一直困扰大型机性能的磁盘“热点”问题,当太多活动的数据类共存于同一设备时产生的“热点”会严重损耗大型机性能。IBM也引入了并行访问卷(PAVs)技术,基本上是克隆了设备控制块用以允许同步访问DASD单元。通过使用更小的数据类空间临界点,有人可能会想访问层级的条带是否仍然相关。

  我认为这是因为DASD框架内的瓶颈仍然存在。举个例子,DASD框架里的与I/O通道接口的处理器可能被迫忙于提供链接服务而无法迅速的响应。此外,在DASD框架微码中的优化算法相对于直接I/O和小数据块可能偏好在大的数据块和有序的处理,是典型的批处理,因此影响了在线性能。对于这两种情况,精心设置在卷上的条带化的数据类能够确保接口处理器不会太忙,并能够传输在线数据,从而花更少的时间去完成批处理任务。

  另外,I/O性能仍然与应用数据访问模型息息相关。例如,一个在线应用可能会在一秒钟内对一个相关的小集群更新几十次,这就会对DASD框架内外都产生了瓶颈。条带技术可以帮助解决这个瓶颈,通过使用交错的控制间隔把数据扩展到几个数据卷上,从而减轻任何一个I/O通道的负担。

  因此,在访问方法层面的条带化技术显然应该被看作管理大型机性能的另一个有效工具。

你可能感兴趣的:(VSAM)