存储系统及其控制方法技术方案

技术编号:2852794 阅读:150 留言:0更新日期:2012-04-11 18:40
一种存储系统,其中高速缓存处理单元以页为单位管理高速缓存器中的数据,一页数据包括多个块数据,每个块数据用作主机的一个访问单元,且处理从主机到存储设备的输入和输出请求。在该高速缓存器中被主机更新并比该存储设备中所存储的数据更新的无效数据将要被写回至该存储设备的情况下,并且当在一页无效数据中确定不连续区域时,当发出读命令时该写回处理单元从该存储设备读出不连续区域并将其合并,以产生连续区域,并通过一次写命令发布来执行写回。

【技术实现步骤摘要】

本专利技术涉及一种经由高速缓存器处理从上层(upper)系统到存储设备的输入和输出请求的存储系统及其控制方法和程序,尤其涉及一种将高速缓存器中已更新的最新数据写回(write back)至存储设备的存储系统及其控制方法和程序。
技术介绍
传统地,在处理来自主机的输入和输出请求的RAID设备中,在控制模块中设有高速缓存器。这种RAID设备中的高速缓存数据以页为单位管理。如图1所示,例如以一页包含66,560个字节的方式管理高速缓存页100。高速缓存页100包括多个以块为单位设置的用户数据,每个块作为主机的一个访问单元,其中,一块用户数据是512字节,每512字节添加一个8字节的块校验码(BBC),且包括128个520字节块的一个单元被作为一页管理,因此,一页是520×128=66,560字节。而且,预备被称作高速缓存包元件(cache bundle element)CBE的高速缓存管理表来管理高速缓存页。在该高速缓存管理表中,提供每页的管理记录,且该管理记录具有例如逻辑单元数LUN、逻辑块地址LBA、图2B代表无效(dirty)数据的无效数据位图104(其中,一个块对应于一位),以及图2A代表当前数据存在的当前数据位图102(其中,同样的,一个块对应于一位)。一页高速缓存管理表相对应的尺寸为一比一的比例对应于构成RAID组的磁盘设备的一个条(strip)。在RAID设备的高速缓存控制中,当主机要求进行写入时,则以所需数量分配高速缓存页。然而,写入数据不总是存在于一页的整个范围中。因此,相对于该页中在写入步骤更新的块,在该无效数据位图中的对应位被设为位1,以管理存在的无效数据。而且,在现有的高速缓存控制中,当在高速缓存中缺乏空闲区域时,或当旧的高速缓存数据将要通过LRU算法移除时,则执行用于将该页中存在的无效数据写回到磁盘设备的写回处理。然而,在这种传统的高速缓存控制步骤中,当一页中存在的无效数据将要被写回至磁盘设备时,只有无效数据位图中被管理的且由位1代表的块被写到该磁盘设备。因此,当无效数据块不连续存在于该页中时,对每个由一组位1代表的连续区域发出写命令。结果,关于磁盘设备处理命令的时间延长,因此导致性能恶化的问题。根据本专利技术,提供一种存储系统及其控制方法和程序,即使在无效数据不连续存在于一页中时,仍能将写回命令的发出数抑制到最小水平,由此减少写回处理时间。
技术实现思路
本专利技术提供一种存储系统。本专利技术的存储系统包括高速缓存控制单元,用于以页为数据单位管理高速缓存器中的数据,一页数据包括多个块数据,每个块数据用作上层系统的一个访问单元,并且该高速缓存控制单元处理该上层系统关于存储设备的输入或输出请求;以及写回处理单元,在该高速缓存器中已被该上层系统更新并比该存储设备中所存储的数据更新的无效数据将要被写回至该存储设备的情况下,并且当在一页无效数据中确定不连续区域时,该写回处理单元从该存储设备读出不连续区域并将其合并,以产生连续区域,并执行写回。这里,当通过三次或更多次命令发布来执行写回处理时,该写回处理单元从该存储设备读出不连续区域并将其合并,以产生连续区域,并以页为单位执行写回。作为无效数据在一页中的分布,当至少一个第三连续区域经由不连续区域出现在最靠近页首的第一连续区域和最靠近页尾的第二连续区域之间时,该写回处理单元确定包括位于该第一连续区域与该第二连续区域之间的第三连续区域的不连续区域,将其从该存储设备读出,通过对位于该不连续区域中且不同于该第三连续区域的区域的读出数据进行合并,以产生连续区域,并执行写回。高速缓存控制单元包括无效数据位图,用于通过对应于每个块的位来管理在该页中无效数据的出现,以及当前数据位图,用于通过对应于每个块的位来管理在该页中数据的出现;其中,该写回处理单元参考该无效数据位图,并确定无效数据在该页中的不连续区域,并且在当前数据位图中关于该不连续区域的一端或两端确定连续当前数据时,则从该存储设备对剩余的不连续区域进行读取,并将其合并。该存储设备条数据的尺寸与该高速缓存器的页尺寸相同。本专利技术提供一种存储系统的控制方法。根据本专利技术的存储系统控制方法包括高速缓存控制步骤,以页为数据单位管理高速缓存器中的数据,一页数据包括多个块数据,每个块数据用作上层系统的一个访问单元,并且处理该上层系统关于存储设备的输入或输出请求;以及写回处理步骤,在该高速缓存器中已被该上层系统更新并比该存储设备中所存储的数据更新的无效数据将要被写回至该存储设备的情况下,并且当在一页无效数据中确定不连续区域时,从该存储设备读出不连续区域并将其合并,以产生连续区域,并执行写回。本专利技术提供由存储系统的计算机执行的程序。本专利技术的程序使得存储系统的计算机执行以下操作高速缓存控制步骤,以页为数据单位管理高速缓存器中的数据,一页数据包括多个块数据,每个块数据用作上层系统的一个访问单元,并且处理该上层系统关于存储设备的输入或输出请求;以及写回处理步骤,在该高速缓存器中已被该上层系统更新并比该存储设备中所存储的数据更新的无效数据将要被写回至该存储设备的情况下,并且当在一页无效数据中确定不连续区域时,从该存储设备读出不连续区域并将其合并,以产生连续区域,并执行写回。根据本专利技术的存储系统控制方法和程序的详细内容与本专利技术的存储系统的情况基本相同。根据本专利技术,即使当多个无效数据分离出现在页中至少三个或更多位置时,仍可以通过两次命令发布来执行写回,即,用于从存储设备读出不连续区域并执行合并的读命令发布,以及用于将已通过读取来执行的合并而产生的连续区域写到该存储设备的写命令发布;并且即使当无效数据分散且不连续地存在于一页中时,也能将命令发布数抑制在两个,由此缩短命令处理时间,并非常有助于整个系统的性能提高。从下面参照附图的详细描述,本专利技术的上述和其他目的、特征、以及优点将会变得更加显而易见。附图说明图1为传统系统中高速缓存页的存储结构的示范性示意图;图2A和2B为在传统高速缓存管理表中设置的无效数据位图和当前数据位图的示范性示意图;图3为本专利技术所应用的RAID设备的硬件结构框图;图4为本专利技术所应用的RAID设备的另一硬件结构框图;图5为按照本专利技术RAID设备的功能结构框图;图6A、6B和6C为在本专利技术的写回处理中无效数据、当前数据和写回数据位图的示范性示意图;图7A、7B和7C为在本专利技术的写回处理中在无效数据的不连续区域被当前数据复原的情况下位图的示范性示意图;图8A和8B为从本专利技术的写回处理中排除的无效数据位图的示范性实例;图9A至图9I为正确显示能在写回中出现的无效数据分布图的示范性示意图;图10A和图10B为根据本专利技术的写回处理的流程图;以及图11A和图11B为在图10A和10B的步骤S1中无效数据位图的确定处理的流程图。具体实施例方式图3为本专利技术所应用的RAID设备的硬件结构框图,其中示出一个大型设备结构作为实例。在图3中,为RAID设备10设置了基于帧(frame-based)的主机12和基于UNIX(R)/AI服务器的主机14。在该RAID设备10中设置有配备有CPU 15的通道适配器16;控制模块18-1到18-4;后端路由器20-1和20-2;磁盘设备22-1至22-4,例如为硬盘设备,其用作构成RAID的存储设备;本文档来自技高网
...

【技术保护点】
一种存储系统,包括:高速缓存控制单元,用于以页为数据单位管理高速缓存器中的数据,一页数据包括多个块数据,每个块数据作为上层系统的一个访问单元,并且该高速缓存控制单元处理该上层系统关于存储设备的输入或输出请求;以及写回处理单元 ,在该高速缓存器中已被该上层系统更新并比该存储设备中所存储的数据更加新的无效数据将要被写回至该存储设备的情况下,并且当在一页无效数据中确定不连续区域时,该写回处理单元从该存储设备读出不连续区域并将其合并,以产生连续区域,并执行写回。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:伊藤实希夫小林明人
申请(专利权)人:富士通株式会社
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1