CN100442250C - 存储*** - Google Patents
存储*** Download PDFInfo
- Publication number
- CN100442250C CN100442250C CNB2005101322376A CN200510132237A CN100442250C CN 100442250 C CN100442250 C CN 100442250C CN B2005101322376 A CNB2005101322376 A CN B2005101322376A CN 200510132237 A CN200510132237 A CN 200510132237A CN 100442250 C CN100442250 C CN 100442250C
- Authority
- CN
- China
- Prior art keywords
- mentioned
- subregion
- cache memory
- storage system
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0873—Mapping of cache memory to specific storage devices or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/26—Using a specific storage system architecture
- G06F2212/261—Storage comprising a plurality of storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/282—Partitioned cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种存储***,其是一种由多个应用程序共用的存储***,能够对各个应用程序分别进行最佳的高速缓冲存储器的性能调谐。本发明的存储***包括:存储设备,其提供可从多个应用程序访问的多个逻辑卷;控制器,其响应来自多个应用程序的输入输出请求,并对向逻辑卷的数据输入和从逻辑卷的数据输出进行控制;高速缓冲存储器,其暂时保存在逻辑卷输入输出的数据,高速缓冲存储器被逻辑划分成分别排他性地分配给多个逻辑卷的多个分区。
Description
技术领域
本发明涉及一种存储***,其能够对多个应用程序分别进行最佳的高速缓冲存储器的性能调谐。
背景技术
近年来,将分散分配在各个服务器中的存储装置集中在一处、并通过SAN(Storage Area Network:存储区域网络)等存储专用网络连接到服务器组上的存储合并开始普及。作为存储合并的运用方式,多个应用程序或内容的存储***的共用逐渐增多。存储***例如由磁盘阵列装置等构成。磁盘阵列装置是将多个磁盘驱动器分配成阵列状而构成的,例如,基于RAID(RedundantArray of IndePendent InexPensive Disks:独立磁盘冗余阵列)构筑而成。在磁盘驱动器组提供的物理存储区域上,形成有至少大于等于一个的逻辑卷,该逻辑卷被提供给主装置。主装置通过对存储***发出写入命令或读出命令,可以对逻辑卷进行数据的读写。
在这种存储***中安装有高速缓冲存储器,其暂时存储用于写入盘驱动器的写入数据,或者从盘驱动器中读出的读出数据,从而实现对主装置的I/O处理的高速化(例如,专利文献1)。例如,对于从主装置向盘驱动器的写入访问,以向高速缓冲存储器写入写入数据来向主装置通知写入处理的结束,在高速缓冲数据蓄积一定量的阶段进行降级(destage)。对于从主装置向盘驱动器的读出访问,在读出数据命中(hit)高速缓冲存储器的情况下,通过从高速缓冲存储器中读出读出数据,来实现高速访问。
专利文献1:特开2001-166993号公报。
但是,由于各个应用程序的I/O特性互不相同,因此,需要结合其I/O特性使高速缓冲存储器的性能调谐(例如,设定段长度、是否需要双重写入等)最佳化。
对于例如流分配动态图像或静止图像等内容的应用程序那样的、连续处理大量数据的应用程序,理想的是将高速缓冲存储器的段长度(segment size)设定得较大以减小***开销。相反,对于数据库等那样的随机发出较小的访问的应用程序,理想的是将段长度设定得较小以减小***开销。
另外,对于例如银行的在线服务那样的要求高可靠性的应用程序,需要实施高速缓冲数据的二重化(duPlexing),以在发生故障时也能可靠地保存数据。与此相对,在如天气预报等临时模拟或科学技术计算那样的、根据在其它单元中保存的源数据进行运算的情况下,为了保存中途的运算结果(暂时数据),相比于确保向高速缓冲存储器的双重写入的高可靠性,有时更重视性能。
在现有的存储***中,由于不能针对每个应用程序根据其I/O特性进行段长度的设定和是否需要双重写入等性能调谐,因此,在由多个应用程序共用的存储***中,当对某一应用程序进行最佳的高速缓冲存储器性能调谐时,会产生其它应用程序的性能降低的不良情况。例如,在如提供流服务(streaming survice)的应用程序那样将段长度设定得较大时,在数据库那样的应用程序中,高速缓冲存储器的命中率降低。
另外,在多个应用程序共用的存储***中,由于应用程序之间能够产生资源竞争,因此,为了使各应用程序适当地发挥性能,需要抑制资源竞争。例如,有时在由负荷不同的多个应用程序共用的存储***中,由于从高负荷的应用程序接收更多的写入,因此,高速缓冲存储器被高负荷的应用程序的数据用尽,因而在与其它应用程序之间产生资源竞争。
这种竞争不仅仅是在I/O特性不同的多个应用程序之间产生,在性能特性不同的多个盘驱动器之间也能够产生。例如,在混合安装了光纤信道(fiberchannel)盘驱动器和ATA(Advanced Technology Attachment)盘驱动器的存储***中,ATA盘驱动器进行访问比光纤信道盘驱动器更加花费时间,因此,相比于从高速缓冲存储器到光纤信道的降级所需要的时间,从高速缓冲存储器向ATA盘驱动器的降级所需要的时间更长。这样,利用ATA盘驱动器的应用程序的数据停留在高速缓冲存储器中的时间相对较长,因此ATA盘驱动器的数据在高速缓冲存储器中停留,因而产生资源竞争。
发明内容
本发明是鉴于上述问题而提出的,其目的之一在于提供一种存储***,其是一种由多个应用程序共用的存储***,能够针对各个应用程序进行最佳的高速缓冲存储器的性能调谐。
本发明的目的之一还在于提供一种存储***,其是一种由多个应用程序共用的存储***,能够抑制由于在I/O特性不同的多个应用程序之间、或者性能特性不同的多个存储设备之间的高速缓冲存储器的资源竞争而导致的性能降低。
为了解决上述问题,本发明的存储***包括:存储设备,其提供可从多个应用程序访问的多个逻辑卷;多个控制器,其响应来自多个应用程序的输入输出请求,并对向逻辑卷的数据输入和从逻辑卷的数据输出进行控制;多个高速缓冲存储器,其暂时保存输入到逻辑卷中的数据和从逻辑卷中输出的数据,多个高速缓冲存储器中的第一高速缓冲存储器被划分为分别排他性地分配给多个逻辑卷的多个第一分区,包含在上述多个第一分区中的一部分分区设定为向上述多个高速缓冲存储器中的第二高速缓冲存储器执行拷贝,其容量根据向分配的逻辑卷发送数据的应用程序的I/O的性能决定;上述第二高速缓冲存储器被逻辑划分为多个第二分区,包含在上述多个第二分区中的一部分分区设定为从上述第一高速缓冲存储器拷贝数据,包含在上述多个第二分区中的一部分分区的容量与上述第一高速缓冲存储器内的上述一部分分区的容量相对应地决定;包含在上述第二高速缓冲存储器内的上述多个第二分区中的另一部分分区设定为多个高速缓冲存储器间不执行拷贝,上述另一部分分区的容量根据向分配给每个上述另一部分分区的逻辑卷发送数据的应用程序的I/O的性能决定。
通过将多个分区分别排他性地分配给多个逻辑卷,可以抑制排他性地分配给各个应用程序的的逻辑卷之间的资源竞争,从而可以进行最佳的高速缓冲存储器的性能调谐。
另外,即使在存储设备的性能特性不同的情况下,通过将多个分区分别排他性地分配给多个逻辑卷,可以抑制因存储设备性能特性不同而导致的高速缓冲存储器的资源竞争,可以进行最佳高速缓冲存储器的性能调谐。
附图说明
图1是表示存储***的主要结构的方框图。
图2是表示高速缓冲存储器的双重写入的说明图。
图3是表示各分区与逻辑卷的对应关系的图。
图4是表示LUN和分区号的对应关系的图。
图5是表示通过划分高速缓冲存储器来抑制资源竞争的概要的图。
图6表示各个分区的逻辑结构。
图7表示各个分区的物理结构和逻辑结构的对应关系。
图8是控制器的主要结构图。
图9是表示段与其管理信息的对应关系的图。
图10是分区大小自动变更处理过程(routine)的流程图。
图11是分区大小手动变更处理过程的流程图。
图12是段长度变更处理过程的流程图。
图13是分区/LU分配变更处理过程的流程图。
图14是单元画面的显示例。
图15是分区的参照、变更画面的显示例。
图16是分区变更画面的显示例。
图17是向逻辑卷的分区分配设定画面的显示例。
图18是分区分配变更画面的显示例。
图19是分区指定画面的显示例。
图20是表示存储***的主要结构的方框图。
图21是表示存储***的主要结构的方框图。
图22是表示存储***的主要结构的方框图。
图23是电源故障时的恢复处理过程的流程图。
符号说明
10:存储***;20、30:控制器;21、31:CPU;22、32:CPU/PCI桥;23、33:本地存储器;24、34:数据传送控制部;25、35:高速缓冲存储器;26、36:主I/F控制部;27、37:驱动器I/F控制部;28、38:PCI总线;29、39:计时器;40:盘驱动器;70:管理终端。
具体实施方式
下面,参照附图对本发明的实施方式进行说明。各个实施例并不不限定权利要求的范围,另外,在实施例中说明的特征未必是本发明的解决手段所必须的。
实施例1
图1表示本实施例的存储***的主要结构。
存储***10通过通信网络50与一台或者多台主装置(上位装置)60连接。主装置60是作为存储***10的上位装置来发挥功能的服务器装置、个人计算机、工作站、大型机(mainframe)等。在主装置60中安装有在OS(OPreation System:操作***)61上动作的多个应用程序AP#0、AP#1、……、AP#N。存储***10提供的存储资源由多个应用程序AP#0、AP#1、……、AP#N共用。
作为通信网络50,例如可以列举有SAN(Storage Area Network)LAN(LocalArea Network:局部区域网络)、因特网、专用线路、公众线路等。在主装置60通过SAN与存储***10连接的情况下,主装置60按照光纤信道协议,以作为存储***10的存储资源的数据管理单位的块为单位,请求数据的输入输出。在主装置60通过LAN与存储***10连接的情况下,主装置60通过NFS(NetworkFile System:网络文件***)或iSCSI(internet Small Computer System Interface:因特小型计算机***接口)等协议,指定文件名,并请求以文件为单位的数据输入输出。存储***10为了接收来自主装置60的文件访问请求,需要安装NAS(Network Attached Storage:网络附加存储)功能。
存储***10采用具有二重化后的控制器20、30的双重控制器结构,作为提供给多个应用程序AP#0、AP#1、……、AP#N的存储设备,具有多个盘驱动器40。作为盘驱动器40,例如可以使用光纤信道盘驱动器、串行(serial)ATA盘驱动器、并行(Parallel)ATA盘驱动器、SCSI盘驱动器等性能特性不同的多个盘驱动器,或者也可以使用这些盘驱动器中的任一种盘驱动器。这里,性能特性是指例如对盘驱动器的访问速度等。
另外,作为存储设备,并不仅限于这些盘驱动器,例如也可以采用光盘、半导体存储器、磁带、软磁盘(flexible disk)等。
控制器20、30以由所谓的RAID方式规定的RAID等级(level)(例如,0、1、5)来控制多个盘驱动器40。在RAID方式中,将多个盘驱动器40作为一个RAID组来进行管理。在RAID组上,定义有多个逻辑卷,该多个逻辑卷为从主装置60进行访问的单位。对各个逻辑卷赋予称为LUN(LogicalUnit Number:逻辑单元号码)的标识符LU#0、LU#1、……、LU#M。
控制器20主要具有CPU21、CPU/PCI桥(bridge)22、本地存储器(LM)23、数据传送控制部(D-CTL)24、高速缓冲存储器(CM)25、主I/F控制部26以及驱动器I/F控制部27。
CPU21为响应来自主装置60的数据输入输出请求并控制对多个盘驱动器40的I/O处理(写入访问或读出访问)的处理器。控制器20具有计时器29,当到了预先设定的时刻时,控制器20将自动调整高速缓冲存储器25的段长度(详细情况将在后文叙述)。在本地存储器23中保存有CPU21的微程序。CPU/PCI桥22将CPU21、本地存储器23以及数据传送控制部24相互连接起来。高速缓冲存储器25是暂时保存用于写入盘驱动器40的写入数据或从盘驱动器40读出的读出数据的缓冲存储器。高速缓冲存储器25具有备用电源,其被构成为即使在存储***10发生电源故障的情况下也能够防止高速缓冲数据丢失的非易失性存储器。
数据传送控制部24将CPU/PCI桥22、高速缓冲存储器25、主I/F控制部26、驱动器I/F控制部27彼此连接起来,并控制主装置60与盘驱动器40之间的数据传送。具体地讲,当从主装置60进行访问时,数据传送控制部24通过主I/F控制部26将从主装置60接收的的写入数据写入高速缓冲存储器25,然后,为了将该写入数据非同步地写入盘驱动器40,将该写入数据传送到驱动器I/F控制部27。另外,当从主装置60进行读出访问时,通过I/F驱动器控制部27将从盘驱动器40读出的读出数据写入到高速缓冲存储器25,并且传送给主I/F控制部26。在数据传送控制部24与CPU/PCI桥22之间布线有PCI总线28。
主I/F控制部26是控制与主装置60之间的接口的控制器,例如具有接收来自遵守光纤信道协议的主装置60的块访问请求的功能。驱动器I/F控制部27是控制与盘驱动器40之间的接口的控制器,例如具有按照控制盘驱动器40的协议来控制发送给盘驱动器40的数据输入输出请求的功能。
控制器30具有CPU31、CPU/PCI桥32、本地存储器(LM)33、数据传送控制部(D-CTL)34、高速缓冲存储器(CM)35、主I/F控制部36以及驱动器I/F控制部37,控制器30与控制器20结构相同。控制器30具有计时器39,当到了预先设定的时刻时,控制器30将自动调整高速缓冲存储器35的段长度(详细情况将在后文叙述)。
各控制器20、30的数据传送控制部24、34通过数据总线51彼此连接,在数据传送控制部24、34之间进行数据传送,以便将写入一方的高速缓冲存储器25(或35)的数据双重写入到另一方的高速缓冲存储器35(或25)中。另外,在以RAID等级5管理盘驱动器40的情况下,数据传送控制部24、34运算奇偶校验数据(Parity data)。
存储***10与用于维护或管理***的管理终端70连接,在两者之间根据光纤***协议或TCP/IP等规定通信协议进行数据通信、操作员通过操作管理终端70,例如可以进行在盘驱动器40上定义的逻辑卷的设定、盘驱动器40的增加或减少、RAID结构的设定变更(例如,从RAID等级5变更为RAID等级1等)。另外,如后所述,分别针对各个应用程序AP#0、AP#1、……、AP#N进行高速缓冲存储器25、35的最佳的性能调谐(分区划分、设定分区大小、设定段长度、设定是否需要二重化、逻辑卷相对分区的分配设定或者分配变更等)。
另外,管理终端70可以内置在存储***10内,或者也可以是外挂机构。
图2表示双重控制器的高速缓冲数据的双重写入的概要。表示双重控制器的高速缓冲数据的双重写入的概要。为了便于说明,在以下的说明中,有时将控制器20称为CTL#0,将控制器30称为CTL#1。对各个CTL#、CTL#1分配具有排他性地访问权限的逻辑卷。例如,CTL#0对逻辑卷LU#0具有排他性地访问权限,CTL#1对逻辑卷LU#1具有排他性地访问权限。关于对哪个CTL#0、CTL#1排他性地分配哪个逻辑卷LU#0、LU#1,例如通过向高速缓冲存储器25、35上的管理信息区域(参照图8)等写入其设定信息,各个CTL#0、CTL#1能够把握自身的访问权限。
高速缓冲存储器25被划分成多个存储区域P01、P02、P03,高速缓冲存储器35被划分成多个存储区域P11、P12、P13。存储区域P01是用于暂时保存写入排他性地分配给CTL#0的逻辑卷(例如LU#0)的高速缓冲数据DATA0的存储区域,在该存储区域P01中进行双重写入的设定(镜像打开设定)。即,写入存储区域P01的高速缓冲数据DATA0通过CTL#0的控制还被写入到存储区域P11。存储区域P11是CTL#0的镜像用存储区域。
同样地,存储区域P02是用于暂时保存写入排他性地分配给CTL#1的逻辑卷(例如LU#1)的高速缓冲数据DATA1的存储区域,在该存储区域P12中进行双重写入的设定(镜像关闭设定)。即,写入存储区域P12的高速缓冲数据DATA1通过CTL#1的控制还被写入到存储区域P02。存储区域P02是CTL#1的镜像用存储区域。
存储区域P03、P13是没有设定双重写入的存储区域(镜像关闭设定)。
另外,将进行了双重写入设定的存储区域P01、P02、P11、P12称为镜像打开区域,将没有进行双重写入设定的存储区域P03、P13称为镜像关闭区域。
图3表示高速缓冲存储器的各分区与应用程序及逻辑卷的对应关系。上述各存储区域(例如P01)逻辑划分成多个分区(例如P01#0、P01#2、P01#3)。所谓分区是为了保存用户数据而在高速缓冲存储器上逻辑划分的存储区域,是针对各个逻辑卷排他性地分配的各个存储区域。分区的用语在不脱离其宗旨的范围内,例如也可以称为区域、划分存储区域、划分区域、划分高速缓冲存储等。通过对各个分区排他性地分配互不相同的逻辑卷(例如,希望防止资源竞争的逻辑卷)LU#0、LU#1、……、LU#M,可以进行以逻辑卷为单位的高速缓冲存储器25、35的独立的资源管理。即,由于各逻辑卷使用的高速缓冲存储器25、35的存储资源以分区为单位进行划分,因此即使在逻辑卷由性能特性不同的盘驱动器40构成的情况下,也能够抑制由于逻辑卷的性能特性的不同而导致的资源竞争。
另外,通过对各个逻辑卷LU#0、LU#1、……、LU#M排他性地分配I/O特性不同的多个应用程序AP#0、AP#1……、AP#N,可以抑制由于应用程序AP#0、AP#1……、AP#N的I/O特性不同而导致的高速缓冲存储器25、35的资源竞争。例如示出了这样的示例:将多目的用途的应用程序使用的逻辑卷LU#0分配给分区P01#1,将数据库使用的逻辑卷LU#2分配给分区P01#2,将流(streaming)用应用程序使用的逻辑卷LU#3分配给分区P01#3。
另外,作为镜像关闭的存储区域P03,被逻辑划分成分区P03#0、P03#1,将进行科学技术计算的应用程序(HPC)使用的逻辑卷LU#5、LU#6分配给各个分区03#0、P03#1。镜像关闭区域在保存科学技术计算的中途运算结果那样的暂时数据的情况等不需要双重写入的情况下使用。
同样地,存储区域P02、P11、P12、P13也逻辑划分成多个分区。
另外,作为存储区域P01(复制源区域)的镜像区域(复制目的地区域)的存储区域P11的分区划分的方式(分区数、分区大小、段长度)与存储区域P01的分区划分的方式相同。同样地,作为存储区域P12(复制源区域)的镜像区域(复制目的地区域)的存储区域P02的分区划分的方式与存储区域P12的分区划分的方式相同。另一方面,作为镜像关闭区域的存储区域P03、P13的分区划分的方式不一定非要相同,另外,存储区域P03、P13的大小也不一定非要相同。但是,如果将存储区域P03、P13的大小设定成相同,可以高效地使用镜像关闭区域。
另外,可以针对各个分区进行是否需要双重写入的设定。当进行镜像关闭的设定时,由于不需要在数据传送控制部24、34彼此之间进行高速缓冲数据的传送,因此,可以降低与数据传送相伴随的控制器20、30的***开销。
图4表示LUN与分区号的对应关系。通过由操作员操作管理终端70以向存储***10发出变更逻辑卷和分区的分配的指示,可以适当地变更该对应关系(详细内容将在后文叙述)。
图5表示通过向各分区分配逻辑卷来抑制资源竞争的概要。在分区P01#1中保存有应用程序AP#1对逻辑卷LU#2进行读写的高速缓冲数据DATA2,在分区P01#2中保存有应用程序AP#2对逻辑卷LU#3进行读写的高速缓冲数据DATA3。应用程序AP#1是发出数据库等较小的访问的应用程序,而应用程序AP#2是处理连续的大量数据流等的程序,因此两者的I/O特性大为不同。即,保存在各分区P01#1、P01#2中的高速缓冲数据DATA2、DATA3在高速缓冲存储器上的停留时间不同,因此在按照分区进行独立的资源管理的情况下,有时会产生资源竞争。
但是,通过对高速缓冲存储器进行分区划分以排他性地分配各应用程序AP#1、AP#2能够使用的高速缓冲存储器的资源,应用程序AP#1的高速缓冲数据DATA2就不会消耗分区P01#2的资源。同样地,应用程序AP#2的高速缓冲数据DATA3也不会消耗分区P01#1的资源。这样,可以抑制因某一个应用程序的负荷影响到高速缓冲存储器整体而产生的资源竞争的情况。
另外,即使在构成逻辑卷LU#2、LU#3的盘驱动器的性能特性不同的情况下,出于同样的理由,也可以抑制资源竞争。
图6表示各分区的逻辑结构。这里,示出了将各存储区域划分成4个分区的示例。各分区的分区大小和段长度设定成与应用程序的I/O特性对应的最佳值。一般地,如果将段长度设定得较大,在降级高速缓冲数据时,由于管理从脏数据(dirty data)向清洁数据(clean data)的状态迁移的管理信息变少,因此处理速度提高,可以降低***开销。如果将段长度设定较小,则高速缓冲存储器的命中率提高。例如,对于连续处理动态图像配信等大量数据的应用程序使用的分区,理想的是将段长度设定得较大,对于随机发出数据库等较小的访问的应用程序使用的分区,理想的是将段长度设定得较小。
在该图所示的示例中,将分区P01#0的段长度设定为16KB(默认大小),分区P01#1的段长度设定为4KB,分区P01#2的段长度设定为64KB,分区P01#3的段长度设定为512KB。
不仅限于镜像打开区域(存储区域P01、P11、P12),在镜像关闭区域(存储区域P03、P13)中,各个分区的分区大小和段长度根据应用程序的I/O特性设定成最佳值。
作为存储***10的运用方式,例如,可以针对每个应用程序,预先默认设定分区大小、段长度、是否需要双重写入等,当存储***10判断应用程序的种别时,根据针对该应用程序默认设定的设定值,来设定分区大小、段长度以及是否需要双重写入等,以便能够进行高速缓冲存储器的最佳性能调谐。
另外,根据应用程序的I/O特性的变化,通过自动或操作员的输入操作,可以在不关闭电源的情况下动态地设定变更各分区的段长度。例如,将分区P01#1的段长度设定成默认的16KB,但是根据I/O特性的变化,该长度可以动态地扩大(例如,设定变更成64KB)或缩小(例如设定变更成4KB)。另外,可以通过自动或操作员的输入操作,在不关闭电源的情况下动态地设定变更各分区的分区大小。对于处理大量数据的应用程序所使用的分区,可以将分区大小设定得较大,对于处理少量的数据的应用程序所使用的分区,可以将分区大小设定得较小。
作为存储***10自动设定变更段长度或分区大小的示例,例如可以由CPU监视高速缓冲存储器25、35的资源竞争状态,并变更段长度或分区大小,以与各应用程序相适。
图7表示各分区的物理结构和逻辑结构的对应关系。通过将多个块(例如,BLK#0、BLK#9、BLK#25、BLK#27)映射(mapping)到各个分区(例如P01#0),高速缓冲存储器被逻辑划分成多个分区。各块由多个段SEG构成。这样,通过利用块的映射实现分区的逻辑划分,分区大小的变更可以通过块的映射变更来对应,因此可以将段的移动量抑制在最小限度。假设,如果物理结构与逻辑结构相同,则在变更了分区大小的情况下,必须依次错位地移动分区分界线,能产生需要移动大量段的情况。
图8表示控制器的主要结构。与图1所示标号相同的标号的硬件表示相同的硬件,并省略其详细说明。高速缓冲存储器25所提供的存储区域划分成管理信息区域25a和用户数据区域25b。用户数据区域25b是用于暂时保存用户数据(高速缓冲数据)的存储区域,如上所述,其对应于多个应用程序而划分成多个分区。管理信息区域25a保存管理用户数据所需要的管理信息,例如,数据属性(读出数据/写入数据)、主装置60指定的用户数据的逻辑地址、高速缓冲存储器上的空闲区域信息、与高速缓冲数据的置换有关的优先级顺序的信息等。
图9表示段与父子段(parent sub-segment)管理块的和子子段(sonsub-segment)管理块的对应关系。在本实施例中,段由一个或多个子段(sub-segment)构成,通过调整构成段的子段的个数,来调整段长度。子段的大小位预先设定的固定大小、在由多个子段构成段的情况下,在该段中,将最初访问的子段称为父子段,将第二个以及第二个以后访问的子段称为子子段。父子段和子子段没有区别的情况下,仅仅称为子段。
在该图中,SSEG1~SSEG8表示其访问访问过的子段及访问顺序。在子段的大小默认设定为16KB的情况下,要使段长度为64KB,需要集中4个子段来构成段。例如,将SSEG1作为父子段,将其后连续的3个子段SSEG2~SSEG4作为子子段,并通过使它们逻辑相关来构成一个段。同样地,将SSEG5作为父子段,将其后连续的3个子段SSEG6~SSEG8作为子子段,并通过使他们逻辑相关来构成一个段。
另外,父子段和子子段未必分配在连续的存储区域上,也可以离散地分散高速缓冲存储器上的各处。
父子段管理块80包括:父子段地址81、顺方向指针82、逆方向指针83、子子段指针84、以及父子段管理信息85。父子段地址81表示父子段管理块80管理的父子段的位置。顺方向指针82按照最早访问的顺序指示父子段管理块80。逆方向指针83按照最新访问的顺序指示父子段管理块80。子子段指针84指示子子段管理块90。在父子段管理信息85中保存有父子段的状态(脏/清洁/自由(free))等。当在父子段内混有脏数据和清洁数据的情况下,根据位映射(bitmap)信息,来管理其状态。
子子段管理块90包括:子子段地址91,顺方向指针92、以及子子段管理信息93。子子段地址91表示子子段管理块90管理的子子段的位置。顺方向指针92按照最早访问的顺序指示子子段管理块90。在子子段管理信息93中保存有子子段的状态等。当在子子段内混有脏数据和清洁数据的情况下,根据位映射的信息,来管理其状态。
头指针101指示顺方向指针81的最后尾,尾指针102由开头的逆方向指针82指示。
这样,被队列管理的父子段管理块80和子子段管理块90,在状态是脏数据的情况下,作为脏队列被管理,在状态是清洁数据的情况下,作为清洁队列被管理。通过使父子段和多个子子段逻辑相关来构成段,当父子段进行状态迁移时,子子段也进行状态迁移,因此,可以使降级处理高速化。
图10表示分区大小自动变更处理过程的流程图。应用程序AP0、AP#1、……、AP#N,根据其用途例如有请求24小时连续工作的应用程序、在某特定的时间段内工作率变高的应用程序等各种应用程序,有时其负荷按时间段而不同。为了适当发挥应用程序的性能,理想的是根据各个时间段的负荷变动来变更分区大小。例如,有时在某应用程序不工作的夜间,增大其他应用程序所使用的分区大小。
当调出分区大小自动变更处理过程时,CPU21检查计时器29显示的当前时刻是否与计时器设定时刻一致(S101)。在当前时刻为计时器设定时刻时(S101:YES),CPU21选择分区大小比操作员指定的分区大小大的分区作为变更源分区,选择分区大小比操作员指定的分区大小小的分区作为变更目的地分区(S102)。
例如,假定将分区P01#0的大小设定为用户数据区域25b的10%,将分区P01#1的大小设定为用户数据区域25b的5%,为了将分区P01#1的大小变更为7%,只要将相当于2%的块从分区P01#0移动到分区P01#1即可。此时,分区P01#0为变更源分区,分区P01#1为变更目的地分区。但是,在变更源分区存在多个的情况下,可以优先选择在该时间段内工作率最低的应用程序使用的分区作为变更源分区。
接下来,CPU21确保从变更源分区移动到变更目的地分区的块,将该块内的脏数据降级(S103),使管理该块内的子段的父子段管理块和子子段管理块出列(S104)。
接下来,CPU21检查变更目的地分区的段长度是否为最小长度(子段长度)(S105)。在变更目的地分区的段长度不是最小长度的情况下(S105:NO),CPU21重新组织父子段管理块80和子子段管理块90的队列管理,以使子子段与父子段连接(S106),通过重复进行与子子段数量对应的次数的该重新组织处理(S107),来使从变更源分区移动到变更目的地分区的块的子段长度与变更目的地分区的子段长度一致。
在子段长度是最小长度的情况下(S105:YES),或者在S106的处理结束了与子子段数量对应的次数的情况下(S107:YES),CPU21重新组织父子段管理块80的队列管理,以使父子段彼此连接(S108),重复该重新组织处理直到所有的分区为指定的大小(S109)。
接下来,CPU21检查高速缓冲存储器25是否被进行了镜像关闭设定(S110),在没有进行镜像关闭设定的情况下(S110:NO),向CPU31发出指示,使其对高速缓冲存储器35的镜像打开区域也同样地进行分区大小的变更(S111)。这样,高速缓冲存储器25、35的镜像关闭区域的分区大小和段长度相同。另一方面,在对高速缓冲存储器25进行了镜像关闭设定的情况下(S110:YES),由于不需要变更高速缓冲存储器35的分区大小等,因此,CPU21向操作员报告已经完成(S112),跳出该过程。
图11表示分区大小手动变更处理过程的流程图。操作员可以通过操作管理终端70,来向存储***10发出变更分区大小的指示。例如,操作员可以监视在管理终端70的显示器上显示的各应用程序的负荷变动,并对各个应用程序分配最佳的分区大小。
在调出分区大小手动变更处理过程时,CPU21从操作员处接收分区大小的变更指示(S201)。这样,CPU21选择分区大小比操作员指定的分区大小大的分区作为变更源分区,选择分区大小比操作员指定的分区大小小的分区作为变更目的地分区(S202)。
接下来,CPU21确保从变更源分区移动到变更目的地分区的块,将该块内的脏数据降级(S203),使管理该块内的子段的父子段管理块和子子段管理块出列(S204)。
接下来,CPU21检查变更目的地分区的段长度是否为最小长度(子段长度)(S205)。在变更目的地分区的段长度不是最小长度的情况下(S205:NO),CPU21重新组织父子段管理块80和子子段管理块90的队列管理,以使子子段与父子段连接(S206),通过重复进行与子子段数量对应的次数的该重新组织处理(S207),来使从变更源分区移动到变更目的地分区的块的子段长度与变更目的地分区的子段长度一致。
在子段长度是最小长度的情况下(S205:YES),或者在S206的处理结束了与子子段数量对应的次数的情况下(S207:YES),CPU21重新组织父子段管理块80的队列管理,以使父子段彼此连接(S208),重复该重新组织处理直到所有的分区为指定的大小(S209)。
接下来,CPU21检查高速缓冲存储器25是否被进行了镜像关闭设定(S210),在没有进行镜像关闭设定的情况下(S210:NO),向CPU31发出指示,使其对高速缓冲存储器35的镜像打开区域也同样地进行分区大小的变更(S211)。另一方面,在对高速缓冲存储器25进行了镜像关闭设定的情况下(S210:YES),由于不需要变更高速缓冲存储器35的分区大小等,因此,CPU21向操作员报告已经完成(S212),跳出该过程。
图12表示段长度变更处理过程的流程图。如上所述,段长度根据应用程序的I/O特性来确定,段长度使用针对各个应用程序默认设定的段长度虽然很方便,但是理想的是能够适当变更段长度以使其能够与应用程序的I/O特性的变动等对应。操作员通过操作管理终端70,可以对存储***10发出变更段长度的指示。
在调出段长度变更处理过程时,CPU21从操作员处接收段长度的变更指示(S301)。段长度变更指示中包括变更对象分区和变更后的段长度。CPU21准备分区大小的变更作业,抑制向与变更对象分区对应的逻辑卷的I/O(S302),使变更对象分区内的脏数据降级(S303)。在降级完成后,CPU21针对变更后的段长度部分使父子段管理块和子子段管理块出列(S304)。
接下来,CPU21检查段长度变更后的段长度是否为最小长度(子段长度)(S305)。在变更后的段长度不是最小长度的情况下(S305:NO),CPU21确保变更后的段长度部分的多个子段(S306)。并且CPU21重新组织父子段管理块80和子子段管理块90的队列管理,以使子子段与父子段连接(S307),通过重复进行与子子段数量对应的次数的该重新组织处理(S308),来调整成指定的段长度。
在子段长度是最小长度的情况下(S305:YES),或者在S307的处理结束了与子子段数量对应的次数的情况下(S08:YES),CPU21重新组织父子段管理块80的队列管理,以使父子段彼此连接(S309),重复该重新组织处理直到变更对象分区整体为指定段长度(S310)。接下来,CPU21解除向与变更对象分区对应的逻辑卷的I/O抑制(S311),并向操作员报告已经完成(S312),跳出该过程。
另外,在变更段长度的情况下,不一定需要将变更对象分区的脏数据全部降级后再变更段长度,例如,也可以:将变更对象分区内的一部分脏数据降级,然后在能够确保某种程度的子段的阶段,解除对逻辑卷的I/O抑制,使对逻辑卷的I/O处理并行,在后台进行段长度的变更处理。
另外,作为其它方法,还可以:在变更对象分区的降级结束之前,在不进行对逻辑卷的I/O抑制的情况下,例如通过采用直写式(write-through),来削减I/O停止时间。这里,所谓直写式是指不向高速缓冲存储器25、35进行写入,而是直接写入盘装置40。
图13是分区/LU分配变更处理过程的流程图。操作员可以通过操作管理终端70,向存储***10发出变更逻辑卷相对分区的分配。
在调出分区/LU分配变更处理过程时,CPU21从操作员处接收逻辑卷相对分区的分配变更指示(S401)。然后,CPU21准备分区/LU分配变更作业,抑制向与变更对象逻辑卷的I/O(S402),将分配给变更对象逻辑卷的高速缓冲存储器25、35上的脏数据降级(S403)。
接下来,CPU21将分配给变更对象逻辑卷的分区变更成为操作员指定的分区(S404)。然后,解除对变更对象逻辑卷的I/O抑制(S405),并向操作员报告已经完成(S406),跳出本过程。
图14至图19分区为进行分区大小的参照或变更、逻辑卷相对分区的分配的参照或变更等时,在管理终端70上显示的画面图像。下面,对这些画面图像加以说明。
图14表示单元画面的显示例。操作员可以通过该单元画面进行各种设定值的参照或者变更等。在单元画面的左侧的子目录结构上中,在“CachePartition”项的下层显示有“分区”项和“逻辑单元”项。操作员在进行分区大小的参照或变更、或者段长度的参照和变时,选择“分区”项。这样,画面图像从图14迁移到图15。另一方面,操作员在参照或者变更逻辑卷相对于分区的分配时,选择“逻辑单元”项,这样,画面图像从图14迁移到图17。
图15表示分区的参照、变更画面。在该画面的右上方,显示有“当前值”,在该画面的右下方,显示有“设定值”。操作员通过点击“变更”按钮,可以变更高速缓冲存储器总容量、高速缓冲存储器空闲容量、各分区的控制器号码、分区大小、段长度等的设定值。当操作员点击“变更”按钮时,画面图像从图15迁移到图16。
图16表示分区变更画面。操作员通过该画面可以变更各分区的名称、控制器号码、分区大小、段长度。另外,通过点击“追加”按钮,可以新追加分区。通过点击“删除”按钮,可以删除分区。关于分区大小或段长度等,当操作员数据新的“设定值”并点击“OK”按钮时(该操作相当于上述的分区大小变更指示(S201)、或者段长度变更指示(S301)。),新的“设定值”即反映在装置中。
图17表示相对逻辑卷的分区分配设定画面。在该画面中显示有当前时刻分区相对逻辑卷的分配状态。在该图所示示例中,对LUN0000分配称作mastor0的分区,对LUN0001分配称作sample的分区。当操作员点击“变更”按钮时,画面图像从图17迁移到图18。
图18表示分区分配变更画面。当操作员点击“分配的变更”按钮时,画面图像从图18迁移到图19。
图19表示分区指定画面。该画面的“逻辑单元号码”中显示有设定对象的逻辑卷。当操作员从“高速缓冲分区(cache patition)”的下拉菜单中选择分配给该逻辑卷的分区并点击“OK”时(该操作相当于上述的分区分配变更指示(S401)。),新的“设定值”反应在装置中。
另外,在上述的说明中,例示了通过由操作员操作管理终端70,来进行高速缓冲存储器25、35的性能调谐(分区划分、设定分区大小、设定段长度、设定是否需要双重写入、设定逻辑卷相对分区的分配或变更逻辑卷相对分区的分配)的结构,但是,如图20所示,也可以采用这样的结构:安装在主装置60中的中间设备62监视应用程序AP#0、AP#1、……、AP#N的I/O特性,根据其I/O特性的变动等对存储***10发出分区划分、设定分区大小、设定段长度、设定是否需要双重写入、设定逻辑卷相对分区的分配或变更逻辑卷相对分区的分配等指示,从而对各个应用程序AP#0、AP#1、……、AP#N进行最佳的高速缓冲存储器25、35的性能调谐。
根据本实施例,通过对多个逻辑卷分别排他性地分配多个分区,来抑制排他性地分配给各应用程序的逻辑卷之间的资源竞争,从而可以进行最佳的高速缓冲存储器的性能调谐。
另外,即使在盘驱动器40的性能不同的情况下,通过对多个逻辑卷分别排他性地分配多个分区,来抑制盘驱动器40的性能不同导致的高速缓冲存储器25、35的资源竞争,并可以进行最佳的高速缓冲存储器的性能调谐。
实施例2
图21表示本实施例的存储***的主要结构。标号与图1所示的标号相同的硬件表示相同的硬件,并省略其详细说明。
在本地存储器23中增加用于保存CPU21的计时器程序的程序区域23b,在该本地存储器23中还设置有用于保存管理用户数据所必需的管理信息(例如数据属性(读出数据/写入数据)、主装置60指定的用户数据的逻辑地址、高速缓冲存储器上的空闲区域信息、与高速缓冲数据的置换有关的优先级的信息等)的管理信息区域23a。另一方面,在高速缓冲存储器25中设有用于暂时保存用户数据(高速缓冲数据)的用户数据保存区域25b,但没有设置用于管理用户数据的管理信息区域。
当从主装置60对存储***进行写入访问时,CPU21参照本地存储器3的管理信息区域23a,检索高速缓冲存储器25的用户数据区域25b上的空闲区域,并将写入数据写入该空闲区域。另外,当从主装置60对存储***10进行读出访问时,CPU21参照本地存储器23的管理信息区域23a,进行高速缓冲命中判定。在如实施例1那样的管理信息区域25a位于高速缓冲存储器25中的情况下,必须经由PCI总线28进行存储器访问,因而难以进行高速访问,但是如本实施例所示,在管理信息区域23a位于本地存储器23中的情况下,可以实现高速访问,可以减少存储器访问的***开销。
另外,也可以在CPU21内部安装本地存储器23,在该本地存储器23内设置管理信息区域23a。
实施例3
图22表示本实施的存储***的主要结构。标号与图1或图22所示的标号相同的硬件表示相同的硬件,并省略其详细说明。
在本地存储器23与高速缓冲存储器25中均设置有保存高速缓冲数据的管理信息的管理信息区域23a、25a,管理信息被进行2元管理。对于从主装置60进行的写入访问或者读出访问,CPU21通过参照本地存储器23的管理信息区域23a,来检索用户数据区域25b中的空闲区域,或者进行高速缓冲命中判定。对于从主装置60进行的写入访问,当CPU21向用户数据区域25b的空闲区域写入写入数据时,更新保存在管理信息区域23a、25a中的双方的管理信息。管理信息的更新可以由CPU21进行,或者也可以按照CPU21的指示由数据传送控制部24进行。
图23表示电源故障时的恢复处理过程的流程图。在存储***10产生土法的电源故障的情况下,保存在易失性本地存储器23中的管理信息丢失,但是,具有备用电源的高速缓冲存储器25的管理信息却被保存而不会丢失。因此理想的是,在故障恢复时,通过再次闭合电源,将高速缓冲存储器25上的管理信息复制到本地存储器23中,以进行丢失了的管理信息的复原。在进行该复原处理的期间,存储***10只进行暂时停止来自主装置60的I/O处理,或者I/O接收排列,也可以通过停止I/O执行或者参照管理信息区域25a来进行从主装置60的I/O处理。
在电源故障时的恢复处理过程中,当闭合电源时(S501),CPU21检查上一次的***停止是否为电源故障而引起的(S502)。在因为电源故障而停止的情况下(S502:YES),CPU21检查高速缓冲存储器25是否为非易失性存储器(S503)。在高速缓冲存储器25因具有备用电源等理由而构成非易失性存储器的情况下(S503:YES),将高速缓冲存储器25上的管理信息复制到本地存储器23中(S504)。
另一方面,在上一次的***停止不是因电源故障导致、并且管理信息没有丢失的情况下(S502:NO),由于没有***运用上的问题,因此,和通常一样地进行高速缓冲存储器25的初始化(S505)。在高速缓冲存储器25是易失性存储器、并且管理信息丢失了的情况下(S503:NO),由于不能进行管理信息的复原,因此,即使在该情况下,也要和通常一样地进行高速缓冲存储器25的初始化(S505)。并且,CPU21进行从主装置60的I/O处理准备(S506),然后开始I/O处理。
根据本实施例,从可高速访问的本地存储器23获得高速缓冲数据的管理信息,降低存储器访问的***开销,并且,对于电源故障时的管理信息的丢失,由于是以保持在非易失性高速缓冲存储器25中的管理信息为基础,来复原本地存储器23中的管理信息,因此可以提高***的耐故障性。
Claims (20)
1.一种存储***,包括:
存储设备,其提供可从多个应用程序访问的多个逻辑卷;
多个控制器,其响应来自上述多个应用程序的输入输出请求,并对向上述逻辑卷的数据输入和从上述逻辑卷的输出进行控制;
多个高速缓冲存储器,其暂时保存在上述逻辑卷输入输出的数据,
上述多个高速缓冲存储器中的第一高速缓冲存储器被划分为分别排他性地分配给上述多个逻辑卷的多个第一分区,包含在上述多个第一分区中的一部分分区设定为向上述多个高速缓冲存储器中的第二高速缓冲存储器执行拷贝,其容量根据向分配的逻辑卷发送数据的应用程序的I/O的性能决定;
上述第二高速缓冲存储器被逻辑划分为多个第二分区,包含在上述多个第二分区中的一部分分区设定为从上述第一高速缓冲存储器拷贝数据,包含在上述多个第二分区中的一部分分区的容量与上述第一高速缓冲存储器内的上述一部分分区的容量相对应地决定;
包含在上述第二高速缓冲存储器内的上述多个第二分区中的另一部分分区设定为多个高速缓冲存储器间不执行拷贝,上述另一部分分区的容量根据向分配给每个上述另一部分分区的逻辑卷发送数据的应用程序的I/O的性能决定。
2.根据权利要求1所述的存储***,其特征在于,
上述多个应用程序被分别排他性地分配给上述多个逻辑卷。
3.根据权利要求1所述的存储***,其特征在于,
上述多个分区彼此独立,并且高速缓冲存储器的段长度可以调整。
4.根据权利要求3所述的存储***,其特征在于,
上述控制器通过使子段之间彼此逻辑相关来构成上述段,上述子段为上述高速缓冲存储器的段的构成单位,通过调整构成上述段的子段的个数,来对每个上述分区独立地调整上述段长度。
5.根据权利要求3所述的存储***,其特征在于,
上述控制器抑制对与进行上述段长度调整的分区对应的逻辑卷的数据输入输出,在将保存在上述分区中的脏数据降级到上述存储设备中后,对每个上述分区独立地调整上述段长度。
6.根据权利要求3所述的存储***,其特征在于,
在进行上述段长度调整的分区中保存的脏数据降级到上述存储设备的过程中,上述控制器以直写式响应来自上述应用程序的输入输出请求,并且在上述降级完成后,对每个上述分区独立地调整上述段长度。
7.根据权利要求3所述的存储***,其特征在于,
还具有管理上述存储***的管理终端,
上述控制器响应来自上述管理终端的指示,并对每个分区独立地调整上述段长度。
8.根据权利要求1所述的存储***,其特征在于,
上述多个分区各自独立,并且分区大小可以调整。
9.根据权利要求8所述的存储***,其特征在于,
上述控制器通过使上述高速缓冲存储器的块之间彼此逻辑相关,来调整上述分区大小。
10.根据权利要求8所述的存储***,其特征在于,
上述控制器抑制对与进行上述分区大小调整的分区对应的逻辑卷的数据输入输出,在进行上述分区大小调整的分区中,将保存在使用于变更分区大小的块内的脏数据降级到上述存储设备后,通过在调整分区大小的多个分区之间移动上述块,来对每个上述分区独立地调整上述分区大小。
11.根据权利要求8所述的存储***,其特征在于,
在进行上述分区大小调整的分区中,在将使用于变更分区大小的块内保存的脏数据降级到上述存储设备的过程中,上述控制器以直写式响应来自上述应用程序的输入输出请求,并在保存在上述块内的脏数据完成降级后,通过在调整分区大小的多个分区之间移动上述块,来对每个上述分区独立地调整上述分区大小。
12.根据权利要求8所述的存储***,其特征在于,
还具有管理上述存储***的管理终端,
上述控制器响应来自上述管理终端的指示,对每个分区独立地调整上述分区大小。
13.根据权利要求8所述的存储***,其特征在于,
还具有计测当前时刻的计时器,
在到了计时器预先设定的时刻时,上述控制器对每个分区独立地调整上述分区大小,以使上述分区大小为预先设定的分区大小。
14.根据权利要求1所述的存储***,其特征在于,
还具有多个上述高速缓冲存储器,
上述多个分区各自独立,并且可以自由设定是否需要向上述多个高速缓冲存储器的双重写入。
15.根据权利要求14所述的存储***,其特征在于,
还具有管理上述存储***的管理终端,
上述控制器响应来自上述管理终端的指示,并对每个上述分区独立地调整是否需要双重写入。
16.根据权利要求1所述的存储***,还包括:
本地存储器,其构成为能够进行比高速缓冲存储器更高速的访问,并且用于保存高速缓冲数据的管理信息;
其中每个控制器参考存储在所述本地存储器中的所述管理信息来管理高速缓冲数据。
17.根据权利要求16所述的存储***,其特征在于,
在上述高速缓冲存储器中保存有与存储在上述本地存储器中的管理信息相同的管理信息,
上述控制器包括CPU,上述CPU对保存在上述高速缓冲存储器和上述本地存储器两者中的管理信息进行更新。
18.根据权利要求17所述的存储***,其特征在于,
上述高速缓冲存储器为非易失性存储器。
19.根据权利要求18所述的存储***,其特征在于,
在由于电源故障而导致上述本地存储器的管理信息丢失的情况下,上述CPU通过将保存在上述高速缓冲存储器中的管理信息复制到上述本地存储器中,来对丢失了的管理数据进行复原。
20.根据权利要求16所述的存储***,其特征在于,
上述高速缓冲数据的管理信息是用于队列管理父子段管理块和子子段管理块的信息,上述父子段管理块和上述子子段管理块分别管理父子段和子子段,上述父子段和上述子子段是上述高速缓冲存储器的段的构成单位,
上述父子段管理块包括:父子段地址,其指示上述父子段在上述高速缓冲存储器中的位置;顺方向指针,其按照最早访问的顺序指示父子段管理块;逆方向指针,其按照最新访问的顺序指示父子段管理块;子子段指针,其指示子子段管理块,
上述子子段管理块包括:子子段地址,其指示上述子子段在上述高速缓冲存储器中的位置;顺方向指针,其按照最早访问的顺序指示子子段管理块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005037347 | 2005-02-15 | ||
JP2005037347A JP4819369B2 (ja) | 2005-02-15 | 2005-02-15 | ストレージシステム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810173106.6A Division CN101393536B (zh) | 2005-02-15 | 2005-12-22 | 存储*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1821979A CN1821979A (zh) | 2006-08-23 |
CN100442250C true CN100442250C (zh) | 2008-12-10 |
Family
ID=35852175
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810173106.6A Active CN101393536B (zh) | 2005-02-15 | 2005-12-22 | 存储*** |
CNB2005101322376A Expired - Fee Related CN100442250C (zh) | 2005-02-15 | 2005-12-22 | 存储*** |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810173106.6A Active CN101393536B (zh) | 2005-02-15 | 2005-12-22 | 存储*** |
Country Status (5)
Country | Link |
---|---|
US (3) | US7447843B2 (zh) |
EP (2) | EP1965304B1 (zh) |
JP (1) | JP4819369B2 (zh) |
CN (2) | CN101393536B (zh) |
DE (1) | DE602005018560D1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103999062A (zh) * | 2011-10-26 | 2014-08-20 | 惠普发展公司,有限责任合伙企业 | 经分段的高速缓存 |
Families Citing this family (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6056410A (en) | 1997-04-02 | 2000-05-02 | Donnelly Corporation | Digital electrochromic mirror system |
US7895398B2 (en) * | 2005-07-19 | 2011-02-22 | Dell Products L.P. | System and method for dynamically adjusting the caching characteristics for each logical unit of a storage array |
US7904747B2 (en) * | 2006-01-17 | 2011-03-08 | International Business Machines Corporation | Restoring data to a distributed storage node |
US7949824B2 (en) * | 2006-04-11 | 2011-05-24 | Emc Corporation | Efficient data storage using two level delta resemblance |
US7844652B2 (en) * | 2006-04-11 | 2010-11-30 | Emc Corporation | Efficient computation of sketches |
US7600073B2 (en) * | 2006-09-26 | 2009-10-06 | International Business Machines Corporation | Cache disk storage upgrade |
JP4933211B2 (ja) * | 2006-10-10 | 2012-05-16 | 株式会社日立製作所 | ストレージ装置、制御装置及び制御方法 |
US7925809B2 (en) * | 2006-10-24 | 2011-04-12 | Apple Inc. | Systems and methods for storage management in a data processing device |
JP2008181243A (ja) * | 2007-01-23 | 2008-08-07 | Hitachi Ltd | ストレージシステムのキャッシュパーティション領域の設定を制御するデータベース管理システム |
US8665482B2 (en) * | 2007-03-01 | 2014-03-04 | Konica Minolta Laboratory U.S.A., Inc. | Raster image processor using a self-tuning banding mode |
US7698531B2 (en) * | 2007-03-28 | 2010-04-13 | International Business Machines Corporation | Workload management in virtualized data processing environment |
US7617375B2 (en) * | 2007-03-28 | 2009-11-10 | International Business Machines Corporation | Workload management in virtualized data processing environment |
US7698530B2 (en) * | 2007-03-28 | 2010-04-13 | International Business Machines Corporation | Workload management in virtualized data processing environment |
JP5094193B2 (ja) | 2007-04-16 | 2012-12-12 | 株式会社日立製作所 | 記憶システム及びその制御方法 |
JP2009026255A (ja) * | 2007-07-24 | 2009-02-05 | Hitachi Ltd | データ移行方法、データ移行システム、及びデータ移行プログラム |
US7949850B2 (en) * | 2007-12-28 | 2011-05-24 | Intel Corporation | Methods and appratus for demand-based memory mirroring |
US8090767B2 (en) * | 2008-01-07 | 2012-01-03 | Apple Inc. | Pairing and storage access scheme between a handheld device and a computing system |
JP5410025B2 (ja) * | 2008-03-07 | 2014-02-05 | 株式会社日立製作所 | ストレージシステム及びその管理方法 |
US8214596B2 (en) * | 2008-09-30 | 2012-07-03 | Intel Corporation | Apparatus and method for segmented cache utilization |
US8239640B2 (en) * | 2008-10-09 | 2012-08-07 | Dataram, Inc. | System for controlling performance aspects of a data storage and access routine |
CN101727293B (zh) * | 2008-10-23 | 2012-05-23 | 成都市华为赛门铁克科技有限公司 | 一种固态硬盘ssd存储的设置方法、装置和*** |
US20100235597A1 (en) * | 2009-03-10 | 2010-09-16 | Hiroshi Arakawa | Method and apparatus for conversion between conventional volumes and thin provisioning with automated tier management |
TWI371686B (en) * | 2009-04-02 | 2012-09-01 | Lsi Corp | System and method to reduce drive overhead using a mirrored cache volume in a storage array |
US8074038B2 (en) | 2009-05-12 | 2011-12-06 | Microsoft Corporation | Converting luns into files or files into luns in real time |
US8533417B2 (en) * | 2009-06-03 | 2013-09-10 | Hitachi, Ltd. | Method and apparatus for controlling data volume creation in data storage system with dynamic chunk allocation capability |
JP5413001B2 (ja) * | 2009-07-09 | 2014-02-12 | 富士通株式会社 | キャッシュメモリ |
JP5404798B2 (ja) | 2009-09-21 | 2014-02-05 | 株式会社東芝 | 仮想記憶管理装置及び記憶管理装置 |
US8327069B2 (en) * | 2009-12-08 | 2012-12-04 | Hitachi, Ltd. | Storage system and storage control apparatus provided with cache memory group including volatile memory and nonvolatile memory |
US8972690B2 (en) * | 2010-01-05 | 2015-03-03 | Deric Horn | Methods and apparatuses for usage based allocation block size tuning |
US8214689B2 (en) * | 2010-02-19 | 2012-07-03 | Hitachi, Ltd. | Disk array device and its control method |
US8402220B2 (en) | 2010-03-18 | 2013-03-19 | Hitachi, Ltd. | Storage controller coupled to storage apparatus |
WO2011114384A1 (en) | 2010-03-19 | 2011-09-22 | Hitachi, Ltd. | Storage system and method for changing configuration of cache memory for storage system |
WO2011141956A1 (en) * | 2010-05-11 | 2011-11-17 | Hitachi, Ltd. | Storage device and method of controlling storage device |
JP5641300B2 (ja) * | 2010-07-14 | 2014-12-17 | 日本電気株式会社 | ストレージシステム及びストレージシステムのメモリキャッシュ領域制御方法 |
US8850114B2 (en) | 2010-09-07 | 2014-09-30 | Daniel L Rosenband | Storage array controller for flash-based storage devices |
WO2012039062A1 (ja) * | 2010-09-24 | 2012-03-29 | 株式会社日立製作所 | ストレージ装置における複数の記憶デバイスを複数の階層に振り分ける方法及びシステム |
US10338947B2 (en) * | 2011-03-15 | 2019-07-02 | Microsoft Technology Licensing, Llc | Extent virtualization |
JP2012208896A (ja) * | 2011-03-30 | 2012-10-25 | Nec Corp | ディスクアレイ装置、接続経路制御方法、及び接続経路制御プログラム |
CN102508619B (zh) * | 2011-11-21 | 2014-09-17 | 华为数字技术(成都)有限公司 | 存储***服务质量控制方法、***和存储*** |
US9021214B2 (en) | 2011-12-14 | 2015-04-28 | Hitachi, Ltd. | Storage system and method for controlling memory in storage system |
CN103309818B (zh) * | 2012-03-09 | 2015-07-29 | 腾讯科技(深圳)有限公司 | 存储数据的方法及装置 |
JP5678923B2 (ja) * | 2012-06-20 | 2015-03-04 | 日本電気株式会社 | ストレージシステム、入出力制御装置、入出力制御方法、および、コンピュータ・プログラム |
US10037279B1 (en) * | 2012-06-20 | 2018-07-31 | EMC IP Holding Company LLC | Host device caching of a business process data |
US9086957B2 (en) | 2012-08-02 | 2015-07-21 | International Business Machines Corporation | Requesting a memory space by a memory controller |
US20140058717A1 (en) * | 2012-08-24 | 2014-02-27 | Hitachi, Ltd. | Simulation system for simulating i/o performance of volume and simulation method |
US9495287B2 (en) * | 2012-09-26 | 2016-11-15 | International Business Machines Corporation | Solid state memory device logical and physical partitioning |
US9098417B2 (en) * | 2012-12-13 | 2015-08-04 | Advanced Micro Devices, Inc. | Partitioning caches for sub-entities in computing devices |
US9727247B2 (en) | 2013-03-15 | 2017-08-08 | Nec Corporation | Storage device and method, and storage medium |
US10229043B2 (en) | 2013-07-23 | 2019-03-12 | Intel Business Machines Corporation | Requesting memory spaces and resources using a memory controller |
WO2015015727A1 (ja) * | 2013-07-30 | 2015-02-05 | 日本電気株式会社 | ストレージ装置、データアクセス方法およびプログラム記録媒体 |
US9558124B2 (en) * | 2013-11-08 | 2017-01-31 | Seagate Technology Llc | Data storage system with passive partitioning in a secondary memory |
KR20150071500A (ko) * | 2013-12-18 | 2015-06-26 | 삼성전자주식회사 | 데이터 관리 방법 및 장치 |
JP2015204126A (ja) | 2014-04-16 | 2015-11-16 | 株式会社東芝 | 半導体記憶装置 |
US9710381B2 (en) | 2014-06-18 | 2017-07-18 | International Business Machines Corporation | Method and apparatus for cache memory data processing |
JP6327994B2 (ja) * | 2014-07-28 | 2018-05-23 | ルネサスエレクトロニクス株式会社 | 制御システムおよび半導体装置 |
US9594628B2 (en) * | 2014-07-30 | 2017-03-14 | Segate Technology Llc | Operational vibration compensation through media cache management |
WO2016068830A1 (en) * | 2014-10-27 | 2016-05-06 | Hitachi, Ltd. | Method and apparatus to configure information technology infrastructure |
US9495107B2 (en) * | 2014-11-19 | 2016-11-15 | International Business Machines Corporation | Dynamic relocation of storage |
TWI576703B (zh) * | 2015-03-27 | 2017-04-01 | 宏碁股份有限公司 | 電子裝置及其資料暫存方法 |
US10216594B2 (en) * | 2015-04-30 | 2019-02-26 | International Business Machines Corporation | Automated stalled process detection and recovery |
US10048878B2 (en) | 2015-06-08 | 2018-08-14 | Samsung Electronics Co., Ltd. | Nonvolatile memory module and storage system having the same |
US20170031601A1 (en) * | 2015-07-30 | 2017-02-02 | Kabushiki Kaisha Toshiba | Memory system and storage system |
US10387314B2 (en) * | 2015-08-25 | 2019-08-20 | Oracle International Corporation | Reducing cache coherence directory bandwidth by aggregating victimization requests |
US20170083441A1 (en) * | 2015-09-23 | 2017-03-23 | Qualcomm Incorporated | Region-based cache management |
US9798472B1 (en) * | 2015-09-29 | 2017-10-24 | Emc Corporation | Extent level cache destaging |
US10235288B2 (en) * | 2015-10-02 | 2019-03-19 | Netapp, Inc. | Cache flushing and interrupted write handling in storage systems |
US20170161193A1 (en) * | 2015-12-02 | 2017-06-08 | International Business Machines Corporation | Hybrid cache |
CN109635597B (zh) * | 2018-11-12 | 2023-03-31 | 博流智能科技(南京)有限公司 | 芯片级安全存储与存取***及方法 |
JP6898393B2 (ja) * | 2019-03-22 | 2021-07-07 | 株式会社日立製作所 | ストレージシステム及びデータ転送方法 |
US11531622B2 (en) | 2019-09-20 | 2022-12-20 | Micron Technology, Inc. | Managing data dependencies for out of order processing in a hybrid DIMM |
US11397683B2 (en) * | 2019-09-20 | 2022-07-26 | Micron Technology, Inc. | Low latency cache for non-volatile memory in a hybrid DIMM |
US11494306B2 (en) | 2019-09-20 | 2022-11-08 | Micron Technology, Inc. | Managing data dependencies in a transfer pipeline of a hybrid dimm |
JP7179794B2 (ja) | 2020-03-03 | 2022-11-29 | 株式会社東芝 | 磁気ディスク装置、および磁気ディスク装置のメモリ管理方法 |
US11188252B2 (en) * | 2020-03-13 | 2021-11-30 | Seagate Technology Llc | Data storage system with adaptive cache management |
CN115917507A (zh) * | 2020-06-05 | 2023-04-04 | 美光科技公司 | 对应用程序的存储器性能目标的修整 |
CN111984197B (zh) * | 2020-08-24 | 2023-12-15 | 许昌学院 | 计算机缓存分配方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717893A (en) * | 1989-03-22 | 1998-02-10 | International Business Machines Corporation | Method for managing a cache hierarchy having a least recently used (LRU) global cache and a plurality of LRU destaging local caches containing counterpart datatype partitions |
US6151660A (en) * | 1996-08-23 | 2000-11-21 | Olympus Optical Co., Ltd. | Information recording/reproducing apparatus having segmented cache memory |
WO2001088720A2 (en) * | 2000-05-15 | 2001-11-22 | Superspeed Software, Inc. | System and method for high-speed substitute cache |
US6347358B1 (en) * | 1998-12-22 | 2002-02-12 | Nec Corporation | Disk control unit and disk control method |
US6591335B1 (en) * | 2000-09-29 | 2003-07-08 | Emc Corporation | Fault tolerant dual cache system |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4425615A (en) * | 1980-11-14 | 1984-01-10 | Sperry Corporation | Hierarchical memory system having cache/disk subsystem with command queues for plural disks |
US4503501A (en) | 1981-11-27 | 1985-03-05 | Storage Technology Corporation | Adaptive domain partitioning of cache memory space |
JPH01196074A (ja) | 1988-01-30 | 1989-08-07 | Konica Corp | 画像形成装置 |
GB2256735B (en) * | 1991-06-12 | 1995-06-21 | Intel Corp | Non-volatile disk cache |
JP2995926B2 (ja) * | 1991-06-18 | 1999-12-27 | カシオ計算機株式会社 | 情報再生方法 |
JP3160106B2 (ja) * | 1991-12-23 | 2001-04-23 | ヒュンダイ エレクトロニクス アメリカ | ディスクアレーの区分け方法 |
JPH06110741A (ja) * | 1992-09-25 | 1994-04-22 | Omron Corp | コンピュータ装置 |
US5437022A (en) * | 1992-12-17 | 1995-07-25 | International Business Machines Corporation | Storage controller having additional cache memory and a means for recovering from failure and reconfiguring a control unit thereof in response thereto |
JP3080521B2 (ja) * | 1993-10-01 | 2000-08-28 | アルプス電気株式会社 | ディスク装置 |
DE19540915A1 (de) * | 1994-11-10 | 1996-05-15 | Raymond Engineering | Redundante Anordnung von Festkörper-Speicherbausteinen |
US5574855A (en) * | 1995-05-15 | 1996-11-12 | Emc Corporation | Method and apparatus for testing raid systems |
JP3772369B2 (ja) * | 1995-11-20 | 2006-05-10 | 株式会社日立製作所 | 記憶サブシステム |
JPH09215026A (ja) * | 1996-02-07 | 1997-08-15 | Kokusai Electric Co Ltd | 無線選択呼出受信機及びその制御方法 |
US5805788A (en) * | 1996-05-20 | 1998-09-08 | Cray Research, Inc. | Raid-5 parity generation and data reconstruction |
JPH10301847A (ja) * | 1997-04-30 | 1998-11-13 | Nec Corp | データ記憶装置 |
US5966729A (en) * | 1997-06-30 | 1999-10-12 | Sun Microsystems, Inc. | Snoop filter for use in multiprocessor computer systems |
US6223256B1 (en) | 1997-07-22 | 2001-04-24 | Hewlett-Packard Company | Computer cache memory with classes and dynamic selection of replacement algorithms |
EP1061449A4 (en) | 1998-02-04 | 2005-12-21 | Hitachi Ltd | METHOD OF MANAGING ANEMATORY DISK, DISC STRUCTURE AND MEMORY |
JP4272275B2 (ja) * | 1998-04-28 | 2009-06-03 | 株式会社日立製作所 | 記憶サブシステム |
JP2000089916A (ja) | 1998-09-11 | 2000-03-31 | Fujitsu Ltd | ファイル制御装置 |
JP2000216969A (ja) * | 1999-01-27 | 2000-08-04 | Minolta Co Ltd | メモリ管理装置 |
US6463573B1 (en) * | 1999-06-03 | 2002-10-08 | International Business Machines Corporation | Data processor storage systems with dynamic resynchronization of mirrored logical data volumes subsequent to a storage system failure |
US20020078300A1 (en) * | 1999-08-16 | 2002-06-20 | Chanda Dharap | Semantics-based caching policy to minimize latency |
JP2001101076A (ja) * | 1999-10-04 | 2001-04-13 | Alps Electric Co Ltd | ディスク制御装置 |
JP2001166993A (ja) | 1999-12-13 | 2001-06-22 | Hitachi Ltd | 記憶制御装置およびキャッシュメモリの制御方法 |
US6546462B1 (en) * | 1999-12-30 | 2003-04-08 | Intel Corporation | CLFLUSH micro-architectural implementation method and system |
JP2002251322A (ja) * | 2001-02-22 | 2002-09-06 | Hitachi Ltd | 記憶装置制御システム |
US6718434B2 (en) * | 2001-05-31 | 2004-04-06 | Hewlett-Packard Development Company, L.P. | Method and apparatus for assigning raid levels |
US6966033B1 (en) * | 2001-09-28 | 2005-11-15 | Emc Corporation | Methods and apparatus for graphically managing resources |
JP2003131818A (ja) * | 2001-10-25 | 2003-05-09 | Hitachi Ltd | クラスタ構成ストレージにおけるクラスタ間raid構成 |
JP4162184B2 (ja) * | 2001-11-14 | 2008-10-08 | 株式会社日立製作所 | データベース管理システムの実行情報を取得する手段を有する記憶装置 |
JP2003162377A (ja) * | 2001-11-28 | 2003-06-06 | Hitachi Ltd | ディスクアレイシステム及びコントローラ間での論理ユニットの引き継ぎ方法 |
JP2003316713A (ja) * | 2002-04-26 | 2003-11-07 | Hitachi Ltd | 記憶装置システム |
JP3806077B2 (ja) | 2002-08-26 | 2006-08-09 | 株式会社東芝 | メモリカード認識システム、容量切り替え型メモリカード・ホスト機器、容量切り替え型メモリカード、記憶容量設定方法及び記憶容量設定プログラム |
KR20100072068A (ko) * | 2002-10-31 | 2010-06-29 | 링 테크노로지 엔터프라이즈, 엘엘씨 | 스토리지 시스템에 관한 방법 및 시스템 |
US20040162926A1 (en) * | 2003-02-14 | 2004-08-19 | Itzhak Levy | Serial advanced technology attachment interface |
JP4313068B2 (ja) | 2003-03-28 | 2009-08-12 | 株式会社日立製作所 | 記憶装置のキャッシュ管理方法 |
US7058764B2 (en) * | 2003-04-14 | 2006-06-06 | Hewlett-Packard Development Company, L.P. | Method of adaptive cache partitioning to increase host I/O performance |
JP2005037347A (ja) | 2003-07-02 | 2005-02-10 | Toyota Motor Corp | 精度確認ガス供給装置及びそれを用いた測定精度確認システム、ならびに測定精度確認方法 |
JP4257783B2 (ja) * | 2003-10-23 | 2009-04-22 | 株式会社日立製作所 | 論理分割可能な記憶装置及び記憶装置システム |
US20050160249A1 (en) * | 2004-01-21 | 2005-07-21 | Hewlett-Packard Development Company, L.P. | Volume type determination for disk volumes managed by a LDM |
JP4429780B2 (ja) * | 2004-03-31 | 2010-03-10 | 富士通株式会社 | 記憶制御装置、制御方法、および制御プログラム。 |
JP4370571B2 (ja) | 2004-06-15 | 2009-11-25 | 信越半導体株式会社 | アニールウエーハの評価方法及び品質保証方法 |
US7949849B2 (en) * | 2004-08-24 | 2011-05-24 | Mcafee, Inc. | File system for a capture system |
US7302522B2 (en) * | 2004-12-27 | 2007-11-27 | Lsi Corporation | Optimizing I/O performance in a RAID subsystem using an adaptive maximum request size for a logical drive |
US7512736B1 (en) * | 2005-05-02 | 2009-03-31 | Nvidia Corporation | System and method for adaptive raid configuration |
US7895398B2 (en) * | 2005-07-19 | 2011-02-22 | Dell Products L.P. | System and method for dynamically adjusting the caching characteristics for each logical unit of a storage array |
US7363451B2 (en) * | 2005-10-11 | 2008-04-22 | Lsi Logic Corporation | Load balancing of disk drives |
US7774545B2 (en) * | 2006-12-01 | 2010-08-10 | Lsi Corporation | System and method of volume group creation based on an automatic drive selection scheme |
US8271757B1 (en) * | 2007-04-17 | 2012-09-18 | American Megatrends, Inc. | Container space management in a data storage system |
JP4920658B2 (ja) * | 2008-10-20 | 2012-04-18 | 株式会社日立製作所 | 電力推定方法及び計算機システム |
-
2005
- 2005-02-15 JP JP2005037347A patent/JP4819369B2/ja not_active Expired - Fee Related
- 2005-04-21 US US11/110,883 patent/US7447843B2/en not_active Expired - Fee Related
- 2005-09-26 DE DE602005018560T patent/DE602005018560D1/de active Active
- 2005-09-26 EP EP08008293A patent/EP1965304B1/en not_active Expired - Fee Related
- 2005-09-26 EP EP05255955A patent/EP1691293A1/en not_active Withdrawn
- 2005-12-22 CN CN200810173106.6A patent/CN101393536B/zh active Active
- 2005-12-22 CN CNB2005101322376A patent/CN100442250C/zh not_active Expired - Fee Related
-
2007
- 2007-10-26 US US11/976,645 patent/US8612716B2/en active Active
-
2013
- 2013-12-06 US US14/098,666 patent/US8832380B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717893A (en) * | 1989-03-22 | 1998-02-10 | International Business Machines Corporation | Method for managing a cache hierarchy having a least recently used (LRU) global cache and a plurality of LRU destaging local caches containing counterpart datatype partitions |
US6151660A (en) * | 1996-08-23 | 2000-11-21 | Olympus Optical Co., Ltd. | Information recording/reproducing apparatus having segmented cache memory |
US6347358B1 (en) * | 1998-12-22 | 2002-02-12 | Nec Corporation | Disk control unit and disk control method |
WO2001088720A2 (en) * | 2000-05-15 | 2001-11-22 | Superspeed Software, Inc. | System and method for high-speed substitute cache |
US6591335B1 (en) * | 2000-09-29 | 2003-07-08 | Emc Corporation | Fault tolerant dual cache system |
Non-Patent Citations (2)
Title |
---|
Improving Disk Cache Hit-Ratios Through Cache Partitioning. Dominique Thiebaut,Harold S.Stone,Joel L.Wolf.IEEE Transactions on Computer,Vol.41 No.6. 1992 |
Improving Disk Cache Hit-Ratios Through Cache Partitioning. Dominique Thiebaut,Harold S.Stone,Joel L.Wolf.IEEE Transactions on Computer,Vol.41 No.6. 1992 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103999062A (zh) * | 2011-10-26 | 2014-08-20 | 惠普发展公司,有限责任合伙企业 | 经分段的高速缓存 |
TWI574203B (zh) * | 2011-10-26 | 2017-03-11 | 惠普發展公司有限責任合夥企業 | 用以分割快取記憶體的方法及相關儲存媒體與裝置 |
US9697115B2 (en) | 2011-10-26 | 2017-07-04 | Hewlett-Packard Development Company, L.P. | Segmented caches |
Also Published As
Publication number | Publication date |
---|---|
US8612716B2 (en) | 2013-12-17 |
US7447843B2 (en) | 2008-11-04 |
US8832380B2 (en) | 2014-09-09 |
US20080244183A1 (en) | 2008-10-02 |
JP4819369B2 (ja) | 2011-11-24 |
CN101393536B (zh) | 2013-02-06 |
CN1821979A (zh) | 2006-08-23 |
US20060184740A1 (en) | 2006-08-17 |
US20140095793A1 (en) | 2014-04-03 |
EP1691293A1 (en) | 2006-08-16 |
EP1965304A1 (en) | 2008-09-03 |
EP1965304B1 (en) | 2009-12-23 |
JP2006227688A (ja) | 2006-08-31 |
CN101393536A (zh) | 2009-03-25 |
DE602005018560D1 (de) | 2010-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100442250C (zh) | 存储*** | |
US9836243B1 (en) | Cache management techniques | |
JP5427630B2 (ja) | 動的ページ再割当てストレージシステムにおけるアプリケーション及び階層構成の管理 | |
CN101131675B (zh) | 预防存储控制器的分区高速缓存中写饥饿的装置和方法 | |
US7822928B2 (en) | Storage device and storage device data life cycle control method | |
US6779058B2 (en) | Method, system, and program for transferring data between storage devices | |
US8364858B1 (en) | Normalizing capacity utilization within virtual storage pools | |
US7249218B2 (en) | Method, system, and program for managing an out of available space condition | |
US20040103254A1 (en) | Storage apparatus system and data reproduction method | |
US9323682B1 (en) | Non-intrusive automated storage tiering using information of front end storage activities | |
US7437515B1 (en) | Data structure for write pending | |
JP2005242690A (ja) | ストレージサブシステムおよび性能チューニング方法 | |
CN102207830A (zh) | 一种缓存动态分配管理方法及装置 | |
US7930482B2 (en) | Storage system and method for controlling cache residency setting in the storage system | |
JP5000234B2 (ja) | 制御装置 | |
US7493443B2 (en) | Storage system utilizing improved management of control information | |
JP5594942B2 (ja) | 好適なゾーン・スケジューリング | |
US10552342B1 (en) | Application level coordination for automated multi-tiering system in a federated environment | |
CN114840148B (zh) | 在Kubernetes中基于linux内核bcache技术实现磁盘加速的方法 | |
EP1486862A2 (en) | Storage system and data reproduction method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081210 Termination date: 20161222 |
|
CF01 | Termination of patent right due to non-payment of annual fee |