CN100562842C - 存储*** - Google Patents
存储*** Download PDFInfo
- Publication number
- CN100562842C CN100562842C CNB2007101077547A CN200710107754A CN100562842C CN 100562842 C CN100562842 C CN 100562842C CN B2007101077547 A CNB2007101077547 A CN B2007101077547A CN 200710107754 A CN200710107754 A CN 200710107754A CN 100562842 C CN100562842 C CN 100562842C
- Authority
- CN
- China
- Prior art keywords
- data
- decision
- request
- cache memory
- write
- 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.)
- Active
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/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
-
- 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/0813—Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供一种存储***,包括:包括到硬盘单元的接口,并把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议的协议转换单元;多个信道控制单元,每一都包括多个接口,存储读取自/写入到硬盘单元的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,其中协议转换单元和信道控制单元通过互连互相连接,在接收数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析以确定多个逻辑单元中哪一个中记录了相应于写入数据的数据,且决定管理记录了相应于写入数据的数据的逻辑单元的信道控制单元的微处理器和相应的高速缓冲存储器,并发出数据写入请求到微处理器。
Description
本申请为2004年12月29日提交的、申请号为200410104117.0、发明名称为“存储***”的分案申请。
技术领域
本发明涉及一可从小规模配置扩大到大规模配置的存储***。
背景技术
由于商业中IT***的渗透和因特网的发展所产生的商业中IT***的合作的扩展,存储IT***中存储数据的存储***已在IT***中扮演重要角色。从小规模配置***到大规模配置***的范围有很多存储***的类型。
作为提供有小规模到大规模配置的主存储***的示例,在现有技术中,如图36所示的存储***结构在JP2000-99281A中揭露。存储***8和执行与计算机3(下面也叫做“服务器”)数据传输的多个信道IF单元11,执行与硬盘2数据传输的多个磁盘IF单元16,暂时存储硬盘2存储的数据的高速缓冲存储器单元14,和存储与存储***相关的控制信息的控制存储器单元15(例如,在存储***8中与数据传输控制相关的信息和存储在硬盘2中的数据的管理信息)一起放置。信道IF单元11,磁盘IF单元16,和高速缓冲存储器单元14通过互连41而连接,而且信道IF单元11,磁盘IF单元16,和控制存储器单元15通过互连42连接。同样,互连41和互连42由通用总线和交换机配置。
以这种方式,在单个存储***8中,高速缓冲存储器单元14和控制存储器单元15拥有可从所有信道IF单元11和磁盘IF单元16访问的配置。
信道IF单元包含用于连接到服务器3的一接口(主IF)104,控制服务器3的输入/输出的微处理器103,控制高速缓冲存储器单元14的访问的存储器访问单元106,和控制高速缓冲存储器单元15的访问的存储器访问单元107。同样,磁盘IF单元包含用于连接到硬盘2的一接口(磁盘IF)105,控制硬盘2的输入/输出的微处理器103,控制高速缓冲存储器单元14的访问的存储器访问单元106,和控制高速缓冲存储器单元15的访问的存储器访问单元107。磁盘IF单元也执行RAID控制。
在上述的存储***中,已可灵活改变的信道IF单元11和磁盘IF单元16的数目,因为控制与服务器3数据传输的信道IF单元11和控制与硬盘2的数据传输的磁盘IF单元16分隔开了,而且在信道IF单元11和磁盘IF单元之间的数据传输通过高速缓冲存储器单元14和控制存储器单元15而控制。由于这个原因,有可能使存储***拥有小规模到大规模的配置。
同样,在JP2000-99281A中揭露的现有技术中,多个硬盘阵列器件通过硬盘阵列交换机连接到多个服务器,以至多个硬盘阵列器件被***配置管理装置管理而作为单个存储***,该***配置管理装置连接到硬盘阵列交换机和每一个硬盘阵列器件。
在由银行,证券公司,和电话公司为代表的大型公司中,有趋势减少管理,维持,和管理计算机***和存储***的必要的花费,该配置的***是在不同地方传统分配成集中在数据中心的计算机***和存储***。
另外,在例如IT泡沫消散的效应所产生的经济衰退中,对于商业有趋势削减IT***的初始投资和相应于商业规模的扩大执行***的扩大。由于这个原因,存储***正要求成本和性能的可量测性,其可能削减初始投资并以与商业规模相称的合理的投资扩大规模。
在图36所示的现有技术中,所有的信道IF单元11和所有的磁盘IF单元16执行从服务器3到硬盘2的数据的读取/写入,该读取/写入是通过控制信道IF单元11和所有的磁盘IF单元16之间的通过高速缓冲存储器单元14和控制存储器单元15的数据传输。因此,所有信道IF单元11和所有磁盘IF单元16的访问负载都集中在高速缓冲存储器单元14和控制存储器单元15上。
存储***要求的性能(每单位时间的数据输入/输出频率和每单位时间的数据传输量)逐年递增。为了在将来拥有此性能,也有必要提高信道IF单元11和磁盘IF单元16的数据传输处理性能。
如上所述,所有的信道IF单元11和所有的磁盘IF单元16通过高速缓冲存储器单元14和控制存储器单元15,控制信道IF单元11和所有的磁盘IF单元16之间的数据传输。因而,其中就有问题,当信道IF单元11和磁盘IF单元16的数据传输处理性能提高时,高速缓冲存储器单元14和控制存储器单元15上的访问负载增多了,其变成了一瓶颈,而且很困难在将来提高存储***8的性能。
通过增加高速缓冲存储器单元14和控制存储器单元15的规模,有可能可以提高允许的访问性能。然而,为了可从所有的信道IF单元11和磁盘IF单元16访问高速缓冲存储器单元14和控制存储器单元15,有必要分别管理高速缓冲存储器单元14和控制存储器单元15作为一单个共享的存储器空间。因而,其中就有问题,当增加高速缓冲存储器单元14和控制存储器单元15的规模时,对于小规模配置就很难减少存储***的成本,而且很困难以低成本提供小规模配置的***。
同样,在JP2000-99281A所有的现有技术中,通过增加硬盘阵列交换机的端口的数目并多级连接多个硬盘阵列交换机,可连接的硬盘阵列器件和服务器的数目可以增加,以至可以提供可升级容纳小规模到大规模的存储***。然而,其中也有问题,因为服务器通过硬盘阵列交换机访问硬盘阵列器件,所以把服务器和硬盘阵列交换机之间的协议在磁盘阵列器件中与服务器连接的接口部分转换为硬盘阵列交换机中的协议,并把硬盘阵列交换机中的协议在硬盘阵列交换机中与硬盘阵列阵列器件连接的接口部分转换为在硬盘阵列交换机和硬盘阵列器件之间的协议的处理增多了,以至相比于可以直接访问硬盘阵列器件而没有硬盘阵列交换机的干涉的情况,响应性能是不好的。
发明内容
因此本发明的目的是提供从小规模到大规模配置,成本/性能符合***规模的存储***。
更特别的,本发明的另一目的是提供一存储***,该存储***可以解决存储***中共享存储器的瓶颈,对应于小规模配置实现存储***的低成本,具有比传统硬盘阵列器件的响应性能相等或更高的响应性能,可以实现取决于范围从小规模到大规模配置的成本和数据吞吐量性能的可量测性,而且因此能够减少制造成本。
依照本发明的一方面,存储***包括:多个协议转换单元,每一个都包括到***设备的接口,并把用于读取和写入与***设备交换的数据的协议转换为存储***内的协议;多个磁盘控制单元,每一个磁盘控制单元都包括多个接口,存储读取自/写入到硬盘单元的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,该每一个接口把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议,其中:多个协议转换单元和多个磁盘控制单元通过第一互连互相连接,多个磁盘控制单元和硬盘单元通过第二互连互相连接,多个磁盘控制单元分成多个控制群集,每一个控制群集包括至少2个或更多的磁盘控制单元,高速缓冲存储器的控制对于多个控制群集中的每一个独立地执行,多个控制群集的每一个包含多个磁盘控制单元,以及多个磁盘控制单元之一具有至少一个处理器,且由多个磁盘控制单元之一中的处理器将多个协议转换单元和多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
依照本发明的另一方面,存储***包括:多个协议转换单元,每一个都包括到硬盘单元的接口,并把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;多个信道控制单元,每一个信道控制单元都包括多个接口,存储读取自/写入到硬盘单元的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,每一个接口把用于读取和写入与***设备交换的数据的协议转换为存储***内的协议,其中多个协议转换单元和多个信道控制单元通过互连互相连接,多个信道控制单元分成多个控制群集,每一个控制群集包括2个或更多的信道控制单元,多个控制群集的每一个中的多个信道控制单元的每一个的高速缓冲存储器只存储***设备使用的数据,该外部设备连接到多个控制群集的每一个中的多个接口的每一个,高速缓冲存储器的控制和硬盘单元的存储区域的管理对于多个控制群集中的每一个独立地执行,以及多个信道控制单元之一具有至少一个处理器,且由多个信道控制单元之一中的处理器将多个协议转换单元和多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
依照本发明的另一方面,存储***包括:多个信道控制单元,每一个信道控制单元都包括多个接口,存储读取自/写入到外部设备和硬盘单元中之一的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,每一个接口把用于读取和写入与***设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议,其中多个信道控制单元通过互连互相连接,多个信道控制单元分成多个控制群集,每一个控制群集包括2个或更多的信道控制单元,高速缓冲存储器的控制对于多个控制群集中的每一个独立地执行,以及多个信道控制单元之一具有至少一个处理器,且由多个信道控制单元之一中的处理器将多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
依照本发明的另一方面,存储***包括:多个协议转换单元,其每一个把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;多个数据缓存控制单元,每一个都包括高速缓冲存储器,该高速缓冲存储器存储读取自/写入到外部设备和硬盘单元其中之一的数据,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,其中多个协议转换单元和多个数据缓存控制单元通过第一互连互相连接,多个数据缓存控制单元通过第二互连互相连接,多个数据缓存控制单元分成多个控制群集,每一个控制群集包括2个或更多的数据缓存控制单元,多个控制群集的每一个中的多个数据缓存控制单元互相连接,高速缓冲存储器的控制对于多个控制群集中的每一个独立地执行,以及其中,多个数据缓存控制单元之一具有至少一个处理器,且由多个数据缓存控制单元之一中的处理器将多个协议转换单元和多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
依照本发明的另一方面,存储***包括:多个协议转换单元,每一个都包括到***设备的接口,并把用于读取和写入与***设备交换的数据的协议转换为存储***内的协议;多个磁盘控制单元,每一个磁盘控制单元都包括多个接口,存储读取自/写入到硬盘单元的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,该每一个接口把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议,其中:多个协议转换单元和多个磁盘控制单元通过第一互连互相连接,多个磁盘控制单元和硬盘单元通过第二互连互相连接,在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析以确定多个逻辑单元中哪一个中记录了外部设备请求的数据,且决定管理记录了请求的数据的逻辑单元的磁盘控制单元的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到微处理器。
依照本发明的另一方面,存储***包括:多个协议转换单元,每一个都包括到***设备的接口,并把用于读取和写入与***设备交换的数据的协议转换为存储***内的协议;多个磁盘控制单元,每一个磁盘控制单元都包括多个接口,存储读取自/写入到硬盘单元的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,该每一个接口把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议,其中:多个协议转换单元和多个磁盘控制单元通过第一互连互相连接,多个磁盘控制单元和硬盘单元通过第二互连互相连接,在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析以确定多个逻辑单元中哪一个中记录了相应于写入数据的数据,且决定管理记录了相应于写入数据的数据的逻辑单元的磁盘控制单元的微处理器和相应的高速缓冲存储器,并发出数据写入请求到微处理器。
依照本发明的另一方面,存储***包括:多个协议转换单元,每一个都包括到硬盘单元的接口,并把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;多个信道控制单元,每一个信道控制单元都包括多个接口,存储读取自/写入到硬盘单元的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,每一个接口把用于读取和写入与***设备交换的数据的协议转换为存储***内的协议,其中多个协议转换单元和多个信道控制单元通过互连互相连接,在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析以确定多个逻辑单元中哪一个中记录了外部设备请求的数据,且决定管理记录了请求的数据的逻辑单元的信道控制单元的微处理器和相应的高速缓冲存储器,并发出数据读取请求到微处理器。
依照本发明的另一方面,存储***包括:多个协议转换单元,每一个都包括到硬盘单元的接口,并把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;多个信道控制单元,每一个信道控制单元都包括多个接口,存储读取自/写入到硬盘单元的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,每一个接口把用于读取和写入与***设备交换的数据的协议转换为存储***内的协议,其中多个协议转换单元和多个信道控制单元通过互连互相连接,在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析以确定多个逻辑单元中哪一个中记录了相应于写入数据的数据,且决定管理记录了相应于写入数据的数据的逻辑单元的信道控制单元的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到微处理器。
依照本发明的另一方面,存储***包括:多个信道控制单元,每一个信道控制单元都包括多个接口,存储读取自/写入到外部设备和硬盘单元中之一的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,每一个接口把用于读取和写入与***设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议,其中多个信道控制单元通过互连互相连接,在接收来自外部设备的数据读取指令的基础上,每一信道控制单元进行数据读取指令的指令分析以确定多个逻辑单元中哪一个中记录了外部设备请求的数据,且决定管理记录了请求的数据的逻辑单元的信道控制单元的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到微处理器。
依照本发明的另一方面,存储***包括:多个信道控制单元,每一个信道控制单元都包括多个接口,存储读取自/写入到外部设备和硬盘单元中之一的数据的高速缓冲存储器,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,每一个接口把用于读取和写入与***设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议,其中多个信道控制单元通过互连互相连接,在接收来自外部设备的数据写入指令和写入数据的基础上,每一信道控制单元进行数据写入指令的指令分析以确定多个逻辑单元中哪一个中记录了相应于写入数据的数据,且决定管理记录了相应于写入数据的数据的逻辑单元的信道控制单元的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到微处理器。
依照本发明的另一方面,存储***包括:多个协议转换单元,其每一个把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;多个数据缓存控制单元,每一个都包括高速缓冲存储器,该高速缓冲存储器存储读取自/写入到外部设备和硬盘单元其中之一的数据,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,其中多个协议转换单元和多个数据缓存控制单元通过第一互连互相连接,多个数据缓存控制单元通过第二互连互相连接,在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析以确定多个逻辑单元中哪一个中记录了外部设备请求的数据,且决定管理记录了请求的数据的逻辑单元的缓存控制单元的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到微处理器。
依照本发明的另一方面,存储***包括:多个协议转换单元,其每一个把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;多个数据缓存控制单元,每一个都包括高速缓冲存储器,该高速缓冲存储器存储读取自/写入到外部设备和硬盘单元其中之一的数据,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,其中多个协议转换单元和多个数据缓存控制单元通过第一互连互相连接,多个数据缓存控制单元通过第二互连互相连接,在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析以确定多个逻辑单元中哪一个中记录了相应于写入数据的数据,且决定管理记录了相应于写入数据的数据的逻辑单元的缓存控制单元的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到微处理器。
依照本发明,可以提供一存储***,其可以解决存储***中共享存储器的瓶颈,对应于小规模配置实现存储***的低成本,而且可以实现取决于从小规模到大规模配置的范围的成本和性能的可量测性。
附图说明
图1是显示依照本发明的第一实施例的存储***配置的方框图。
图2是显示依照本发明的第一实施例的互连31的特殊配置的实例的方框图。
图3是显示依照本发明的第一实施例的切换单元51的特殊配置的实例的方框图。
图4是显示依照本发明的第一实施例的数据包格式的实例的说明图。
图5是显示依照本发明的第一实施例的一协议转换单元10的配置的实例的方框图。
图6是显示依照本发明的第一实施例的一数据缓存控制单元21的配置的实例的方框图。
图7是显示依照本发明的第一实施例的一***管理单元60的配置的实例的方框图。
图8是显示依照本发明的第一实施例的第一修改例的存储***的配置的实例的方框图。
图9是显示依照本发明的第一实施例的第二修改例的存储***的配置的实例的方框图。
图10是显示依照本发明的第一实施例的第三修改例的数据缓存控制单元21的具体配置的实例。
图11是显示依照本发明的第一实施例的整个存储***1的管理配置的实例的方框图。
图12是显示依照本发明的第一实施例的第一修改例的存储***1的配置实例的方框图。
图13是显示依照本发明的第一实施例的第二修改例的存储***1的配置的实例的方框图。
图14是显示依照本发明的第一实施例的用于物理器件651的管理表的解释图。
图15是显示依照本发明的第一实施例的用于虚拟卷652的管理表的解释图。
图16是显示依照本发明的第一实施例的用于逻辑单元653的管理表的解释图。
图17是显示依照本发明的第一实施例的用于逻辑单元分配654的管理表的解释图。
图18是显示依照本发明的第一实施例的存储***1的***初始化时的操作流程实例的流程图。
图19是显示依照本发明的第一实施例的存储***1的***关闭时的操作流程实例的流程图。
图20是显示依照本发明的第一实施例的读取数据情形的实例的流程图。
图21是显示依照本发明的第一实施例的写入数据情形的实例的流程图。
图22是显示依照本发明的第一实施例的存储***安装在机架上的配置实例说明图。
图23是显示依照本发明的第二实施例的存储***配置的方框图。
图24是显示依照本发明的第二实施例的互连31配置的特殊例的方框图。
图25是显示依照本发明的第二实施例的第四修改例的存储***配置的方框图。
图26是显示依照本发明的第二实施例的磁盘控制单元25的特殊例的方框图。
图27是显示依照本发明的第三实施例的存储***配置的方框图。
图28是显示依照本发明的第五实施例的存储***配置的方框图。
图29是显示依照本发明的第五实施例的互连31特殊配置实例的方框图。
图30是显示依照本发明的第六实施例的存储***配置的方框图。
图31是显示依照本发明的第六实施例的***管理信息存储器单元160的特殊配置实例的方框图。
图32是显示依照本发明的第七实施例的存储***配置的方框图。
图33是显示依照本发明的第八实施例的存储***配置的方框图。
图34是显示依照本发明的第九实施例的存储***配置的方框图。
图35是显示依照本发明的第十实施例的存储***配置的方框图。
图36是显示依照现有技术的存储***配置的方框图。
具体实施方式
本发明的实施例将使用附图在下文描述。
第一实施例
图1是显示依照本发明的第一实施例的存储***配置的方框图。
图1中,存储***1包含连接到服务器3的协议转换单元10,数据缓存控制单元21,***管理单元60和硬盘2。
每一协议转换单元10是到服务器3或硬盘2的接口单元。数据缓存控制单元21控制在服务器3或硬盘2中存储的数据缓存,并存储与硬盘2相关的控制信息。协议转换单元10适当地转换用于控制数据的协议,该数据是发送到或从服务器3或硬盘2接收的数据。协议转换单元10,数据缓存控制单元21和***管理单元60通过互连31连接。***管理单元60管理与存储***1的配置相关的信息。
图2是显示互连31的特殊配置实例的方框图。
互连31包含两个切换单元51。从每一协议转换单元10,数据缓存控制单元21和***管理单元60有一信道连接到两个切换单元51的每一个。因而,在协议转换单元10,数据缓存控制单元21和***管理单元60中保证有两条信道,所以增加可靠性变得可能。同样,***管理单元60连接到两切换单元51,从而拥有冗余的信道。从而有可能增加整个***的可靠性。这里,信道的数量只作为例子,并且并不意味着限制于上面提到的数量。
同样,尽管使用切换单元的互连31作为示例在图2中显示,但是可以采用任何互连,只要组件之间通过其互相连接并且控制信息与数据通过其传输。例如,互连31可以由总线配置。
图3是显示切换单元51特殊配置实例的方框图。
切换单元51包含至少4条信道接口130(下文中,参考为“IF”),一报头分析单元131,一仲裁器132,一纵横交换机133,4信道IF135,和2信道IF136。信道IF130,135和136中的每一个连接到一个缓冲器134,并进一步通过缓冲器134连接到纵横交换机133。
信道IF 130是与协议转换单元10的连接信道连接的IF,并且每一个都与4个协议转换单元10中的每一个通过一条信道相连。信道IF 135是与数据缓存控制单元21的连接信道连接的IF,并且每一个都与这4个数据缓存控制单元21中的每一个通过一条信道相连。信道IF136是与***管理单元60的连接信道连接的IF,并且每一个都与这2个***管理单元60中的每一个通过一条信道相连。缓冲器134缓冲协议转换单元10,数据缓存控制单元21和***管理单元60中传输的数据包。
仲裁器132仲裁发自各个信道IF的信号以控制纵横交换机133。报头分析单元131获得从各个信道IF发出的信号所包含的报头以分析信号目的地的信道IF。
图4是显示协议转换单元10,数据缓存控制单元21和***管理单元60中传输的数据包格式的实例的说明图。
数据包200包含报头210,有效载荷220和错误检查编码230。至少代表数据包的来源和目的地的信息存储在报头210中。一个指令,一个地址,数据和一个状态存储在有效载荷220中。错误检查编码230是在传输数据包时检测数据包内的错误的编码。
当数据包输入到信道IF 130,135和136时,数据包的报头210送到报头分析单元131。报头分析单元131从所收报头包含的数据包的目的地提取要在各个信道IF连接的连接请求,并且发送连接请求到仲裁器132。仲裁器132基于来自信道IF的连接请求执行仲裁,并且作为仲裁的结果,输出表示连接切换的信号到纵横交换机133。纵横交换机133基于所收信号切换纵横交换机133中的连接。从而,相应于每一信道IF所收信号的目的地,数据包可以送到信道IF的每一个。
在本实施例中,切换单元51在每一信道IF配置有一缓冲器,但是也可以在其中配置有一单个大型缓冲器,该缓冲器具有分配给各个信道IF的数据包存储区域。同样,切换单元51内发生的错误上的信息可以存储在报头分析单元131。
图5是显示协议转换单元10的配置实例的方框图。
协议转换单元10包含至少4个外部IF100,一个数据转送控制单元105和两个微处理器102。
每一个外部IF100是到服务器3或硬盘2的接口。数据转送控制单元105控制与数据缓存控制单元21或***管理单元60的数据/控制信息的转送。微处理器102控制外部IF100和数据转送控制单元105,从而互相转换在服务器3或硬盘2和外部IF100之间使用的用来读取和写入的数据协议,和在数据缓存控制单元21或***管理单元60和数据转送控制单元105之间使用的数据传输协议。微处理器102包含一与其连接的作为主存储器的存储器(图未示)。
这里,外部IF100,微处理器102和类似器件的数量只是作为例子,并不意味着限制于上面提及的数量。同样的,所有下述的参考的数量只是示例并不意味着限制本发明。
微处理器102通过公共总线108连接到外部IF100和数据转送控制单元105。同样,外部IF100直接连接到数据转送控制单元105。微处理器102互相转换在服务器3或硬盘2和外部IF100之间使用的用来读取和写入的数据协议,和在数据缓存控制单元21或***管理单元60和数据转送控制单元105之间使用的数据传输协议。通过微处理器102的控制,协议转换单元10从服务器3发送一读取/写入请求到目标数据高速缓存控制单元21或者另一协议转换单元10。同样,通过微处理器102的控制,协议转换单元10从数据高速缓存控制单元21或另一协议转换单元10转送一读取/写入请求到硬盘2。
这里,图5只示例了在微处理器102,外部IF100和数据转送控制单元105之间的连接配置,并不意味着对连接配置强加任何限制。只要连接配置允许微处理器102控制外部IF100和数据转送控制单元105,并允许从外部IF100到数据转送控制单元105数据的转送,就没有问题。
图6是显示数据缓存控制单元21特殊配置实例的方框图。
数据缓存控制单元21包含至少4个微处理器101,一个数据转送控制单元105,一个高速缓冲存储器单元111和一控制存储器单元112。
高速缓冲存储器单元111暂存与服务器3或硬盘2交换的数据。控制存储器单元112存储与数据转送、高速缓冲存储器单元111的管理和硬盘2的管理相关的控制信息。
每一个高速缓冲存储器111和控制存储器单元112包含内置于其中的一存储模块122和一控制存储模块122的访问的存储控制器121。这里,如果高速缓冲存储器单元111和控制存储器单元112每一个都有同样的存储控制器121和存储模块122,并且如果高速缓冲存储器区域和控制存储器区域分配到单个存储器空间上不同的区域,是没有问题的。同样,微处理器101包含一与其连接的作为主存储器的存储器(没有显示)。作为选择的,如果这四个微处理器101有一个SMP(对称的多处理器)配置,它们共享高速缓冲存储器单元111和控制存储器单元112作为它们自己的主存储器。
微处理器101,高速缓冲存储器单元111,控制存储器单元112和数据转送控制单元105都通过切换109连接。微处理器101参考存储在控制存储器单元112中的控制信息以控制到高速缓冲存储器单元111的数据的读取/写入,高速缓冲存储器的目录管理,与协议转换单元10的数据转送,和与***管理单元60的***管理信息的交换。数据转送控制单元105也执行所谓的RAID处理,或对写到与协议转换单元10连接的硬盘2的数据的进行冗余处理。可选择的,RAID处理可以在协议转换单元10中执行。
这里,图6只示例了在微处理器101,高速缓冲存储器单元111,控制存储器单元112,和数据转送控制单元105的连接配置,并不意味着对连接配置强加任何限制。只要连接配置允许微处理器101控制高速缓冲存储器单元111,控制存储器单元112,和数据转送控制单元105,就没有问题。
图7是显示***管理单元60特殊配置实例的方框图。
***管理单元60包含至少一个微处理器101,一个数据转送控制单元105,一个存储控制器121,一个存储模块122,和一LAN控制器123。微处理器101使用存储模块122作为其自己的主存储器。可选择的,如果微处理器101有连接到其自身作为主存储器的,与存储模块122分开的存储器,也是没有问题的。
微处理器101通过存储控制器121连接到存储模块122,数据转送控制单元105,和LAN控制器123。微处理器101由于从协议转换单元10和数据缓存控制单元21采集的管理信息,互连31的管理信息和用户从连接到LAN控制器123的管理控制台设定的信息,合并了整个存储***1的管理信息,并且在存储模块122中存储此管理信息。微处理器101也使用此信息来执行存储***1的管理。管理信息存储在硬盘2中或连接到存储控制器121的非易失性的存储器中,以消除控制信息因***中的错误或类似的错误而丢失的担心,从而有可能增加存储***1的可靠性。
这里,微处理器101,存储控制器121,存储模块122,LAN控制器123和数据转送控制单元105的连接配置只作为例子,并且连线配置不意味限制于此。只要连接配置允许微处理器101控制存储控制器121,存储模块122,LAN控制器123,和数据转送控制单元105,就没有问题。***管理单元60进一步包含一输出信息给用户(管理员)和从用户输入信息的管理控制台。
如图1所示,在本实施例中,两个数据缓存控制单元21合并为单个控制群集70,并且高速缓冲存储器单元111的管理位于控制群集70中。那就是,在一指定控制群集70中的数据缓存控制单元21中的微处理器101只管理在该控制群集70中的高速缓冲存储器单元111和控制存储器单元112,并不管理在另一控制群集70中的高速缓冲存储器单元111和控制存储器单元112。
这里,控制群集70的两个数据缓存控制单元21中的高速缓冲存储器单元111和在两个数据缓存控制单元21中的控制存储器单元112可以加倍。因此,有可能在一个数据缓存控制单元21出现错误的情况下,在已增加的存储器中的另一数据缓存控制单元21中持续操作,以至有可能提高存储***1的可靠性。
有必要在多个控制群集70中的高速缓冲存储器单元111中多次存储同样的数据的情况下,传输此数据到数据缓存控制单元21的协议转换单元10在***管理单元60中的存储器的预定区域中,记录代表哪个数据是多次存储在哪个控制群集的高速缓冲存储器单元111中的控制信息。同时,协议转换单元10发送代表一数据是多次存储的数据的控制信息,和控制数据一起到数据缓存控制单元21。当多次存储在这些的缓冲存储器单元111中的数据被更新或被删除的情况下,数据缓存控制单元21发送代表此事实的控制信息到***管理单元60。当***管理单元60收到此信息时,它基于控制信息执行处理以更新或删除此多次存储的信息,该控制信息表示记录在存储器中的那个数据是在哪个控制群集70的高速缓冲存储器单元111中多次存储的。
如上所述,通过限制数据缓存控制单元21中的微处理器101而控制高速缓冲控制器单元111的范围到控制群集70的内部,减少高速缓冲存储器单元111和控制存储器单元112上的访问负载变得可能,而且,其结果是提高存储***1的性能变得可能。
这里,作为第一实施例的第一修改例,将描述图8所示的存储***。如图8所示,有可能有一配置,其中,协议转换单元10分为连接到服务器3的协议转换单元10和连接到硬盘2的协议转换单元10,两个数据缓存控制单元21和连接到硬盘组的两个协议转换单元10合并为单个控制群集71,并且只有一数据存储在一控制群集71的数据缓存控制单元21中的高速缓冲存储器111中,该数据是要记录的或已记录至连接到该控制群集中的协议转换单元10的硬盘中的数据。同时,高速存储器单元111的管理位于控制群集71中。也就是,在指定控制群集71中的数据缓存控制单元21中的微处理器101只管理在该控制群集71中的高速缓冲存储器111,并不管理另一个控制群集71中的高速缓冲存储器单元111。
这里,尽管图8说明的例子中,连接到与服务器3相连的协议转换单元10的互连31,和连接到与硬盘2相连的协议转换单元10的互连31分开了,但是协议转换单元10物理连接到同一互连31。
同样,在两个数据缓存控制单元21中,高速缓冲存储器单元111和控制存储器单元112的内容可以加倍。因此,有可能在一个数据缓存控制单元21出现错误的情况下,在加倍的存储器中的另一数据缓存控制单元21中持续操作,以至有可能提高了存储***1的可靠性。
如上所述,在数据缓存控制单元21中的微处理器101通过限制而控制高速缓冲存储器单元111的范围在控制群集71中,有可能减少高速缓冲存储器单元111和控制存储器单元112上的存储负载,并且其结果是有可能提高存储***1的性能。
同样,如上所述,与硬盘2相关的高速缓冲存储器单元中的管理位于控制群集71中,以至数据不再多次地存储在多个控制群集71中的高速缓冲存储器单元111中。因而,通过***管理单元60,多次存储在多个控制群集70中高速缓冲存储器单元111中的数据的相一致的控制变得不必要了,其控制在图1的配置中是必要的,所以***的管理简单了,并且有可能相比于图1的配置进一步提高存储***1的性能。
下面,将描述图9所示的作为第一实施例的第二修改例的存储***。如图9所示,控制群集70中的两个数据缓存控制单元21通过两条信道连接。
图10显示依照第一实施例的第三修改例的数据缓存控制单元21的具体配置实例。
除了内部IF126连接到切换109之外,图10所示的数据缓存控制单元和图6所示的数据缓存控制单元21拥有一样的配置。两个内部IF126如图9所示连接到切换109。使用连接信道执行数据和控制信息的通信,该连接信道连接在配置控制群集的两数据缓存控制单元21间的内部IF126。通过用连接信道互连两个数据缓存控制单元21的内部IF126,通过连接信道执行数据和控制信息的通信。例如,通过连接信道执行两数据缓存控制单元21中高速缓冲存储器单元111或控制存储器单元112中存储的信息的加倍。
因而,依照图9所示的第一实施例的第二修改例,执行控制群集的加倍。从而,在配置控制群集70的两数据缓存控制单元中的一个出现错误的情况下,因为有可能用另一个数据缓存控制单元而持续存储***的操作,所以提高了可靠性。
下面,依照本实施例图11所示的方框图用来描述整个存储***1的管理配置例。
这里,将描述图8所示的配置的存储***1的管理配置实例。
在***管理单元60中,通过把整个存储***1的管理分成3层,即网络层,逻辑信道层和存储层,而执行管理,以至简化了管理。特别的,***管理单元60包含如软件程序的一个网络管理单元503,一个逻辑信道管理单元502和一个存储管理单元501。
图11所示的每一部份实际是通过***管理单元60的微处理器101执行的一软件程序。这些程序通过一网络或便携式的存储介质存储在***管理单元60的存储模块122中。而且,在下面的描述中,在图11所示的每一部分都是主体的情况下,处理实际上是通过***管理单60的微处理器101执行的。而且,每一部分包含的处理也是一个程序。应该注意的是每一部分也由专用的硬件执行。
这里,通过网络是指互连31。网络管理单元503至少执行网络控制541和错误恢复处理542。
例如,在互连是由图2所示的切换单元51配置的情况下,网络管理单元503执行协议转换单元10,切换单元51,数据缓存控制单元21和***管理单元60间的物理连接的设定,连接的移动,和物理错误的检测/处理。
逻辑信道管理单元502至少管理逻辑信道分配531和逻辑信道封锁/切换处理532。这里,通过逻辑信道是指在协议转换单元10,数据缓存控制单元21和***管理单元60之间分别设定逻辑信道。
例如,在互连31是由图2所示的切换单元51配置的情况下,逻辑信道管理单元502设定从一协议转换单元10开始通过一切换单元51到一数据缓存控制单元21的信道为一条逻辑信道。因而,在一协议转换单元10和一数据缓存控制单元21间设定了两条逻辑信道。同样的,在协议转换单元10和***管理单元60间,在***管理单元60和数据缓存控制单元21间,在***管理单元60和协议转换单元10间,在***管理单元60和数据缓存控制单元21间,在***管理单元60和***管理单元60间都设定了两条逻辑信道。在逻辑信道管理单元502中执行了***启动时候的逻辑信道的设定,单元间两条逻辑信道之一出现错误的情况下的封锁,和切换到另一逻辑路径的处理。
存储管理单元501至少管理卷集成管理521,服务器LU(逻辑单元)分配522,和***错误恢复处理523。在卷管理521中,集成和管理每一控制群集71分别管理的逻辑卷。在服务器LU分配522中,从集成逻辑卷中获得一LU分配到每一服务器3。由于卷管理521和服务器LU分配522,有可能对应于服务器3显示多个控制群集71的装置,该控制群集以单个存储***1分别执行独立控制。
如图12所示,作为第二修改例,也可能连接其它的存储***4到连接服务器3的协议转换单元10。
这种情况下,其它存储***提供的LU也在卷集成管理521中管理,而且这些LU在服务器LU分配522中分配给服务器3,从而有可能从服务器3通过存储***1访问其它存储***4的卷。
同样,在存储管理单元501中,管理代表哪一个服务器连接到哪一个协议转换单元10的表,从而在连接到存储***1的多个服务器3之间的通信和数据传输变得可能。
当在连接到协议转换单元10的服务器3和存储***4之间执行数据传输时,通过互连31在协议转换单元10之间执行数据转送。这种情况下,数据也可以缓存在***管理单元60中的存储器。数据也可以缓存在数据缓存控制单元21内的高速缓冲存储器单元111。因而,提高了服务器3和存储***4之间数据转送的性能。
同样,如图13所示,对应于图12的第一修改例的第三修改例,存储***1,服务器3和其它存储***4可以通过一SAN交换机65连接。而且,协议转换单元10中的外部IF100配置以通过SAN交换机65访问服务器3和其它存储***4。因此,从连接至该存储***的服务器3,访问连接到SAN交换机65的服务器3和其它存储***4以及包括多个SAN交换机65的网络变得可能。
再次参考图11,在***错误恢复处理523中,各个错误信息从协议转换单元10和数据缓存控制单元21中收集,逻辑信道错误信息从逻辑信道管理单元502中收集,并且存储***1中要封锁/取代的地方由此信息确定。另外,命令实现封锁处理的控制信息送到相应的地点(协议转换单元10,数据缓存控制单元21或切换单元51),并且对于收到控制信息的相应地点执行封锁处理。在封锁处理完成后,提示用户取代错误地点的信息通知给用户(例如,在管理控制台上显示)。用户依照信息取代错误地点。用户用管理控制台输入显示完成取代错误地点的信息。命令封锁删除的控制信息响应此信息从***错误恢复处理523发送到相应的地点。对于收到控制信息的地点执行封锁删除处理。在完成封锁删除处理后,***返回到正常操作。
如上所述,***管理单元60通过在***管理单元60中把管理分成3层,例如网络,逻辑信道和存储而管理整个存储***1。
这里,即使使用网络管理单元503和逻辑信道管理单元502为一单个管理单元而执行***的控制,也没有问题。
在本实施例中,到达和来自服务器3的指令/数据,与来自服务器3的指令分析和请求的分类处理的发送和接收,该分析和请求已在信道IF单元11中执行;和到达和来自硬盘2的指令/数据,与到达硬盘2的指令分析和请求的分类处理的发送和接收,该分析和请求已在图36所示的现有技术的磁盘IF单元16中执行,分开成来自信道IF单元11的协议转换单元10的处理,和信道IF单元11和磁盘IF单元16的其他处理,该其它处理合并为在数据缓存控制单元21中的处理。
因而,在数据缓存控制单元21中,至少执行了数据缓存控制561,数据传输控制562,和控制群集563中的卷管理。在数据缓存控制561中,执行读取/写入数据到高速缓冲存储器单元111的控制,存储在控制存储器单元112的高速缓冲存储器单元111里的目录的管理,和检查请求的数据收否在高速缓冲存储器单元111的命中/未中处理。在数据传输控制单元562中,执行协议转述单元单元10和高速缓冲存储器单元111之间的数据传送的控制。在控制群集563中的卷管理中,控制群集中的逻辑卷由硬盘2的物理卷配置,而且管理代表逻辑卷的表。
同样,协议转换单元10分成连接服务器组504和连接器件组506,连接服务器组504为连接到服务器3的协议转换单元10的组,连接器件组506为连接到硬盘2的协议转换单元10的组。
连接服务器组504包含的协议转换单元10至少执行指令处理551和请求分类552。在指令处理551中,执行了到达和来自服务器3的指令的发送和接收,并执行了来自服务器3的指令的分析和到达服务器3的指令的发出。在请求分类552中,来自服务器3的数据和数据读取/写入指令转换为内部协议并转送到相应的数据缓存控制单元21或协议转换单元10。同样,在请求分配572中,来自数据缓存控制单元21或协议转换单元10到服务器3的指令和数据从内部协议转换为服务器3和协议转换单元10之间的协议,并发送到服务器3。
属于器件连接组506的协议转换单元10至少执行指令处理571,请求分类572,器件控制,和器件错误处理。
在指令处理571中,执行到达和来自器件的指令的发送和接收,并执行到器件的指令的发出和来自器件的回复分析。在请求分类572中,到器件的数据和数据读取/写入指令从内部协议转换为器件和协议转换单元之间的协议,并转送到相应的器件。同样,来自器件的回复和数据转送到相应的数据缓存控制单元21或协议转换单元10。在器件控制573中,执行对器件读取/写入的控制。在器件错误恢复处理574中,在器件中出现错误的情况下执行器件的封锁/取代。
如上所述,在数据缓存控制单元21中,通过合并和执行处理,该处理已在图36所示的现有技术的信道IF单元11和磁盘IF单元16分开并由其执行,有可能提高存储***1的性能,因为通过用于数据传输的控制存储器单元15去除了在信道IF单元11和磁盘IF单元16之间执行的通信处理。
在本实施例中,术语“器件”是指硬盘2,但是任何器件都可以采用,只要该器件记录封锁类型数据。例如,可采用光盘。
尽管上面描述了图8所示的配置的存储***1中的管理配置,但在图1所示的配置的情况下,执行数据的一致控制的处理加到***管理单元60,该数据是多次存储在多个控制群集中的高速缓冲控制器里的数据,从而同样的处理变得可能。
下面,在物理卷和逻辑卷之间的关系,逻辑卷和逻辑单元之间的关系,逻辑单元分配到服务器的关系的实例在图14到17中显示。下面,逻辑卷称作虚拟卷。
图14是显示用于物理器件651的管理表的说明图。那就是,图14显示了物理器件(此例中,硬盘2)和的虚拟卷之间的关系,其中多个物理器件合并为一单个卷。
物理器件序号(PDEV#)630是一分别对应于一硬盘的识别号。一虚拟卷1是由4个物理器件配置,并且一个明确指定的数字作为虚拟卷1序号631分配给控制群集71中的这些物理器件。同样,RAID级别605是一代表虚拟卷1的RAID配置的信息。一卷容量601是代表虚拟卷1的容量的信息。同样,代表哪一卷由哪一协议转换单元(下面也称作协议转换适配器(PA))管理的连接适配器序号610加到控制群集71中的虚拟卷1中。虚拟卷2序号632是***管理单元60为集中管理多个控制群集71中的所有虚拟卷1而在整个存储***中分配的一明确指定的序号。
在***初始化时,除了用于物理器件651的管理表的虚拟卷2序号632的部分在每一控制群集71的数据缓存控制单元21中创建了,这些部分在***管理单元60中注册,而且***管理单元60创建了表(用于物理器件651的管理表),其中虚拟卷2序号632基于来自所有控制群集71的表而分配。另外,表中与每一控制群集71相关的部分的备份转送到相应的控制群集71的数据缓存控制单元21,而且每一数据缓存控制单元21在控制存储器单元112中存储此备份。
在硬盘2的配置中有变化的情况下,管理硬盘2的数据缓存控制单元21改变不是用于物理器件651的管理表的虚拟卷2的部分,并在***管理单元60中注册此部分。***管理单元60基于注册的信息改变用于物理器件651的管理表,并传输与每一个控制群集71相关的表的部分的备份到相应的控制群集71中的数据缓存控制单元21中。各个数据缓存控制单元21在控制存储器单元112中存储此备份。
这里,如果创建用于物理器件651的管理表的必要的所有信息从数据缓存控制单元21传输到***管理单元60,而且用于物理器件651的所有管理表基于此在***管理单元60中创建,也是没有问题的。
图15是显示用于虚拟卷652的管理表的说明图。因为虚拟卷1(或虚拟卷2)由多个硬盘配置,它的容量变得比几百GB还要大。因而,为提高用户可以使用虚拟卷时的容易性,虚拟卷1(或虚拟卷2)分成多个具有小容量的虚拟卷3。
用于虚拟卷652的管理表是显示虚拟卷3序号633和虚拟卷1中的地址641之间的关系的表。用于虚拟卷652的管理表所同样包含的是用于数据缓存控制单元621的的管理序号,该序号代表哪个数据缓存控制单元21管理此虚拟卷1。
这里,在硬盘的容量很小(几GB)的情况下,或用户所必需的逻辑单元的容量为几十至几百GB的情况下,没有必要创建虚拟卷3。***管理单元60基于从数据缓存控制单元21转送的虚拟逻辑卷1的信息为虚拟卷652创建管理表。
图16是显示用于逻辑单元653的管理表的说明图。
用于逻辑单元653的管理表显示了虚拟卷3和实际提供给用户的逻辑单元之间的关系。逻辑单元由一个或多个虚拟卷3配置。在用于逻辑单元653中的管理表中,显示了逻辑单元序号661和配置逻辑单元的虚拟卷3序号633之间的关系。对于逻辑单元序号661,分配了在整个存储***1中确定位置的序号。同样,逻辑单元属于的虚拟逻辑卷1的RAID级605也按顺序显示以体现逻辑单元的可靠性。同样,显示了用于数据缓存控制单元621的管理序号,其代表哪一个数据缓存控制单元21管理配置逻辑单元的虚拟卷3。
即使逻辑单元由多个虚拟卷3配置,虚拟卷3中管理数据缓存控制单元不同,也没有什么问题。因此,分散了管理数据缓存控制单元21上的负载,并有可能提高存储***1的性能,因为对应于每一逻辑单元的访问分散到多个数据缓存控制单元21。
图17是显示用于逻辑单元分配654的管理表的说明图。
用于逻辑单元分配654的管理表显示了连接服务器序号670和分配给服务器的逻辑单元之间的关系。
在多个逻辑单元是对应于服务器而分配的情况下,有必要从0开始分配序号,该序号是分配给服务器的各个逻辑单元的。因而,分配了从0开始的虚拟逻辑单元序号662并且对应于服务器提供逻辑单元。用于逻辑单元分配654的管理表也显示了虚拟逻辑单元序号662和逻辑单元序号661之间的关系。
同样,显示了连接适配器序号611和连接信道序号615,其代表服务器和哪个协议转换单元10的哪个连接信道连接。而且,显示了代表哪一个数据缓存控制单元21管理配置逻辑单元的虚拟卷的用于数据缓存控制单元621的管理序号。用于数据缓存控制单元621的管理序号有必要按次序知晓,对应于来自服务器的访问请求哪一个数据缓存控制单元21应该访问连接到服务器的协议转换单元10,而没有询问***管理单元60。因此,有可能对应于来自主机的访问请求减少响应时间。
附带的,***管理单元60基于从协议转换单元10到服务器3所连接的协议转换单元10的信息和来自管理控制台的用户设定信息,创建/管理用于逻辑单元分配654的管理表。另外,***管理单元60传输与表中每一协议转换单元10相关的部分的备份到相应的协议转换单元10,并且每一协议转换单元10在连接到微处理器102的存储器中存储此备份。
在服务器的连接配置或者逻辑单元的分配中出现变化的情况下,***管理单元60改变用于逻辑单元分配654的管理表,并传输表内的与每一协议转换单元10相关的部分的备份到相应的协议转换单元10,而且协议转换单元10在连接到微处理器102的存储器(没有显示)中存储此备份。
所有或部分图14到17中所示的表在管理控制台的显示器上显示,以至用户可以从管理控制台设定逻辑单元,虚拟卷,和物理器件之间的所有或部分关系。
在本实施例中,从物理器件到逻辑卷和提供给用户的逻辑单元配置卷的多种类型,但是这只是一个例子而且卷没有必要拥有如此的相同配置。必要的是在控制群集71中独立配置/管理卷,在***管理单元60中整体管理存储***1中所有控制群集71提供的的卷,和从中选取卷并提供给用户的功能,从而可以实现本发明。
图18是显示在存储***1的***初始化的时候的操作流程实例的流程图。
首先,当***的电源开启(701)时,协议转换单元10,数据缓存控制单元21,和***管理单元60执行了自***检查(702)。在自***检查(702)中,每一个协议转换单元10,数据缓存控制单元21,和***管理单元60执行一内部诊断以检查此单元是否正常操作或者是否有错误。如果有错误,此单元在后面的配置信息注册中通知此错误给***管理单元60(706)。在不能为错误给出通知的情况下,在此单元中开启指示此错误的显示单元。
当自***检查702确定为正常操作时,每一个协议转换单元10,数据缓存控制单元21,和***管理单元60收集自***配置信息(识别单元的ID序号,在单元中识别处理器的处理器序号,处理器类型/规格,存储器容量,等等。)(703)。这时,连接到硬盘2的协议转换单元10检查与它们连接的硬盘2的配置,并检查看硬盘里是否有错误。在硬盘里有错误的情况下,协议转换单元10在后面的配置信息注册706中把此错误通知给***管理单元60。
然后,***管理单元60中的网络管理单元503收集互连31的物理链路信息并检查互连31的配置(704)。在自***配置信息收集703后,协议转换单元10,和数据缓存控制单元(下面也叫做“CA”)21等待一必要的时间段(或预设的时间段),该时间段为***管理单元(下面也叫做“MA”)60执行网络配置信息收集所需要的,然后建立与***管理单元60的逻辑信道(705)。之后,协议转换单元10和数据缓存控制单元21在***管理单元60中注册它们已经收集的自***配置信息(706)。这时,如上所述,***管理单元60也被通知了错误信息。
然后,***管理单元60在连接到***管理终端60的管理控制台的显示器上指示图14到17中所示的配置信息的一些或全部管理表(如图所示,用于必要的用户设定的部分是空表,而不是在各个序号之间关系都设定的表),并且在管理控制台上拥有对物理器件,虚拟卷和逻辑单元之间的一些或全部关系的用户执行设置(707)。
然后,***管理单元60基于用户的设定完成图14到17中所示的管理表,并在***管理单元60中的存储器中存储这些管理表(708)。对于出现错误的时候,这些管理表也存储在***管理单元60中的一个或全部两个非易失性存储器中或者在硬盘2中的一个硬盘中。
然后,与每一个协议转换单元10和每一个数据缓存控制单元21分别相关的管理表中的部分的备份分配到每一个协议转换单元10和每一个数据缓存控制单元21,并且分配到备份的每一个单元在其自己的存储器中存储此备份(709)。
然后,协议转换单元10参考已从***管理单元60分配的与其相关的管理表,检查它们必须要访问的数据缓存控制单元21,并建立与相应的数据缓存控制单元21的逻辑信道(710)。
最后,协议转换单元10和数据缓存控制单元21确定所有的初始化操作是否正常结束并把结果通知给***管理单元60。***管理单元60确认所有协议转换单元10和数据缓存控制单元21的初始化的正常完成的通知,并确认其自初始化的正常完成(711)。在确认所有初始化正常完成后,开始正常读取/写入操作(712)。
图19是显示存储***1***关闭时的操作流程实例的流程图。
首先,当从管理控制台发出***关闭的通知时(721),***管理单元60发出指示指令接收终止的控制信息到协议转换单元10和数据缓存控制单元21。当这些单元收到此控制信息时,每一个单元暂停指令接收(722)。在指令接收暂停后,协议转换单元10和数据缓存控制单元21执行所有已收到的指令处理(723)。然后,协议转换单元10和数据缓存控制单元21以初始化时同样的方式收集它们的自***配置信息,并在***管理单元60中注册此配置信息(724)。然后,协议转换单元10和数据缓存控制单元21在***管理单元60中注册操作关闭是可能的事实(725)。
之后,协议转换单元10封锁与数据缓存控制单元21的逻辑信道。同样,协议转换单元10和数据缓存控制单元21封锁与***管理单元60的逻辑信道(726)。
最后,***管理单元60在非易失性存储器存储由协议转换单元10和数据缓存控制单元21注册的配置信息和***管理单元60中的配置信息(727)。之后,指示***准备关闭的显示(例如,“***关闭处理完成,可以关闭电源”)在管理控制台的显示器上显示,而且关闭电源(728)。
图20是显示存储在存储***1的数据从服务器3读取的情况的实例的流程图。
首先,服务器3对应于存储***1发出数据读取指令。
当在协议转换单元10中的外部IF100收到数据读取指令时,已“指令等待”(741)的微处理器102从外部IF100读取收到(742)的指令,并执行指令分析(743)。存储有服务器3请求的数据的逻辑单元(下面也叫做“LU”)由指令分析分配。微处理器102参考用于逻辑单元分配654的管理表,该管理表是在***初始化/交替的时候由***管理单元60分配的,和与微处理器的协议转换单元10相关的,并决定管理虚拟卷的数据缓存控制单元21,该虚拟卷配置记录有请求数据的LU(744)。
然后,微处理器从它们自己的数据转送控制单元105通过互连将数据读取请求发出到相应的数据缓存控制单元21的数据转送控制单元105(745)。收到读取请求的数据缓存控制单元21中的微处理器101访问控制存储器单元112,参考用于逻辑单元653的管理表,用于虚拟卷652的管理表,和用于物理器件651的管理表,并在虚拟卷1中分配虚拟卷1序号(VVOL1)631和地址641(746)。然后,微处理器101访问控制存储器单元112并从在虚拟卷1中相应的虚拟卷1序号631和地址641判断请求的数据是在它们的高速缓冲存储器单元111中(高速缓存命中)或不是(高速缓存未中)(747)。
在请求数据是在它们的高速缓冲存储器单元111中(高速缓存命中)的情况下,微处理器101指导它们自己的数据转送控制单元105以读取并将请求数据从高速缓冲存储器单元111转送到发出请求的协议转换单元10(755)。其自己的数据转送控制单元105通过互连31转送请求数据到发出请求的协议转换单元10的数据转送控制单元105(756)。收到请求数据的协议转换单元10的数据转送控制单元105通过外部IF100发送数据到服务器3(757)。
在请求数据不是在它们的高速缓冲存储器单元111中(高速缓存未中)的情况下,微处理器101在高速缓冲存储器单元111中分配区域以在其中存储请求数据(749)。在高速缓存区域分配后,微处理器111访问控制存储器单元112,参考用于物理器件651的管理表,并分配连接适配器序号610(物理器件(这里,为硬盘)所连接的协议转换单元10的序号),该序号管理配置请求虚拟卷1的物理器件(下面也叫做“PDEV”)(750)。
然后,微处理器101读取从它们自己的数据转送控制单元105到相应的协议转换单元10的数据转送控制单元105的请求数据,并发送控制信息指导传输到数据缓存控制单元21(分段运输)(751)。相应的协议转换单元10的微处理器102从它们自己的数据转送控制单元105接收此控制信息,参考用于物理器件651的管理表的备份和与它们相关的,该备份是在***初始化/交替的时候从***管理单元60发送的,确定从哪一个物理器件(PDEV:硬盘)读取数据,并从相应的硬盘读取数据(752)。
此数据是通过互连31从自己的数据转送控制单元105传输到发出请求的数据缓存控制单元21的数据转送控制单元105(753)。当它们自己的数据转送控制单元105收到请求数据,发出请求的数据缓存控制单元21的微处理器101写入数据到高速缓冲存储器单元111并更新存储在控制存储器单元112中的高速缓冲存储器的目录(754)。之后的操作流程和高速缓存命中情况下的操作流程755相同。
如上所述,对应于来自服务器3的读取请求从硬盘读取数据并发送到服务器3。
图21是显示数据从服务器3写入到存储***1的情况的实例的流程图。
首先,服务器3对应于存储***1发出数据写入指令。
当在协议转换单元10中的外部IF100收到一数据写入指令时,等待指令(761)的微处理器102读取从外部IF100收到的指令并执行指令分析(763)。微处理器102由指令分析分配逻辑单元(LU),其中记录存储服务器3请求的数据。微处理器102参考用于逻辑单元分配654的管理表,该管理表是在***初始化/交替的时候由***管理单元60分配的,且与微处理器的协议转换单元10相关的,并分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置其中记录请求数据的LU(764)。
这里,当管理虚拟卷的数据缓存控制单元21被增加一倍时,存储***1的可靠性可以提高。也就是,为每一虚拟卷确定管理卷的主数据缓存控制单元21和后备使用的数据缓存控制单元(下面也叫做“BCA”)21,而且数据写入到两者中。因此,在主数据缓存控制单元21中出现错误的情况下,有可能在后备数据缓存控制单元中继续操作。这种情况下,在764的处理中,后备使用的管理数据缓存控制单元21也在用于逻辑单元分配654的管理表中描述,并且分配其序号。下面,将描述确定后备使用的管理数据缓存控制单元21的例子。
微处理器102从它们自己的数据转送控制单元105通过互连31将一数据写入请求发送到相应的数据缓存控制单元21和后备使用的数据缓存控制单元21的数据转送控制单元105(765)。在收到写入请求的数据缓存控制单元21和后备使用的数据缓存控制单元21中的微处理器101,访问控制存储器单元112,参考用于逻辑单元653的管理表和用于虚拟卷652的管理表,并在虚拟卷1中分配虚拟卷1序号631和地址641(766)。然后,微处理器101访问控制存储器单元112,并从虚拟卷1中的虚拟卷1序号631和地址641判断要写入的请求数据是在它们的高速缓冲存储器单元111(高速缓存命中)中或不在(高速缓存未中)(767)。
在请求数据是在它们自己的高速缓冲存储器单元111中(高速缓存命中)的情况下,微处理器101通过数据转送控制单元105发出完成写入准备的请求(下面也叫做“写入准备完成”)通知协议转换单元10(770)。
请求数据不是在它们的高速缓冲存储器单元111中(高速缓存未中)的情况下,微处理器101在高速缓冲存储器单元111中分配一区域以在其中存储请求数据(769),并且之后发送准备完成(770)。
协议转换单元10的微处理器102通过外部IF100收到准备完成的通知并通知服务器3准备完成(771)。之后,协议转换单元10通过外部IF100收到发自服务器3的数据,该服务器已收到完成数据写入的通知(772)。微处理器102指示它们自己的数据转送控制单元105以发送数据到相应的数据缓存控制单元21和后备使用的数据缓存控制单元21中的数据转送控制单元105(773)。收到数据的数据缓存控制单元21和后备使用的数据缓存控制单元21的微处理器101在它们自己的高速缓冲存储器单元111中写入数据,并且更新控制存储器单元112中的高速缓冲存储器的目录(774)。当写入数据到高速缓冲存储器单元111结束后,数据缓存控制单元21和后备使用的数据缓存控制单元21的微处理器101通过数据转送控制单元105发送完成数据写入的通知给发出请求的协议转换单元10(775)。收到完成数据写入的通知的协议转换单元10的微处理器101通过外部IF100发送完成数据写入通知给服务器3。关于写入高速缓冲存储器单元111的数据,主数据缓存控制单元21的微处理器101确定高速缓冲存储器单元111的空闲容量,与来自服务器3的写入请求异步地,通过连接有硬盘的协议转换单元10,将数据写入至包含有在其中记录此数据的卷的硬盘(776)。
因而,对应于来自服务器3的写入请求在硬盘上执行写入操作。
图22显示依照第一实施例安装在机架中的存储***1的配置实例。
图22中,PA10,CA21,MA60,切换单元51和切换单元52分别以插件形式实现,并各个作为一PA刀片(blade)802,一CA插件801,一MA刀片804,和一SW刀片803安装在控制单元底盘821上。一底板(没有显示)提供给控制单元底盘821的背面,而且每一个插件和刀片通过连接器连接到底板。底板上形成有配线,从而以图2所示这样的配置相互连接插件和刀片。
与协议转换单元10和***管理单元60相比,数据缓存控制单元21安装的处理器和存储器容量的数量是较大的,以至CA插件801是其它刀片面积的两倍。同样,插件和刀片使用通用-目的/专用的在其上执行专用软件的刀片服务器。
控制单元底盘821上面提供的是4个磁盘单元底盘822,其安装有包含硬盘的硬盘单元811。控制单元底盘821下面提供的是电源单元底盘823,其容纳一给整个存储***1提供电源的电源单元。
那些磁盘单元底盘822,控制单元底盘821,和电源单元底盘823容纳在19英寸的机柜中(没有显示)。
应该注意的是存储***1可以采用不具有硬盘组的硬件配置,这种情况下,硬盘组通过PA10连接到存储***1,该组存在于与存储***1分离的位置。
依照本发明的第一实施例的具有以上配置的存储***中,因为为每一控制群集独立执行高速缓冲存储器的控制,所以高速缓冲存储器单元和控制存储器单元上的访问负载减少了。同样,因为通过在数据缓存控制单元中的微处理器而合并并且执行高速缓冲存储器的控制和在服务器和硬盘之间的数据传输,所以图36所示的现有技术所必须的内部处理器通信处理减少了。因而,有可能提高整个存储***1的性能。
同样,有可能由每一个控制群集操作存储***,因为为每一控制群集独立执行高速缓冲存储器的控制。因而,***的成本可由每一控制群集而优化,有可能以低成本提供小规模配置的***,并且有可能以满足***规模的成本提供一***。
第二实施例
下面,将对本发明的第二实施例进行描述。
图23是显示本发明第二实施例的配置的方框图。
图23中,除了连接数据缓存控制单元21和连接到服务器3的协议转换单元10的互连31,和连接数据缓存控制单元21和连接到硬盘2的协议转换单元10的互连35物理上是独立的之外,存储***1的配置和图2所示的第一实施例具有的配置是一样的。
互连31和互连35物理上是独立的而且不直接相连。
图24是说明互连31和互连35分别由切换单元51和切换单元52配置的情况的示例。切换单元52拥有一配置,其中对应于图3所示的切换单元51信道IF的总数是4条。
通过以这种方式配置***,作为准备两个独立的互连的结果是成本有提高的趋势,但是在数据缓存控制单元21和连接到服务器3的协议转换单元10之间的数据转送,和在数据缓存控制单元21和连接到硬盘2的协议转换单元10之间的数据转送不再如第一实施例的配置中相互干扰。同样,存储***1的性能提高了,这是因为有可能配置一规格的互连,该规格的互连与各个数据转送所需性能相匹配。
在第二实施例的配置中,可以没有问题获得与第一实施例相同的效果,而且有可能从小规模到大规模配置,提供成本/性能符合***规模的的存储***。
如图25所示,即使数据缓存控制单元21和协议转换单元10合并为在磁盘控制单元25中的一单个控制单元,并且安装在同一电路板上,实现本发明也没有问题。
图26是显示依照第二实施例的磁盘控制单元25的特殊例的方框图。
磁盘控制单元25至少包含4个微处理器101,一个控制与协议转换单元10或***管理单元60进行数据/控制信息的转送的数据转送控制单元105,4个连接硬盘2的IF(外部IF)100,一个暂存与服务器3或硬盘2交换的数据的高速缓冲存储器单元111,和一个存储与数据转送,高速缓冲存储器单元111的管理,和硬盘2的管理相关的控制信息的控制存储器单元112。
应该注意的是磁盘控制单元25可以配置成不仅仅连接于硬盘2,也可以连接到其它节点例如服务器3和存储***4。这种情况下,外部IF100对应于其它节点为执行协议转换而提供,并作用为信道控制单元。
每一个高速缓冲存储器单元111和控制存储器单元112由存储模块122和控制访问存储模块122的存储控制器121配置。这里,如果高速缓冲存储器单元111和控制存储器单元112每一个都有同样的存储控制器121和存储模块122,而且如果高速缓冲存储器区域和控制存储器区域分配到一单个存储器空间的不同区域,是没有问题的。同样,每一个微处理器包含一连接到其自身的作为主存储器的存储器(没有显示)。可选择的,如果4个微处理器拥有一SMP配置,该配置中它们共享高速缓冲存储器单元111和控制存储器单元112作为它们自己的主存储器,是没有问题的。
微处理器101,高速缓冲存储器单元111,控制存储器单元112,外部IF100,和数据转送控制单元105通过切换109连接。微处理器101使用存储在控制存储器单元的控制信息来控制读取/写入到高速缓冲存储器的数据,高速缓冲存储器的目录管理,与协议转换单元10和硬盘2的数据转送,和***管理单元60交换***管理信息。微处理器101也执行所谓的RAID处理,或者写入到与协议转换单元10连接的硬盘2的数据的冗余处理。
这里,微处理器101,高速缓冲存储器单元111,控制存储器单元112,外部IF100,和数据转送控制单元105中的连接配置只作为示例,也不意味限制那里的连接配置。只要连接配置允许微处理器101控制高速缓冲存储器单元111,控制存储器单元112,外部IF100,和数据转送控制单元105,就没有问题。
同样,如图25所示,因为数据和控制信息的通信是通过连接两个构成控制群集的磁盘控制单元25的连接信道而执行,所以两个内部IF126连接到切换109。通过用连接信道互连两个磁盘控制单元25的内部IF126,数据和控制信息的通信通过连接信道执行。例如,存储在两个磁盘控制单元25的高速缓冲存储器单元111或控制存储器单元112中的信息的加倍通过连接信道执行。因而,在构成控制群集72的两个磁盘控制单元25中的一个出现错误的情况下,因为有可能用另一个磁盘控制单元持续存储***的操作,所以存储***的可靠性提高了。
如上所述,在本发明的第二实施例中,通过使用数据缓存控制单元21和协议转换单元10作为一单个控制单元,在磁盘控制单元25中合并它们并在单个电路板上安装它们,对于数据缓存控制单元21和协议转换单元10就没有必要与切换单元52通信,以至提高了数据转送性能。同样,有可能减少存储***的成本,因为构成控制群集的部分的数目减少了。
第三实施例
下面,本发明的第三实施例将在下面描述。
图27是显示本发明的第三实施例的方框图。
图27中,除了互连31被分成了一互连41和一互连42,而且***管理单元60连接到互连42之外,存储***1的配置和图1所示的第一实施例的配置是一样的。
互连41是数据转送专用的互连,互连42是控制信息转送专用的互连。因而,执行存储***1的管理的***管理单元60连接到互连42。
通过以这种方式配置***,依照本发明的第三实施例,数据传输和控制信息的转送不再互相干扰。同样,存储***1的性能提高了,因为有可能配置一规格的互连,该规格与各个转送所要求的性能相匹配。
即使第三实施例的配置应用于图8所示的第一实施例的配置或图23所示的第二实施例的配置,实现本发明也没有问题。
在本实施例的配置中,获得与第一实施例相同的那些效果是没有问题的,且有可能从小规模到大规模配置,提供成本/性能符合***规模的存储***。
第四实施例
下面,本发明的第四实施例将在下面描述。
在本发明的第一实施例中,对应于图1和8所示的配置的存储***1,描述了一***,其中高速缓冲存储器单元111的管理位于控制群集70和71中。也就是,在指定的控制群集70或71中的数据缓存控制单元21内的微处理器101只管理在该控制群集70或71中的高速缓冲存储器单元111和控制存储器单元112,并不管理另一控制群集70或71中的高速缓冲存储器单元111和控制存储器单元112。
在第四实施例中,将描述一控制方法,其中,图1和图8所示的物理地分别位于多个控制群集70和71中的高速缓冲存储器单元111和控制存储器单元112,作为单个存储器地址空间通过整个存储***1而控制,从而多个高速缓冲存储器和控制存储器单元112可由整个存储***1的微处理器101和102分别逻辑控制。
这里,多个高速缓冲存储器和控制存储器单元112由整个存储***1的微处理器101和102分别逻辑控制是指:***中明确指定的全局地址被物理地分配给多个存储器单元而且每一个处理器拥有此全局地址地图,从而所有的微处理器101和102可以访问存储在任一个高速缓冲存储器单元111或控制存储器单元112中的数据或控制信息。
整个存储***的管理配置和图11所示的配置是一样的。这里,逻辑单元分配表654存储在***管理单元60的存储器中,该表显示了在提供给用户的LU和管理配置LU的虚拟卷的数据缓存控制单元21之间的相应的关系。
在第一实施例中,与协议转换单元10相关的用于逻辑单元分配654的管理表的部分的备份发送到相应的协议转换单元10,而且此协议转换单元10在与微处理器102相连的存储器中存储此备份。然而,在第四实施例中,没有执行此备份的分配。与其一起,关于图18所示的***初始化的时候的操作流程,除去步骤709的处理中把用于逻辑单元分配654的管理表的备份分配到协议转换单元10的分配处理。
这里,在本实施例中,将描述从服务器3读取存储***1记录的数据的情况的示例。
首先,服务器3对应于存储***1发出数据读取指令。这里,指令分析处理与图20描述的第一实施例的方法中的处理是一样的。之后的请求目的地CA确认处理(744)的方法是不同的。也就是,微处理器102访问***管理单元60,参考与它们自己的协议转换单元10相关的用于逻辑单元分配654的管理表,并分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置其中记录请求的数据的LU。之后的处理(745到757)和图20描述的第一实施例的处理是一样的。
下面,将描述从服务器3写入数据到存储***1的情况的示例。首先,服务器3对应于存储***1发出数据写入指令。这里,指令分析处理与图21描述的第一实施例的方法中的处理是一样的。之后的请求目的地CA确认处理(764)的方法是不同的。也就是,微处理器102访问***管理单元60,参考与它们自己的协议转换单元10相关的用于逻辑单元分配654的管理表,并分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置其中记录请求数据的LU(764)。之后的处理(765到776)和图21描述的第一实施例的方法的处理是一样的。
上述中,每一次读取或写入数据的时候访问***管理单元60,而且分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置LU成为读取或写入的目标。然而,即使整个存储***的用于逻辑单元分配654的管理表存储在数据缓存控制单元21的所有控制存储器单元112中,实现本发明也没有问题。这种情况下,图20和21所示的请求目的地CA确认处理(744,764)的方法是不同的。
也就是,每一个协议转换单元10由于在***初始化的时候来自管理终端的设定,预定发送数据读取/写入请求的数据缓存控制单元21。这时,分配给数据缓存控制单元21的协议转换单元10的数目通过数据缓存控制单元21设定成尽可能平均。之后,每一个数据缓存控制单元21的访问负载可以做的均等。在请求目的地CA确认处理(744,764)中,微处理器102访问预定的数据缓存控制单元21,参考与它们自己的协议转换单元10相关的用于逻辑单元分配654的管理表格,并分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置其中记录请求数据的LU。过程的其余部分和图20和21描述的过程是一样的。
即使在图20和21的处理中的指令接收(742,762)之后,指令传输到数据缓存控制单元21的微处理器101并且指令分析(743,763)通过微处理器101而执行,实现本发明也没有问题。这种情况下,在请求目的地CA确认处理(744,764)中,微处理器101参考存储在控制控制存储器单元112中的用于逻辑单元分配654的管理表,并分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置其中记录请求数据的LU。当相应的数据缓存控制单元21不是收到指令的微处理器所属于的数据缓存控制单元21的情况下,微处理器101访问相应的数据缓存控制单元21中的高速缓冲存储器单元111和控制存储器单元112,并执行从745或765开始的处理。
可选择的,指令传输到相应的数据缓存控制单元21中的微处理器101,并且通过相应的数据缓存控制单元21中的微处理器101,高速缓冲存储器单元111,和控制存储器单元112执行从745或765开始的处理。
因而,依照本发明的第四实施例,在协议转换单元10中放置微处理器102就变得没有必要。
即使第四实施例的控制方法应用到图2和9所示的第一实施例,图24和25所示的第二实施例,或图27所示的第三实施例的配置,实现本发明也没有问题。
在第四实施例的配置中,可没有问题获得与第一实施例相同的效果,而且有可能从小规模到大规模配置,提供成本/性能符合***规模的的存储***。
第五实施例
下面,将描述本发明的第五实施例。
图28和29是显示依照本发明的第五实施例的存储***的方框图。
如图所示,除了没有***管理单元60之外,存储***1拥有图1和2所示的第一实施例一样的配置。
第五实施例中,相似于第四实施例,在多个控制群集70中物理分开的高速缓冲存储器单元111和控制存储器单元112作为单个存储器地址空间由整个存储***1控制。因而,多个高速缓冲存储器111和控制存储器单元112由整个存储***1的微处理器101和102分别逻辑共享。
在第一实施例中***管理单元60中创建并存储在其存储器中的用于物理器件651的管理表,用于虚拟卷652的管理表,用于逻辑单元653的管理表,和用于逻辑单元分配654的管理表由连接到每一处理器的管理终端创建,该连接是通过专用网络例如局域网(LAN)或互连31,并且与每一个协议转换单元10和数据缓存控制单元21相关的部分的备份分别存储在相应的协议转换单元10和数据缓存控制单元21中的存储器里。
以这种方式在存储器中存储管理表的情况下,数据的读取和写入顺序变得和图20和21所示的顺序一样。
同样,整个***的用于逻辑单元分配654的管理表可以存储在数据缓存控制单元21中的所有控制存储器单元112里。这种情况下,图20和21所示的请求目的地CA确认处理(744,764)的方法是不同的。也就是,每一个协议转换单元10由于在***初始化的时候来自管理终端的设定而预先确定发送数据读取/写入请求的数据缓存控制单元21。这时,分配给数据缓存控制单元21的协议转换单元10的数目通过数据缓存控制单元21的设定而变得尽可能的平均。
因此,每一数据缓存控制单元21上的访问负载可变得平均。在请求目的地CA确认处理(744,764)中,微处理器102访问预定的数据缓存控制单元21,参考与它们自己的协议转换单元10相关的用于逻辑单元分配654的管理表,并且分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置其中记录请求数据的LU。剩下的顺序和图20和21描述的是一样的。
即使在图20和21的处理中的指令接收(742,762)之后,指令传输到数据缓存控制单元21的微处理器101并且指令分析(743,763)通过微处理器101而执行,实现本发明也没有问题。这种情况下,在请求目的地CA确认处理(744,764)中,微处理器101参考存储在控制存储器单元112的用于逻辑单元分配654的管理表,并分配管理虚拟卷的数据缓存控制单元21,该虚拟卷配置其中记录有请求数据的LU。当相应的数据缓存控制单元21不是收到指令的微处理器所属于的数据缓存控制单元21的情况下,微处理器101访问在相应的数据缓存控制单元21中的高速缓冲存储器单元111和控制存储器单元112并执行从745或765开始的处理。
可选择的,指令传输到相应的数据缓存控制单元21中的微处理器101,并且通过相应的数据缓存控制单元21中的微处理器101,高速缓冲存储器单元111,和控制存储器单元112执行从745或765开始的处理。
因而,依照本发明的第五实施例,在协议转换单元10中放置微处理器102变得没有必要。在本实施例的配置中,可没有问题地获得与第一实施例相同的效果,而且有可能从小规模到大规模配置,提供成本/性能符合***规模的存储***。
第六实施例
下面依照本发明的第六实施例描述存储***。
图30是显示依照第六实施例的存储***的配置的方框图。图30与第一实施例的图1相似,而且两者之间的唯一不同是图30拥有***管理信息存储器单元160而取代图1的***管理单元60。与第一到第五实施例中的那些部件作用相同的图30中的部件用同样的参考数字指示,这里就省略了这样的部件的描述。
如第一实施例中描述的,***管理单元60管理存储***1的配置的信息或者类似的信息。在本实施例中,***管理信息存储器单元160存储关于存储***1的配置的管理信息,而且基于存储的管理信息的存储***1的管理不是***管理信息存储器单元160的任务,而是数据缓存控制单元21其中之一的微处理器的任务。
图31是显示***管理信息存储器单元160的特殊配置实例的方框图。
***管理信息存储器单元160包含数据转送控制单元105,存储控制器121,和存储模块122。
本实施例的存储***设定成:控制群集70其中之一的数据缓存控制单元21其中之一的微处理器接管由之前的实施例中***管理单元60的微处理器101执行的处理。存储***的管理信息存储在***管理信息存储器单元160中。哪一个微处理器101来管理***是通过与数据缓存控制单元21其中之一相连的管理控制台提前确定,该数据缓存控制单元21拥有选中的微处理器101。
因而选出的微处理器101执行与上述***管理单元60操作的处理相同的处理。更明确的,分配来管理存储***1的微处理器101通过组织管理信息获得整个存储***1的管理信息。通过协议转换单元10和数据缓存控制单元21收集的是互连31的管理信息,用户在通过互连31连接的管理控制台上设定的信息,和其它的信息。组织的管理信息存储在***管理信息存储器单元160的存储模块122中,并由管理存储***1的所述微处理器101使用。
例如,图11所示的管理配置中,存储管理单元501,逻辑信道管理单元502,和网络管理单元503在分配来管理***的微处理器101中以软件程序执行。更明确的,分配来管理***的微处理器101执行第一实施例的***启动处理(图18),***关闭处理(图19)和其它处理。
在第六实施例的如此构造的存储***中,在控制群集其中之一的数据缓存控制单元21之一中的微处理器101管理整个存储***配置。管理***必要的管理信息存储在***管理信息存储器单元160中提供的存储器里。这种情况下,没有了提供具有***管理单元60的存储***1,且该***管理单元1包含微处理器101的需求,而且存储***的全部成本可以相应的减少。
进一步的,互连31可以如第三实施例(图27)分成专用于数据传输的互连41和专用于控制信息传输的互连42。这种情况下,防止了数据传输和控制信息的传输的互相干扰。另外,因为每一互连可以构造以符合各个最佳传输类型的条件,所以存储***1的性能可以提高。
也有可能如第五实施例(图28和29)省略***管理信息存储器单元160。这种情况下,已分配来管理整个存储***1的微处理器101逻辑共享高速缓冲存储器单元111和控制存储器单元112,而且在微处理器101中创建管理表以管理***。因此,这样构成的存储***使得有可能提供成本和性能符合***规模的存储***,不管它是小规模***还是大规模***。
第七实施例
下面依照本发明的第七实施例描述存储***。
图32是显示依照第七实施例的存储***的配置的方框图。图32中与第一到第六实施例中以相同方式作用的组件由同样的参考数字指示,这里省略了这样组件的描述。
在第七实施例中,服务器3连接到通过互连31互连的协议转换单元10。硬盘通过一互连37连接到磁盘控制单元25。这种情况下,可通过互相独立的信道在服务器3和协议转换单元10之间以及在磁盘控制单元25和硬盘2之间交换数据。因而在除去瓶颈的两互连之间分配负载。
参考图26的上述中,为了通过互连两个采用控制群集配置的磁盘控制单元25的一连接信道而通信数据和控制信息,每一个磁盘控制单元25拥有两个内部IF126所连接的切换109。两个磁盘控制单元25中之一的一个内部IF126通过连接信道连接到另一个磁盘控制单元中的一个内部IF126,以至这两个磁盘控制单元25可以通过这条连接信道互相通信数据和控制信息。例如,要在两个磁盘控制单元25中的高速缓冲存储器单元111或控制存储器单元112存储的信息通过一连接信道而达到双工,该连接信道使得,当组成一个控制群集72的两个磁盘控制单元25中之一中出现错误时,存储***通过使用两个磁盘控制单元25中的另一个而持续操作。存储***因此提高了可靠性。
在如此构成的第七实施例的存储***中,两个相互独立的互连分别连接控制群集72到协议转换单元10和硬盘2。提供互相独立的互连可能会提高成本,但是它不同于第一实施例,它防止了从磁盘控制单元25到连接到服务器3的协议转换单元10的数据传输,和从磁盘控制单元25到硬盘2的数据传输的相互干扰。另外,存储***1的性能可以提高因为每一互连可以构造以符合各个最佳传输类型的条件。进一步,相互连接磁盘控制单元25和硬盘2的连接信道可以自由设定,其允许硬盘2可以灵活的改变它们的配置。
进一步,如上述的第六实施例,第七实施例的存储***可以拥有图31所示的***管理信息存储器单元160,而取代了具有微处理器101的***管理单元60,该微处理器101是在一分配来管理***的磁盘控制单元25中。因而,没有了提供一具有***管理单元60的存储***1且该***管理单元60具有一微处理器101的需求,并且存储***的整个成本可以相应的减少了。
对于互连31也有可能如第三实施例(图27)分成专用于数据传输的互连41和专用于控制信息传输的互连42。
第八实施例
下面依照本发明的第八实施例描述一存储***。
图33是显示依照第八实施例的存储***的配置的方框图。与第一到第七实施例的组件以同样方式作用的图33中的组件由同样的参考数字指示,而且这里省略了这样组件的描述。
第八实施例中,服务器3直接连接到信道控制单元25,该信道控制单元25通过互连31连接到协议转换单元10。协议转换单元10连接到硬盘2。
应该注意的是,信道控制单元25具有与上述的磁盘控制单元25同样的配置,该配置相应于由数据缓存控制单元21和协议转换单元10组成的每一个控制单元。因此,连接到硬盘2的磁盘控制单元25的配置与连接到用户例如服务器3的信道控制单元25的配置相同。
信道控制单元25的高速缓冲存储器单元111存储在存储***1和连接到信道控制单元25的服务器3之间交换的输入/输出数据。两个信道控制单元25组成一个控制群集73,而且高速缓冲存储器单元111和控制存储器单元112由在控制群集73中的闭合管理而管理。
进一步,尽管图33中组成单个控制群集73的信道控制单元25是相互独立的,为了通过如图25和26所示的互连两个信道控制单元25的连接信道而通信数据和控制信息,两个内部IF126可以连接到两个信道控制单元25其中每一个的切换109,该两个信道控制单元25采用控制群集配置。两个信道控制单元25其中之一的一个内部IF126通过连接信道连接到另一个信道控制单元中的一个内部IF126,以至两个信道控制单元125可以通过此连接信道相互通信数据和控制信息。例如,要在两个磁盘控制单元25中的高速缓冲存储器单元111或控制存储器单元112存储的信息通过一连接信道而达到双工,该连接信道使得,当组成一个控制群集72的两个磁盘控制单元25中之一中出现错误时,存储***通过使用两个磁盘控制单元25中的另一个而持续操作。存储***因此可以提高可靠性。
另外,连接到服务器3的信道控制单元25通过每一控制群集73中的闭合管理而管理高速缓存和控制信息。这种情况下,提高了高速缓存命中率,从而,提高了存储***的数据吞吐量。
进一步,如上述的第六实施例所描述的,第八实施例的存储***可以拥有图31所示的***管理信息存储器单元160,而取代具有微处理器101的***管理单元60,该微处理器是在分配来管理***的一个信道控制单元25中。
进一步,互连31可以如第三实施例(图27)中分成专用于数据传输的互连41和专用于控制信息的传输的互连42。
也有可能如第五实施例(图28和29)省略***管理单元60。这种情况下,微处理器101和102逻辑共享高速缓冲存储器单元111和控制存储器单元112,而且在微处理器101和102中分别创建管理表以管理整个存储***1。
第九实施例
下面依照本发明的第九实施例描述存储***。
图34是显示依照第九实施例的存储***的配置的方框图。图34中与第一到第八实施例中以相同方式作用的组件通过同样的参考数字指示,这里删除了这样组件的描述。
在第九实施例中,连接到服务器3的信道控制单元25和连接到硬盘2的磁盘控制单元25都连接到互连31。两个信道控制单元25或两个磁盘控制单元25采用了一控制群集配置。
尽管图34中组成一控制群集73的信道控制单元25相互独立,但是为了通过如图25和26所示的互连两个信道控制单元25的连接信道而通信数据和控制信息,两个内部IF126可以连接到两个信道控制单元25其中的每一个的切换109,该两个信道控制单元采用一控制群集配置。在两个信道控制单元25其中之一的一个内部IF126通过连接信道连接到另一信道控制单元中的一个内部IF126,以至两个信道控制单元25可以通过此连接信道相互通信数据和控制信息。例如,要在两个信道控制单元25中的高速缓冲存储器单元111或控制存储器单元112存储的信息通过一连接信道而达到双工,该连接信道使得,当组成一个控制群集72的两个信道控制单元25中之一中出现错误时,存储***通过使用两个信道控制单元25中的另一个而持续操作。存储***因此可以提高可靠性。
应该注意的是,包含信道控制单元25的一控制群集73提供给服务器3,同时包含磁盘控制单元25的另一控制群集73提供给硬盘2,而且高速缓存和控制信息通过每一个控制群集内的闭合管理而管理。这种情况下,限制***配置到最小必要条件时,从而削减了成本和提高了高速缓存命中率,从而提高了***的数据吞吐量。
进一步,第九实施例的存储***可以如上述的第六实施例,拥有图31所示的***管理信息存储器单元160,而取代具有微处理器101的***管理单元60,该微处理器101在分配来管理***的一信道控制单元25或磁盘控制单元25中。
另外,互连31可以如第三实施例(图27)分成专用于数据传输的互连41和专用于控制信息传输的互连42。
也有可能如第九实施例中(图28和29)省略***管理单元60。这种情况下,微处理器101和102逻辑共享高速缓冲存储器单元111和控制存储器单元112,而且分别在微处理器101和102中创建管理表来管理整个存储***1。
第十实施例
下面依照本发明的第十实施例描述存储***。
图35是显示依照第十实施例的存储***的配置的方框图。图35和第一实施例的图1近似,而且两者之间的唯一不同是图35有一连接到数据缓存控制单元21的不同于互连31的互连38。图35中与第一到第九实施例中以相同方式作用的组件由同样的参考数字指示,这里省略这样组件的描述。
连接到数据缓存控制单元21的互连38使得数据缓存控制单元21可以互相转送存储在数据缓存控制单元的高速缓冲存储器单元111或控制存储器单元112中的内容。采用群集配置的数据缓存控制单元21通过参考图10所述的信道相互连接。
通过提供的互连31之外的连接数据缓存控制单元21的互连,在连接到服务器3的协议转换单元10之间传输的数据通过互连31操作,同时数据缓存控制单元21之间的数据传输通过互连38操作,从而防止了两者的互相干扰。另外,互连31和互连38可以构造以符合各个最佳数据传输类型的条件。
因而构造的第十实施例的存储***使用互连38来互连数据缓存控制单元21,从而便利了在数据缓存控制单元21之间的控制信息,高速缓存数据,和类似的交换。特别的,当数据缓存控制单元21是作为***修改或类似的结果而新加入的情况下,存储在现有数据缓存控制单元21的高速缓存和控制信息可以通过互连38发送到所加的还没有存储高速缓存或控制信息的数据缓存控制单元21,而不影响服务器3和硬盘2之间的数据传输,即使数据缓存控制单元21中正执行的数据交换。因此提高了***的数据吞吐量。
应该注意的是,第十实施例的存储***可以拥有图31所示的***管理信息存储器单元160,而取代具有一个数据缓存控制单元21中的分配来管理***的微处理器101的***管理单元60。
进一步,互连31和38每一个可以如第三实施例(图27)分成专用于数据传输的互连41和专用于控制信息传输的互连42。
也有可能如第五实施例中(图28和29)的存储***1省略***管理单元60。这种情况下,微处理器101和102逻辑共享高速缓冲存储器单元111和控制存储器单元112,而且通过微处理器101和102创建管理表来管理整个存储***1。
本发明已详细描述并且在附图中作图描述,本发明并不局限于这样的细节,但是涵盖了在附加的权利要求的范围内的不同的明显的修改和相等的配置。
Claims (52)
1.一种存储***,包括:
多个协议转换单元,每一个都包括到外部设备的接口,并把用于读取和写入与外部设备交换的数据的协议转换为存储***内的协议;
多个磁盘控制单元,每一个磁盘控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;存储读取自/写入到硬盘单元的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中:
所述多个协议转换单元和所述多个磁盘控制单元通过第一互连互相连接,
所述多个磁盘控制单元和硬盘单元通过第二互连互相连接,
所述多个磁盘控制单元被分成每一个包括至少2个或更多的磁盘控制单元的多个控制群集,
高速缓冲存储器的控制对于所述多个控制群集中的每一个独立地执行,
所述多个控制群集的每一个包含所述多个磁盘控制单元,以及
所述多个磁盘控制单元之一具有至少一个处理器,且由所述多个磁盘控制单元之一中的处理器将所述多个协议转换单元和所述多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
2.根据权利要求1的存储***,其中:
在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的磁盘控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到决定的微处理器。
3.根据权利要求2的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
4.根据权利要求2的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
5.根据权利要求1的存储***,其中:
在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的磁盘控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到决定的微处理器。
6.根据权利要求5的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到决定的高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
7.根据权利要求5的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
8.一种存储***,包括:
多个协议转换单元,每一个都包括到硬盘单元的接口,并把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;
多个信道控制单元,每一个信道控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与外部设备交换的数据的协议转换为存储***内的协议;存储读取自/写入到硬盘单元的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中
所述多个协议转换单元和所述多个信道控制单元通过互连互相连接,
所述多个信道控制单元被分成每一个包括2个或更多的信道控制单元的多个控制群集,
所述多个控制群集的每一个中的所述多个信道控制单元的每一个的高速缓冲存储器只存储外部设备使用的数据,该外部设备连接到所述多个控制群集的每一个中的所述多个接口的每一个,
高速缓冲存储器的控制和硬盘单元的存储区域的管理对于所述多个控制群集中的每一个独立地执行,以及
所述多个信道控制单元之一具有至少一个处理器,且由所述多个信道控制单元之一中的处理器将所述多个协议转换单元和所述多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
9.根据权利要求8的存储***,其中:
在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的的信道控制单元中的微处理器和相应的高速缓冲存储器,并发出数据读取请求到决定的微处理器。
10.根据权利要求9的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
11.根据权利要求9的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
12.根据权利要求8的存储***,其中:
在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的信道控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到决定的微处理器。
13.根据权利要求12的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到决定的高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
14.根据权利要求12的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
15.一种存储***,包括:
多个信道控制单元,每一个信道控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;存储读取自/写入到外部设备和硬盘单元中之一的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中
所述多个信道控制单元通过互连互相连接,
所述多个信道控制单元被分成每一个包括2个或更多的信道控制单元的多个控制群集,
高速缓冲存储器的控制对于所述多个控制群集中的每一个独立地执行,以及
所述多个信道控制单元之一具有至少一个处理器,且由所述多个信道控制单元之一中的处理器将所述多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
16.根据权利要求15的存储***,其中:
在接收来自外部设备的数据读取指令的基础上,每一信道控制单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的信道控制单元的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到决定的微处理器。
17.根据权利要求16的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
18.根据权利要求16的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
19.根据权利要求15的存储***,其中:
在接收来自外部设备的数据写入指令和写入数据的基础上,每一信道控制单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的信道控制单元的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到决定的微处理器。
20.根据权利要求19的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到决定的高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
21.根据权利要求19的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
22.一种存储***,包括:
多个协议转换单元,每一个把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;
多个数据缓存控制单元,每一个都包括高速缓冲存储器,该高速缓冲存储器存储读取自/写入到外部设备和硬盘单元其中之一的数据,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,其中
所述多个协议转换单元和所述多个数据缓存控制单元通过第一互连互相连接,
所述多个数据缓存控制单元通过第二互连互相连接,
所述多个数据缓存控制单元被分成每一个包括至少2个或更多的数据缓存控制单元的多个控制群集,
所述多个控制群集的每一个中的所述多个数据缓存控制单元互相连接,
高速缓冲存储器的控制对于所述多个控制群集中的每一个独立地执行,以及
其中,所述多个数据缓存控制单元之一具有至少一个处理器,且由所述多个数据缓存控制单元之一中的处理器将所述多个协议转换单元和所述多个控制群集作为单个***管理,并读取管理信息存储器单元中存储的管理信息。
23.根据权利要求22的存储***,其中:
在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的缓存控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到决定的微处理器。
24.根据权利要求23的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
25.根据权利要求23的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
26.根据权利要求22的存储***,其中:
在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的缓存控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到决定的微处理器。
27.根据权利要求26的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到决定的高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
28.根据权利要求26的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
29.一种存储***,包括:
多个协议转换单元,每一个都包括到外部设备的接口,并把用于读取和写入与外部设备交换的数据的协议转换为存储***内的协议;
多个磁盘控制单元,每一个磁盘控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;存储读取自/写入到硬盘单元的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中:
所述多个协议转换单元和所述多个磁盘控制单元通过第一互连互相连接,
所述多个磁盘控制单元和硬盘单元通过第二互连互相连接,
在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的磁盘控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到决定的微处理器。
30.根据权利要求29的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
31.根据权利要求30的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
32.一种存储***,包括:
多个协议转换单元,每一个都包括到外部设备的接口,并把用于读取和写入与外部设备交换的数据的协议转换为存储***内的协议;
多个磁盘控制单元,每一个磁盘控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;存储读取自/写入到硬盘单元的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中:
所述多个协议转换单元和所述多个磁盘控制单元通过第一互连互相连接,
所述多个磁盘控制单元和硬盘单元通过第二互连互相连接,
在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的磁盘控制单元中的微处理器和相应的高速缓冲存储器,并发出数据写入请求到决定的微处理器。
33.根据权利要求32的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到决定的高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
34.根据权利要求32的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
35.一种存储***,包括:
多个协议转换单元,每一个都包括到硬盘单元的接口,并把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;
多个信道控制单元,每一个信道控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与外部设备交换的数据的协议转换为存储***内的协议;存储读取自/写入到硬盘单元的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中
所述多个协议转换单元和所述多个信道控制单元通过互连互相连接,
在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的信道控制单元中的微处理器和相应的高速缓冲存储器,并发出数据读取请求到决定的微处理器。
36.根据权利要求35的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
37.根据权利要求35的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
38.一种存储***,包括:
多个协议转换单元,每一个都包括到硬盘单元的接口,并把用于读取和写入与硬盘单元交换的数据的协议转换为存储***内的协议;
多个信道控制单元,每一个信道控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与外部设备交换的数据的协议转换为存储***内的协议;存储读取自/写入到硬盘单元的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中
所述多个协议转换单元和所述多个信道控制单元通过互连互相连接,
在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的信道控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到决定的微处理器。
39.根据权利要求38的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到决定的高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
40.根据权利要求38的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
41.一种存储***,包括:
多个信道控制单元,每一个信道控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;存储读取自/写入到外部设备和硬盘单元中之一的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中
所述多个信道控制单元通过互连互相连接,
在接收来自外部设备的数据读取指令的基础上,每一信道控制单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的信道控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到决定的微处理器。
42.根据权利要求41的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
43.根据权利要求41的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
44.一种存储***,包括:
多个信道控制单元,每一个信道控制单元都包括:多个接口,所述多个接口中的每个接口把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;存储读取自/写入到外部设备和硬盘单元中之一的数据的高速缓冲存储器;控制高速缓冲存储器的微处理器;和存储存储***的管理信息的管理信息存储器单元,其中
所述多个信道控制单元通过互连互相连接,
在接收来自外部设备的数据写入指令和写入数据的基础上,每一信道控制单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的信道控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到决定的微处理器。
45.根据权利要求44的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到决定的高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
46.根据权利要求44的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
47.一种存储***,包括:
多个协议转换单元,每一个把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;
多个数据缓存控制单元,每一个都包括高速缓冲存储器,该高速缓冲存储器存储读取自/写入到外部设备和硬盘单元其中之一的数据,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,其由
所述多个协议转换单元和所述多个数据缓存控制单元通过第一互连互相连接,
所述多个数据缓存控制单元通过第二互连互相连接,
在接收来自外部设备的数据读取指令的基础上,每一协议转换单元进行数据读取指令的指令分析,以确定多个逻辑单元中的记录了外部设备请求的数据的逻辑单元且决定管理确定的逻辑单元的缓存控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据读取请求到决定的微处理器。
48.根据权利要求47的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据在决定的高速缓冲存储器中的基础上,决定的微处理器从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
49.根据权利要求47的存储***,其中:
在接收数据读取请求的基础上,决定的微处理器确定请求的数据是否在决定的高速缓冲存储器中,
在确定请求的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储请求的数据的区域,从硬盘单元读取请求的数据,将来自硬盘单元的请求的数据存储在决定的高速缓冲存储器中,并从决定的高速缓冲存储器读取请求的数据并转送到发出数据读取请求的协议转换单元,以及
在接收请求的数据的基础上,协议转换单元将请求的数据发送到外部设备。
50.一种存储***,包括:
多个协议转换单元,每一个把用于读取和写入与外部设备和硬盘单元中之一交换的数据的协议转换为存储***内的协议;
多个数据缓存控制单元,每一个都包括高速缓冲存储器,该高速缓冲存储器存储读取自/写入到外部设备和硬盘单元其中之一的数据,控制高速缓冲存储器的微处理器,和存储存储***的管理信息的管理信息存储器单元,其中
所述多个协议转换单元和所述多个数据缓存控制单元通过第一互连互相连接,
所述多个数据缓存控制单元通过第二互连互相连接,
在接收来自外部设备的数据写入指令和写入数据的基础上,每一协议转换单元进行数据写入指令的指令分析,以确定多个逻辑单元中的记录了相应于写入数据的数据的逻辑单元且决定管理确定的逻辑单元的缓存控制单元中的微处理器和相应的高速缓冲存储器,并且发出数据写入请求到决定的微处理器。
51.根据权利要求50的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及
在确定相应于写入数据的数据在决定的高速缓冲存储器中的基础上,决定的微处理器将写入数据写入到高速缓冲存储器中,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
52.根据权利要求50的存储***,其中:
在接收数据写入请求的基础上,决定的微处理器确定相应于写入数据的数据是否在决定的高速缓冲存储器中,以及在确定相应于写入数据的数据不在决定的高速缓冲存储器中的基础上,决定的微处理器分配决定的高速缓冲存储器中存储相应于写入数据的数据的区域,从硬盘单元读取相应于写入数据的数据,将来自硬盘单元的相应于写入数据的数据存储在决定的高速缓冲存储器中,在决定的高速缓冲存储器中写入写入数据,并将数据写入指令的完成通知给发出数据写入请求的协议转换单元。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004118986 | 2004-04-14 | ||
JP2004118986A JP4528551B2 (ja) | 2004-04-14 | 2004-04-14 | ストレージシステム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004101041170A Division CN1323346C (zh) | 2004-04-14 | 2004-12-29 | 存储*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101131623A CN101131623A (zh) | 2008-02-27 |
CN100562842C true CN100562842C (zh) | 2009-11-25 |
Family
ID=34927835
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004101041170A Active CN1323346C (zh) | 2004-04-14 | 2004-12-29 | 存储*** |
CNB2007101077547A Active CN100562842C (zh) | 2004-04-14 | 2004-12-29 | 存储*** |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004101041170A Active CN1323346C (zh) | 2004-04-14 | 2004-12-29 | 存储*** |
Country Status (4)
Country | Link |
---|---|
US (3) | US7120739B2 (zh) |
EP (1) | EP1586986A3 (zh) |
JP (1) | JP4528551B2 (zh) |
CN (2) | CN1323346C (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWM253155U (en) * | 2004-02-17 | 2004-12-11 | Fine Appliance Corp | Integrated storage and network function interface card |
JP4528551B2 (ja) * | 2004-04-14 | 2010-08-18 | 株式会社日立製作所 | ストレージシステム |
JP4504762B2 (ja) * | 2004-08-19 | 2010-07-14 | 株式会社日立製作所 | ストレージネットワークの移行方法、管理装置、管理プログラムおよびストレージネットワークシステム |
US8189599B2 (en) | 2005-08-23 | 2012-05-29 | Rpx Corporation | Omni-protocol engine for reconfigurable bit-stream processing in high-speed networks |
US8484213B2 (en) * | 2005-08-31 | 2013-07-09 | International Business Machines Corporation | Heterogenous high availability cluster manager |
JP2007102452A (ja) * | 2005-10-04 | 2007-04-19 | Fujitsu Ltd | システム管理プログラムおよびシステム管理方法 |
US7827442B2 (en) * | 2006-01-23 | 2010-11-02 | Slt Logic Llc | Shelf management controller with hardware/software implemented dual redundant configuration |
JP5089896B2 (ja) * | 2006-03-17 | 2012-12-05 | 株式会社日立製作所 | マイクロプロセッサの負荷分散機能を備えたストレージシステム |
WO2007112109A2 (en) * | 2006-03-24 | 2007-10-04 | Slt Logic Llc | Modular chassis providing scalable mechanical, electrical and environmental functionality for microtca and advanced tca boards |
JP4643543B2 (ja) * | 2006-11-10 | 2011-03-02 | 株式会社東芝 | キャッシュ一貫性保証機能を有するストレージクラスタシステム |
US7797396B2 (en) * | 2007-01-30 | 2010-09-14 | Hewlett-Packard Development Company, L.P. | Network attached storage (NAS) server having a plurality of automated media portals |
JP2008204041A (ja) | 2007-02-19 | 2008-09-04 | Hitachi Ltd | ストレージ装置及びデータ配置制御方法 |
JP5106913B2 (ja) | 2007-04-23 | 2012-12-26 | 株式会社日立製作所 | ストレージシステム、ストレージシステム管理方法、及び計算機システム |
JP2009098887A (ja) * | 2007-10-16 | 2009-05-07 | Hitachi Ltd | 記憶システム及びデータ消去方法 |
US10572188B2 (en) * | 2008-01-12 | 2020-02-25 | Hewlett Packard Enterprise Development Lp | Server-embedded distributed storage system |
US8074020B2 (en) * | 2008-02-13 | 2011-12-06 | International Business Machines Corporation | On-line volume coalesce operation to enable on-line storage subsystem volume consolidation |
US8122421B2 (en) * | 2008-08-14 | 2012-02-21 | Omnivision Technologies, Inc. | System, and method, and computer readable medium for designing a scalable clustered storage integrated circuit for multi-media processing |
DE102009032821A1 (de) * | 2008-10-28 | 2010-04-29 | Giesecke & Devrient Gmbh | Speichermedium mit unterschiedlichen Zugriffsmöglichkeiten |
JPWO2010097933A1 (ja) * | 2009-02-27 | 2012-08-30 | 富士通株式会社 | 情報処理装置、情報処理方法及びコンピュータプログラム |
US20110231602A1 (en) * | 2010-03-19 | 2011-09-22 | Harold Woods | Non-disruptive disk ownership change in distributed storage systems |
US8983218B2 (en) | 2012-04-11 | 2015-03-17 | Texas Instruments Incorporated | Virtual boundary processing simplification for adaptive loop filtering (ALF) in video coding |
US9250809B2 (en) | 2013-03-18 | 2016-02-02 | Hitachi, Ltd. | Compound storage system and storage control method to configure change associated with an owner right to set the configuration change |
JP6232936B2 (ja) * | 2013-10-31 | 2017-11-22 | 富士通株式会社 | 情報処理装置、記憶装置制御回路及び記憶装置の制御方法 |
CN104486384A (zh) * | 2014-11-28 | 2015-04-01 | 华为技术有限公司 | 一种存储***及交换扩展装置 |
CN107395415A (zh) * | 2017-07-20 | 2017-11-24 | 郑州云海信息技术有限公司 | 一种数据处理方法和*** |
CN107656704A (zh) * | 2017-09-28 | 2018-02-02 | 郑州云海信息技术有限公司 | 多协议数据共享存储方法、装置、设备及计算机存储介质 |
CN107894874B (zh) * | 2017-11-17 | 2020-08-21 | 北京联想超融合科技有限公司 | 基于超融合存储***的数据读写控制方法、终端及*** |
CN108595109B (zh) * | 2017-12-29 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种基于Ceph分布式存储***的多客户端写的方法 |
CN117632035B (zh) * | 2023-12-13 | 2024-06-04 | 中国电子投资控股有限公司 | 一种数据存储方法、***、存储介质及计算机设备 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745789A (en) * | 1992-01-23 | 1998-04-28 | Hitachi, Ltd. | Disc system for holding data in a form of a plurality of data blocks dispersed in a plurality of disc units connected by a common data bus |
US5640596A (en) * | 1992-03-10 | 1997-06-17 | Hitachi, Ltd. | Input output control system for transferring control programs collectively as one transfer unit designated by plurality of input output requests to be executed |
US5548724A (en) * | 1993-03-22 | 1996-08-20 | Hitachi, Ltd. | File server system and file access control method of the same |
US6247077B1 (en) * | 1998-02-06 | 2001-06-12 | Ncr Corporation | Highly-scalable parallel processing computer system architecture |
US6289419B1 (en) * | 1998-03-06 | 2001-09-11 | Sharp Kabushiki Kaisha | Consistency control device merging updated memory blocks |
JP2000029635A (ja) * | 1998-07-08 | 2000-01-28 | Hitachi Ltd | 記憶制御装置 |
US6223323B1 (en) * | 1998-07-17 | 2001-04-24 | Ncr Corporation | Method for storing parity information in a disk array storage system |
JP4392877B2 (ja) | 1998-09-18 | 2010-01-06 | 株式会社日立製作所 | ディスクアレイ制御装置 |
JP2000242434A (ja) | 1998-12-22 | 2000-09-08 | Hitachi Ltd | 記憶装置システム |
US6542961B1 (en) * | 1998-12-22 | 2003-04-01 | Hitachi, Ltd. | Disk storage system including a switch |
US6061274A (en) * | 1999-01-04 | 2000-05-09 | Emc Corporation | Methods and apparatus for message transfer in computer storage system |
JP4294142B2 (ja) * | 1999-02-02 | 2009-07-08 | 株式会社日立製作所 | ディスクサブシステム |
EP1026575A3 (en) * | 1999-02-08 | 2006-09-06 | Hitachi, Ltd. | Disk array system and method of changing its configuration |
US6351838B1 (en) * | 1999-03-12 | 2002-02-26 | Aurora Communications, Inc | Multidimensional parity protection system |
JP3853540B2 (ja) * | 1999-06-30 | 2006-12-06 | 日本電気株式会社 | ファイバチャネル接続磁気ディスク装置およびファイバチャネル接続磁気ディスク制御装置 |
JP2001256003A (ja) * | 2000-03-10 | 2001-09-21 | Hitachi Ltd | ディスクアレイ制御装置、そのディスクアレイ制御ユニットおよびその増設方法 |
JP2001325207A (ja) * | 2000-05-17 | 2001-11-22 | Hitachi Ltd | キャッシュ内蔵型スイッチおよび計算機システムおよびキャッシュ内蔵型スイッチのスイッチ制御方法 |
JP4068798B2 (ja) * | 2000-10-31 | 2008-03-26 | 株式会社日立製作所 | 記憶サブシステム及びi/oインタフェースの制御方法ならびに情報処理システム |
US6675268B1 (en) * | 2000-12-11 | 2004-01-06 | Lsi Logic Corporation | Method and apparatus for handling transfers of data volumes between controllers in a storage environment having multiple paths to the data volumes |
JP2002229740A (ja) * | 2001-01-31 | 2002-08-16 | Toshiba Corp | 管理用インタフェースを用いた高可用性ストレージシステム、同システムに用いられるホストコンピュータ、及び同コンピュータにより実行されるドライバプログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
US6792505B2 (en) * | 2001-04-16 | 2004-09-14 | International Business Machines Corporation | System apparatus and method for storage device controller-based message passing having effective data channel bandwidth and controller cache memory increase |
JP2003015826A (ja) * | 2001-07-04 | 2003-01-17 | Hitachi Ltd | ディスクアレイ制御装置における共有メモリコピー機能 |
JP2003029935A (ja) * | 2001-07-11 | 2003-01-31 | Hitachi Ltd | ストレージシステムおよびストレージシステムの記憶領域管理方法 |
JP2003099384A (ja) * | 2001-09-20 | 2003-04-04 | Nec Corp | 負荷分散システム、負荷分散システムのホストコンピュータ、及び負荷分散プログラム |
JP2003140837A (ja) * | 2001-10-30 | 2003-05-16 | Hitachi Ltd | ディスクアレイ制御装置 |
JP2003186821A (ja) * | 2001-12-14 | 2003-07-04 | Hitachi Ltd | データ処理システム |
JPWO2003075161A1 (ja) | 2002-03-07 | 2005-06-30 | 富士通株式会社 | ストレージ仮想化システムの変換管理装置およびストレージ仮想化システムの変換管理方法 |
JP2003330622A (ja) * | 2002-03-08 | 2003-11-21 | Hitachi Ltd | アクセス管理用サーバ、ディスクアレイシステム、及びそのアクセス管理方法 |
JP2003316713A (ja) * | 2002-04-26 | 2003-11-07 | Hitachi Ltd | 記憶装置システム |
JP2003323261A (ja) * | 2002-04-26 | 2003-11-14 | Hitachi Ltd | ディスク制御システム、ディスク制御装置、ディスクシステム、及びその制御方法 |
JP4220724B2 (ja) * | 2002-05-21 | 2009-02-04 | 株式会社日立製作所 | ストレージ装置 |
JP4189171B2 (ja) * | 2002-05-24 | 2008-12-03 | 株式会社日立製作所 | ディスク制御装置 |
US6957303B2 (en) * | 2002-11-26 | 2005-10-18 | Hitachi, Ltd. | System and managing method for cluster-type storage |
CN100336050C (zh) * | 2003-04-04 | 2007-09-05 | 清华大学 | 海量网络存储器设备及其实现方法 |
JP4462852B2 (ja) * | 2003-06-23 | 2010-05-12 | 株式会社日立製作所 | ストレージシステム及びストレージシステムの接続方法 |
US7412588B2 (en) * | 2003-07-25 | 2008-08-12 | International Business Machines Corporation | Network processor system on chip with bridge coupling protocol converting multiprocessor macro core local bus to peripheral interfaces coupled system bus |
JP4703959B2 (ja) * | 2003-12-03 | 2011-06-15 | 株式会社日立製作所 | 記憶装置システムおよびそのレプリケーション作成方法 |
JP4528551B2 (ja) * | 2004-04-14 | 2010-08-18 | 株式会社日立製作所 | ストレージシステム |
-
2004
- 2004-04-14 JP JP2004118986A patent/JP4528551B2/ja not_active Expired - Fee Related
- 2004-06-30 US US10/879,230 patent/US7120739B2/en not_active Expired - Fee Related
- 2004-12-17 EP EP04030004A patent/EP1586986A3/en not_active Withdrawn
- 2004-12-29 CN CNB2004101041170A patent/CN1323346C/zh active Active
- 2004-12-29 CN CNB2007101077547A patent/CN100562842C/zh active Active
-
2006
- 2006-08-25 US US11/509,773 patent/US7249220B2/en not_active Expired - Fee Related
-
2007
- 2007-06-12 US US11/808,605 patent/US7594074B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20070245063A1 (en) | 2007-10-18 |
CN1684029A (zh) | 2005-10-19 |
US20070016667A1 (en) | 2007-01-18 |
US7249220B2 (en) | 2007-07-24 |
JP4528551B2 (ja) | 2010-08-18 |
EP1586986A2 (en) | 2005-10-19 |
CN101131623A (zh) | 2008-02-27 |
JP2005301802A (ja) | 2005-10-27 |
CN1323346C (zh) | 2007-06-27 |
US7594074B2 (en) | 2009-09-22 |
EP1586986A3 (en) | 2008-10-29 |
US7120739B2 (en) | 2006-10-10 |
US20050235081A1 (en) | 2005-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100562842C (zh) | 存储*** | |
JP4508612B2 (ja) | クラスタ型ストレージシステム及びその管理方法 | |
US7181578B1 (en) | Method and apparatus for efficient scalable storage management | |
US7350052B2 (en) | Network system and method for setting volume group in the network system | |
US7743211B2 (en) | Cluster-type storage system and managing method of the cluster-type storage system | |
CN100334534C (zh) | 在存储区域网中实现存储虚拟化的方法与装置 | |
US7441095B2 (en) | Storage system and storage controller | |
JP4338068B2 (ja) | ストレージシステム | |
JP4297747B2 (ja) | ストレージ装置 | |
CN108696569A (zh) | 在NVMe-oF以太网SSD中提供数据复制的***和方法 | |
US20110145452A1 (en) | Methods and apparatus for distribution of raid storage management over a sas domain | |
CN105009099A (zh) | 计算机***及数据控制方法 | |
JP2008004120A (ja) | ダイレクトアクセスストレージシステム | |
US6477618B2 (en) | Data storage system cluster architecture | |
JP2005275525A (ja) | ストレージシステム | |
CN100492274C (zh) | 存储控制***及其处理节点 | |
JP2005258918A (ja) | ストレージシステムおよびストレージシステムのキャッシュメモリ制御方法 | |
CN105934793A (zh) | 一种存储***数据分发的方法、分发装置与存储*** | |
JP4352693B2 (ja) | ディスクアレイ制御装置及びその制御方法 | |
CN1312569C (zh) | 存储*** | |
CN104994135B (zh) | 存储***中融合san及nas存储架构的方法及装置 | |
JP2005056200A (ja) | データ管理方法、ディスク記憶装置およびディスク記憶システム | |
US7571280B2 (en) | Cluster-type storage system and managing method of the cluster-type storage system | |
CN118193478A (zh) | 一种存储空间的分配方法及服务器 |
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 |