Storage control system
Abstract
Problem to be solved.To improve the performance of a storage control system by changing a small number of form factors.
Solution.This storage control system 600 is provided with a scale-out type NAS head group 111 constituted of two or more NAS heads and a scale-up type NAS head 110H being an NAS head whose performance is higher than that of each NAS head member 110L being an NAS head configuring the scale-out type NHAS head group 111 in a case body 10. The case body 10 is provided with a plurality of general slots 104 into which a channel control part 112 whose type is different from that of the NAS head member 110L and the NAS head member 110L is inserted. The scale-up type NAS head 110H is mounted in a place different from the place of the general slot 104 in the case body 10.
Copyright (C)2006,JPO&NCIPI
Term
Term ended
Projected expiry passed 1 April 2024, 2.5 years ago.
- Priority and filed
- Published
- Projected expiry
- Today
10 claims: 2 independent, 8 dependent
- 1A storage device for storing data, a storage device control unit for reading or writing data to the storage device, a plurality of channel control units operating as a server, and a plurality of channel control units selected from the plurality of channel control units. It is connected to one or more memories in which the data exchanged between the channel control unit and the storage device control unit is stored, the storage device control unit, the plurality of channel control units, and the one or more memories. A data communication medium serving as a communication medium for the data exchanged between the storage device control unit, the selected channel control unit, and the one or more memories, and the plurality of channel control units connected to the plurality of channel control units. Each of the channel control units is provided with an inter-server communication medium that serves as a communication medium for inter-server messages exchanged between the other channel control units, and the plurality of channel control units are mounted in the same housing. It includes two or more NAS head members that make up a scale-out NAS head group, and a scale-up NAS head that is a NAS head with higher performance than the NAS head member. The housing is provided with a plurality of general-purpose slots into which the NAS head member and a channel control unit of another type different from the NAS head member are inserted, and each of the two or more NAS head members is the general-purpose type. A storage control system that is inserted into a slot and mounted, and the scale-up NAS head is mounted in the housing at a location different from the plurality of general-purpose slots. データを記憶する記憶デバイスと、 前記記憶デバイスに対してデータの読出し又は書込みを行う記憶デバイス制御部と、 サーバとして動作する複数のチャネル制御部と、 前記複数のチャネル制御部の中から選択されたチャネル制御部と前記記憶デバイス制御部との間でやり取りされる前記データが格納される1以上のメモリと、 前記記憶デバイス制御部、前記複数のチャネル制御部及び前記1以上のメモリに接続され、前記記憶デバイス制御部、前記選択されたチャネル制御部及び前記1以上のメモリの間でやり取りされる前記データの通信媒体となるデータ通信媒体と、 前記複数のチャネル制御部に接続され、前記複数のチャネル制御部の各々と他のチャネル制御部との間でやり取りされるサーバ間メッセージの通信媒体となるサーバ間通信媒体とを備え、 前記複数のチャネル制御部は、同一の筐体内に搭載され、スケールアウト型NASヘッドグループを構成する2以上のNASヘッドメンバと、前記NASヘッドメンバよりも高性能のNASヘッドであるスケールアップ型NASヘッドとを含んでおり、 前記筐体には、前記NASヘッドメンバ及び前記NASヘッドメンバとは異なる他種のチャネル制御部が差し込まれる複数の汎用型スロットが備えられ、 前記2以上のNASヘッドメンバの各々は、前記汎用型スロットに差し込まれて実装され、 前記スケールアップ型NASヘッドは、前記筐体内において、前記複数の汎用型スロットとは別の場所に実装される、記憶制御システム。
- 10A storage device control unit that reads or writes data to a storage device that stores data, a plurality of channel control units that operate as servers, a channel control unit selected from the plurality of channel control units, and the above. One or more memories for storing the data exchanged with the storage device control unit, the storage device control unit, the plurality of channel control units, and the storage device control unit connected to the one or more memories. , The selected channel control unit and a data communication medium serving as a communication medium for the data exchanged between the one or more memories, and the plurality of channel control units include a scale-out type channel control unit group. It includes two or more scale-out channel members and a scale-up channel which is a channel control unit having higher performance than the scale-out channel member, and the scale-out channel member is separated from the data communication medium. A storage control system comprising an inter-server communication medium that serves as a communication medium for inter-server messages exchanged between and the scale-up channel. データを記憶する記憶デバイスに対してデータの読出し又は書込みを行う記憶デバイス制御部と、 サーバとして動作する複数のチャネル制御部と、 前記複数のチャネル制御部の中から選択されたチャネル制御部と前記記憶デバイス制御部との間でやり取りされる前記データが格納される1以上のメモリと、 前記記憶デバイス制御部、前記複数のチャネル制御部及び前記1以上のメモリに接続され、前記記憶デバイス制御部、前記選択されたチャネル制御部及び前記1以上のメモリの間でやり取りされる前記データの通信媒体となるデータ通信媒体とを備え、 前記複数のチャネル制御部には、スケールアウト型チャネル制御部グループを構成する2以上のスケールアウトチャネルメンバと、前記スケールアウトチャネルメンバよりも高性能のチャネル制御部であるスケールアップチャネルとが含まれており、 前記データ通信媒体とは別に、前記スケールアウトチャネルメンバと前記スケールアップチャネルとの間でやり取りされるサーバ間メッセージの通信媒体となるサーバ間通信媒体を備える、ことを特徴とする記憶制御システム。
Independent claims2
100 paragraphs, as filed
The present invention relates to a storage control system such as a RAID system.
For example, in a database system that handles large-scale data such as a data center, data is managed using a storage control system configured separately from the host computer. This storage control system is, for example, a disk array system such as RAID (Redundant Array of Independent Inexpensive Disks) in which a large number of storage devices are arranged in an array.
Such a memory control system is provided with, for example, a network channel adapter (hereinafter, CHN) for processing file-based I / O requests, as disclosed in Japanese Patent Application Laid-Open No. 2003-316713. There is something that can be (Network Area Storage).
<patcit num="1"><text>Japanese Unexamined Patent Publication No. 2003-316713.</text></patcit>
<p> The above-mentioned storage control system can operate as a file server by incorporating CHN. However, it would be more useful if it could operate not only as a file server but also as another type of server. Specifically, for example, it is desirable that a so-called server three-layer model be realized in one storage control system.</p><p> As a method for realizing that one storage control system can operate not only as a file server but also as another type of server, for example, a method of improving the performance of each CHN can be considered. However, it is difficult to actually do that method. This is because memory control systems usually have a predetermined form factor.</p><p> Specifically, for example, CHN can be a thin board as a whole, as shown in FIG. 3 of the above-mentioned publication. Therefore, as shown in FIG. 2 of the above-mentioned publication, a plurality of adapter slots into which CHNs can be inserted can be arranged at a narrow pitch. Each adapter slot is configured to accommodate not only the CHN but also any other adapter board (eg, a disk adapter) of the user, as described in FIGS. 2 and 27 of the publication described above. .. In such a case, simply improving the CHN performance will generate higher heat and require more power than other adapter boards, so it will not be possible to comply with the form factor restrictions related to the adapter slot.</p><p> In addition, as another method for realizing the above, a method of constructing a new memory control system in which the form factor is relaxed as a whole can be considered. However, if that method is simply adopted, for example, if the form factor of the storage control system is designed for SAN (Storage Area Network), a new form factor based on CHN (in other words, for NAS) The problem arises that the design of the form factor) becomes necessary.</p><p> Further, if the form factor for NAS is adopted, for example, many adapter boards for SAN cannot be mounted in the storage control system, which causes a problem that the mounting efficiency is lowered.</p><p> Therefore, an object of the present invention is to improve the performance of the storage control system by changing the form factor. Specifically, for example, even if it is designed with a form factor for SAN, the purpose is to improve the performance related to NAS without significantly changing the form factor.</p><p> Further objections of the present invention will become apparent from the later description.</p>
<p> A storage control system according to the first aspect of the present invention includes a storage device that stores data, a storage device control unit that reads or writes data to the storage device, and a plurality of channel control units that operate as a server. , One or more memories for storing the data exchanged between the channel control unit selected from the plurality of channel control units and the storage device control unit, a data communication medium, and an inter-server communication medium. And. The data communication medium is connected to the storage device control unit, the plurality of channel control units, and the one or more memories, and is between the storage device control unit, the selected channel control unit, and the one or more memories. It serves as a communication medium for the data to be exchanged. The inter-server communication medium is connected to the plurality of channel control units and serves as a medium for communication performed between each of the plurality of channel control units and the other channel control units. The plurality of channel control units are mounted in the same housing, and two or more NAS head members constituting the scale-out type NAS head group and a scale-up type NAS which is a NAS head having higher performance than the NAS head member. Includes head and. The housing is provided with a plurality of general-purpose slots into which the NAS head member and a channel control unit of another type different from the NAS head member are inserted. Each of the two or more NAS head members is inserted and mounted in the general-purpose slot. The scale-up NAS head is mounted in the housing at a place different from the plurality of general-purpose slots.</p><p> In the first embodiment of the storage control system according to the first aspect of the present invention, at least one of the NAS head member, the scale-up NAS head and the storage device control unit processes block level data. It has a first processor. The NAS head member includes one or more first memories different from the one or more memories, and one or more second processors having higher performance than the first processor, and the one or more. Each of the first memories of the above is used by the second processor of one of the first or more second processors without being shared by the one or more second processors. A scale-out type NAS head group is provided by performing parallel processing or parallel processing using a plurality of such NAS head members. The scale-up NAS head includes a second memory separate from the one or more memories, and a plurality of third processors having higher performance than the first processor, and the second memory. Is shared by the plurality of third processors. The second and third processors may be the same type of processor (for example, a processor having the same operating frequency).</p><p> In the second embodiment of the storage control system according to the first aspect of the present invention, in the first embodiment, the storage device has a database. The second processor of the NAS head member operates as a WEB server by reading a computer program for operating as a WEB server. The plurality of third processors of the scale-up NAS head operate as a database server by reading a computer program for operating as a database server that processes the database.</p><p> In the third embodiment of the storage control system according to the first aspect of the present invention, in the second embodiment, the second processor of the NAS head member is connected to a communication network outside the storage control system. An inquiry corresponding to the access from the external device is transmitted to the scale-up NAS head via the inter-server communication medium. The transmitted query is stored, for example, in the second memory of the scale-up NAS head. At least one of the plurality of third processors processes the database via the storage device control unit in accordance with the query, so that response data, which is data for the query, is transmitted via the data communication medium. It is read into the one or more memories, and the response message to the inquiry is transmitted to the second processor of the NAS head member via the inter-server communication medium. The second processor receives the response message, acquires the response data stored in the one or more memories via the data communication medium, and obtains the acquired response data or the response data. The data obtained by processing is provided to the external device.</p><p> In the fourth embodiment of the storage control system according to the first aspect of the present invention, when the data and the server-to-server message are exchanged between the NAS head member and the scale-up NAS head, the server-to-server message is exchanged. The messages are exchanged via the server-to-server communication medium, and the data is exchanged via the one or more memories and the data communication medium.</p><p> In the fifth embodiment of the storage control system according to the first aspect of the present invention, the data communication medium has a wider data transfer band than the inter-server communication medium, and the inter-server communication medium is more than the data communication medium. Also has a large number of communication routes. Specifically, for example, the data communication medium is a high-speed crossbar switch or SAN (Storage Area Network), and the server-to-server communication medium is a LAN (Local Area Network).</p><p> In a sixth embodiment of a memory control system according to a first aspect of the present invention, the scale-up NAS head has a second memory separate from the one or more memories and a higher height than the first processor. a processor performance, the plurality of third processors that share the second memory, through having a plurality of communication ports connected to a plurality of transfer paths contained in the server communications medium signal controller (For example, a LAN controller) and a memory controller whose communication port receives a server-to-server message received from the NAS head member from the communication controller. The memory controller uses the plurality of third processors to process the received inter-server message based on which communication port among the plurality of communication ports receives the inter-server message. Select from the processors and have the selected third processor process the received inter-server message.</p><p> In a seventh embodiment of the storage control system according to the first aspect of the present invention, both the scale-up NAS head and the NAS head member provide a communication interface connected to a communication network outside the storage control system. Be prepared.</p><p> In the eighth embodiment of the memory control system according to the first aspect of the present invention, in the seventh embodiment, the second processor of the first channel control unit indicates that the failure has occurred. The failure occurrence information is written in the shared memory. The fourth processor of each of the plurality of second channel control units and the sixth processor of each of the one or more third channel control units access the shared memory and the sixth processor. If the fourth processor detects the failure occurrence information before the processor of the above, the fourth processor ignores it.</p><p> In the ninth embodiment of the storage control system according to the first aspect of the present invention, each of the NAS head member and the scale-up NAS head includes a NAS processor that converts file-level data into block-level data. The storage device control unit includes an input / output processor that acquires and processes block-level data converted by the NAS processor. In this case, for example, a dedicated interrupt line is provided between the NAS processor and the input / output processor, and the NAS processor transfers the block level data to the input / output processor via the dedicated interrupt line. .. Alternatively, for example, when a queue for temporarily storing the block level data is provided, the input / output processor polls the queue, and the NAS processor and the block level data are stored in the queue, the input is entered. The output processor obtains and processes the block-level data from the queue.</p><p> A memory control system according to the present invention can be expressed more abstractly, for example, as follows.</p><p> That is, the storage control system selects from a storage device control unit that reads or writes data to a storage device that stores data, a plurality of channel control units that operate as a server, and the plurality of channel control units. Connected to one or more memories in which the data exchanged between the channel control unit and the storage device control unit is stored, the storage device control unit, the plurality of channel control units, and the one or more memories. A data communication medium serving as a communication medium for the data exchanged between the storage device control unit, the selected channel control unit, and the one or more memories. The plurality of channel control units include two or more scale-out channel members that form a scale-out type channel control unit group, and a scale-up channel that is a channel control unit having higher performance than the scale-out channel member. ing. In addition to the data communication medium, the storage control system further includes an inter-server communication medium that serves as a medium for communication between the scale-out channel member and the scale-up channel. Two or more scale-out channel members that make up the scale-out type channel control unit group may execute processing that can be processed in parallel, such as a WEB server. On the other hand, the scale-up channel may execute a process that is difficult to perform parallel processing (for example, a process that is preferably performed by serial processing) such as a database server.</p><p> A method according to a second aspect of the present invention is a data processing method in a storage control system, which comprises first to fifth steps. In the first step, a scale-out channel member selected from two or more scale-out channel members constituting the scale-out type channel control unit group accesses from an external device (for example, a host device) via a communication network. receive. In the second step, the selected scale-out channel member transmits a query based on the access to the scale-up channel control unit via the inter-server communication medium. In the third step, the scale-up type channel control unit communicates with the storage device control unit that can access the storage device via the data communication medium, so that the data according to the inquiry is transferred to the data communication medium. Read to one or more connected memories. In the fourth step, the scale-up channel control unit transmits a response message to the selected scale-out channel member via the inter-server communication medium. In the fifth step, the selected scale-out channel member receives the response message, reads the data stored in the one or more memories via the data communication medium, and reads the read data to the outside. Send to device.</p>
<p> According to the present invention, the performance of the storage control system can be improved by changing the form factor.</p>
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 shows an outline of the appearance of a memory control system according to an embodiment of the present invention.
The memory control system 600 can be constructed in, for example, one housing 10. In order to show the configuration inside the housing 10 in an easy-to-understand manner, the housing 10 is shown by an imaginary line (dotted line in FIG. 1).
The housing 10 has a size of, for example, about 1 meter in length and width and about 2 meters in height. The housing 10 includes, for example, a storage device storage case 301 into which a plurality of storage devices 300 are inserted on the front 107F side and the back 107B side, and one or more (for example, two) scale-up NAS heads (hereinafter, scale). (Abbreviated as "up NAS") A scale-up NAS storage case 302 into which 110H is inserted and a blade storage section 303 into which multiple types of adapter blades are inserted are provided. Further, a plurality of power supply units 400 and a plurality of battery units 500 are detachably provided in the housing 10. Further, the housing 10 is provided with a plurality of fans 13.
A plurality of storage devices 300 are arranged in an array in the storage device storage case 301. In this embodiment, the storage device 300 is a hard disk drive, but as a modification, not only the hard disk drive but also an optical disk drive (for example, a DVD drive), a magnetic tape drive, or any other storage device may be adopted. ..
For example, as shown in FIG. 2A, a box-shaped scale-up NAS 110H (specific example, a so-called 1U server) having an air intake port 107 on the front is inserted into the scale-up NAS storage case 302. The scale-up NAS storage case 302 is provided in a place different from the blade storage unit 303.
The blade housing portion 303 is provided with a plurality of blade slots 104 arranged in the horizontal direction. The distance between the blade slot 104 and the adjacent blade slot 104 is narrower than the width of the blade slot 104. Any adapter blade among a plurality of types of adapter blades can be inserted into each blade slot 104. In other words, each of the multiple types of adapter blades is made according to the form factor associated with the blade slot 104. Multiple types of adapter blades include, for example, a Fiber Channel adapter blade that receives block-level I / O requests (input / output requests) via Fiber Channel, and a file-level I / O request that is received via the Internet or the like. The built-in NAS blade 110L, a disk adapter blade that controls reading or writing of data to the storage device 300, and a cache memory adapter blade described later are included. As shown in FIG. 2B, for example, the embedded NAS blade 110L is a blade-shaped NAS head, and includes a connector 509A connected to a storage connection portion described later and a connector 509B connected to a server connection portion described later. .. The embedded NAS blade 110L is equipped with a high-performance processor (for example, a processor with a higher operating frequency than the I / O processor described later that handles block-level I / O requests) to operate at least as a file server. Therefore, in general, the amount of heat generated and the amount of power consumed by the embedded NAS blade are larger than those of other types of adapter blades. Therefore, in the blade housing 303, for example, due to the relationship of at least one form factor of heat, cooling, and power, N of the K blade slots 104 have embedded NAS blades (K>). It can be mounted up to N, N 2, for example, K = 32, N = 8). One scale-out NAS headgroup is constructed by two or more embedded NAS blades out of N embedded NAS blades. Hereinafter, the embedded NAS blades constituting the scale-out NAS head group will be abbreviated as "scale-out NAS member".
In this memory control system 600, both the scale-up NAS 110H and the scale-out NAS member 110L are cooled by, for example, air-cooling. Further, in this memory control system 600, the air having heat taken from the scale-up NAS 110H and the air having heat taken from the scale-out NAS member 110L are exhausted in the same direction. Specifically, for example, as shown in the figure, air taken in from the outside of the scale-up NAS 110H (for example, front 107F or back 107B) through the air intake port 107 is sent to the center side of the housing 10 and then sent to the center side of the housing 10. , Is sent above the housing 10, and is discharged to the outside of the housing 10 via the fan 13. Air taken in from the outside of the scale-out NAS member 110L (for example, below the front 107F and below the housing 10) is also sent upward from the center side of the housing 10 to the outside of the housing 10 via the fan 13. It is discharged.
FIG. 3 is a block diagram showing a configuration of a computer system including the memory control system according to the present embodiment.
In this computer system 1, one or more host terminals 200 and a storage control system 600 are connected to a communication network (for example, LAN or the Internet) 820. The communication network 820 is a communication network through which file-level data is exchanged, and for example, a LAN, the Internet, a dedicated line, a public line, or the like can be appropriately used depending on the case.
Each of the one or a plurality of host devices 200 is, for example, a computer device provided with information processing resources such as a CPU (Central Processing Unit) and a memory, and is configured as, for example, a personal computer, a workstation, a mainframe, or the like. The host terminal 200 includes, for example, an information input device (not shown) such as a keyboard switch, a pointing device, or a microphone, and an information output device (not shown) such as a monitor display or a speaker. Further, the host terminal 200 includes, for example, a WWW browser 200A, NAS software 200B for using the NAS, and an OS (operating system) such as Windows (registered trademark) or UNIX (registered trademark). For example, the host terminal 200 specifies a file name and requests the storage control system 600 to input / output data in file units. The NAS software 200B is, for example, NFS (Network File System) when OS200C is UNIX (registered trademark), and CIFS (Common) when OS200C is Windows (registered trademark). Interface File System).
The storage control system 600 is, for example, a RAID system including a large number of storage devices 300 arranged in an array. The memory control system 600 has, for example, a multiplexed (eg, duplicated) memory control subsystem 600A. The storage control subsystem 600A can be roughly divided into a storage control device 100 and a storage device unit 101. The storage control device 100 includes, for example, a plurality of channel control units 112, a plurality of disk adapters (hereinafter, DKA) 140, a cache memory 130, a shared memory 120, a storage connection unit 150, and a server connection unit 151. I have. The plurality of channel control units 112 include two or more scale-out NAS members 110L constituting the scale-out NAS headgroup (hereinafter, scale-out NAS) 111, and a scale-up NAS 110H (hereinafter, scale-out NAS). NAS members and scale-up NAS are collectively referred to as "NAS adapters").
The NAS adapters 110L and 110H perform data communication with the host terminal 200. The NAS adapters 110L and 110H are configured as, for example, a microcomputer system equipped with a CPU, memory, and the like, and interpret and execute various commands received from the host terminal 200. Each of the NAS adapters 110L and 110H is assigned a network address (for example, IP address or WWN) for identifying itself. Each of the NAS adapters 110L and 110H included a file-based I / O command (for example, a file name and a command to read or write a file having that file name) from the host terminal 200 via the communication network 820. NAS (Network Attached) that receives commands (hereinafter referred to as "file I / O commands") and processes the file I / O commands. It can behave as Storage). Each scale-out NAS member 110L constituting the scale-out NAS 111 acquires a computer program (hereinafter, WEB server program) 470 for operating as a front-end server in the so-called server three-tier model, for example, a WEB server, and the program 470. It works according to. The scale-up NAS 110H acquires a computer program (hereinafter, DB server program) 450 for operating as a back-end server in a so-called server three-tier model, for example, a database server, and operates according to the program 450. Even if one or both of the scale-out NAS member 110L and the scale-up NAS 110H acquire the mid-tier server in the server three-tier model, for example, the computer program (hereinafter referred to as AP server program) 460 for operating as an application server. good. Specifically, for example, the scale-out NAS member 110L may operate as a WEB application server by acquiring the WEB server program 470 and the AP server program 460.
Each DKA140 exchanges data with and from a logical storage unit (hereinafter, LU) 310 in the storage device unit 101. Each DKA140 has a communication port (not shown) for connecting to the storage device 300 with the LU310. In addition, each DKA140 is configured as a microcomputer system equipped with a CPU, memory, and the like. Each DKA140 acquires the data written to the cache memory 130 from the scale-out NAS member 110L or the scale-up NAS 110H and writes it to the LU 310, and stores the data read from the LU 310 in the cache memory 130. Each DKA140 translates a logical address into a physical address when inputting / outputting data to / from LU310.
The cache memory (hereinafter, may be abbreviated as "CM") 130 is, for example, a volatile or non-volatile memory, and temporarily stores data received from the host terminal 200 and data read from LU310, which will be described later. To do.
The shared memory (hereinafter, may be abbreviated as SM) 120 is, for example, a non-volatile memory, and control information regarding data exchanged with the host device (for example, which cache area reserved on the CM130). Information indicating which data should be stored in) etc. are stored in. Further, in the shared memory 120, for example, a work area (for example, an area for temporarily storing messages exchanged between the CPUs of each channel control unit 112 and the DKA140) is set. In the illustrated example, CM130 and SM120 are physically separated, but they may be one memory. In that case, the memory space on the memory may be logically divided into a space for CM and a space for SM.
The storage connection unit 150 connects each channel control unit 112, each DKA140, a cache memory 130, and a shared memory 120 to each other. The storage connection unit 150 can be configured as a high-speed bus such as an ultra-high-speed crossbar switch that transmits data by a high-speed switching operation. The storage connection unit 150 is a communication medium for data exchanged between each channel control unit 112 and each DKA 140 via the cache memory 130. For example, the data transfer band of each transfer path in the storage connection unit 150 is preferably wider than that of the server connection unit 151.
Each channel control unit 112 and one or more other channel control units 112 are connected to the server connection unit 151. The server connection unit 151 is a communication medium for inter-server messages exchanged between each channel control unit 112 and another channel control unit 112. The server connection unit 151 may have any configuration as long as it is a dedicated network between NAS adapters. For example, the server connection unit 151 may be a LAN or a fiber. For example, the number of transfer paths in the server connection unit 151 is preferably larger than that in the storage connection unit 150. Specifically, for example, each NAS adapter is equipped with more communication ports connected to the server connection unit 151 than communication ports connected to the storage connection unit 150, and each of the many communication ports Is connected to the server connection section 151.
The storage device unit 101 includes a plurality of storage devices 300 arranged in an array. As the storage device 300, for example, a device such as a hard disk, a flexible disk, a magnetic tape, a semiconductor memory, an optical disk, or the like can be used. A plurality of logical units (hereinafter, abbreviated as LU) 310, which are logical storage devices, are provided on the storage area of the storage device 300. A certain LU 310 stores a database (for example, a relational database or an object database) 103 and one or more data files 104. Each LU 310 may contain file metadata about the data stored in that LU. In the file metadata of each LU310, attribute information (for example, file name and storage destination address) related to each file stored in the LU310 is registered.
FIG. 4 is a block diagram showing a configuration example of the scale-out NAS member 110L.
The scale-out NAS member 110L includes a communication port 207A, an external network I / F (interface) 503, data transfer LSIs 501A and 501B, a bridge LSI 502, an I / O processor 504, and an I / O memory 507. It includes a plurality of input / output control units 869, a memory controller 505, a NAS processor 506, a NAS memory 508, a storage connector 509A, and a server connector 509B.
The external network I / F 503 controls the communication port 207A according to the instruction received from the NAS processor 506 via the memory controller 505 and the bridge LSI 502. The external network I / F 503 is, for example, a LAN controller.
The bridge LSI 502 is, for example, an LSI (Large-Scale Integrated circuit) for enabling mutual communication between the LAN controller 503, the memory controller 505, and the data transfer LSI 501.
The memory controller 505 is an LSI for controlling communication between the NAS processor 506 and the NAS memory 508. The memory controller 505 is connected to the NAS processor 506, the NAS memory 508, and the bridge LSI 502.
The NAS memory 508 can store a program that controls the NAS processor 506, data exchanged between the CM 130 and the host terminal 200, and the like. The NAS memory 508 stores, for example, a file system program 817, a network control program 818, a WEB server program 470, an AP server program 460, and an HTTP (Hyper Text Transfer Protocol) daemon program 865 for operating as an HTTP daemon. be able to. The file system program 817 associates, for example, the file name included in the file I / O command with the address information (for example, LUN and the first logical block address) of the location where the file having the file name is stored. And convert file I / O commands to block I / O commands based on their mapping. The network control program 818 is, for example, NFS (Network File). It consists of two file system protocols, System) and Samba. NFS accepts file I / O commands from host devices running the UNIX® operating system running NFS. On the other hand, Samba accepts file I / O commands from host terminals equipped with a Windows (registered trademark) operating system running CIFS (Common Interface File System).
NAS processor 506 is a CPU (eg, 64-bit CPU) or microprocessor. The NAS processor 506 has higher performance than, for example, the I / O processor 504 (for example, faster arithmetic processing speed and higher operating clock frequency). The NAS processor 506 is connected to the memory controller 505. The NAS processor 506 can read the file system program 817, the network control program 818, etc. stored in the NAS memory 508, and execute a process according to the read computer program. For example, the NAS processor 506 accepts a file I / O command from the host terminal 200 by the network control program 818. In addition, the NAS processor 506 converts the file I / O commands received from the host terminal 200 from the host terminal 200 and stored in the NAS memory 508 into block I / O commands and outputs them to the I / O processor 504 by the file system program 817. Can be done. Further, for example, the NAS processor 506 can operate as a WEB server by reading the WEB server program 470, and can also operate as an AP server by reading the AP server program 460.
The I / O processor 504 is a CPU (for example, a 32-bit CPU) or a microprocessor, and the control program 864 read from the I / O memory 507 transfers data to and from the storage connection unit 150, and the NAS processor 506 and the NAS processor 506. It is possible to relay data communication with the storage connection unit 150 and execute various other processes described later.
The I / O memory 507 stores a computer program or the like that controls the I / O processor 504.
The data transfer LSI 501A is connected to the storage connector 509A, the I / O processor 504, and the bridge LSI 502, and controls the transfer of data (for example, the response data extracted by the DB process described later). The data transfer LSI 501B is connected to the server connector 509B and the bridge LSI 502, and controls the transfer of inter-server messages (for example, inquiries and responses to them) exchanged between the NAS heads. The data transfer LSI 501A and the data transfer LSI 501B may be physically separated from each other as shown in the figure, or may be integrally configured.
The storage connector 509A is connected to the storage connection 150. Specifically, for example, the storage connector 509A is connected to the CM transfer path (transfer path connected to the CM 130) and the SM transfer path (transfer path connected to the SM 120) included in the storage connection unit 150. It is not always necessary that the CM transfer path and the SM transfer path coexist in one storage connector 509A. For example, instead of the storage connector 509A, a first storage connector connected to the CM transfer path and a second storage connector connected to the SM transfer path may be provided.
The server connector 509B is connected to the server connection unit 151. Specifically, for example, the server connector 509B is connected to the transfer path included in the server connection unit 151.
FIG. 5 is a block diagram showing a configuration example of the scale-up NAS 110H.
In this figure, the same components as the scale-out NAS member 110L are given the same name although the reference numbers are different. Components with the same name have the same function. Hereinafter, in order to avoid duplication of description, the differences from the scale-out NAS member 110L will be mainly described, and the description of the overlapping part will be simplified or omitted.
The most different point of the scale-up NAS 110H from the scale-out NAS member 110L is that a plurality of (for example, four) NAS processors 1506 share the same NAS memory 1508 via the memory controller 1505. For example, a plurality of NAS processors 1506 each read the DB server program 450, and the plurality of NAS processors 1506 share the DB processing and perform the DB processing in parallel, whereby high-speed DB processing is realized. In other words, one unit provides a high-performance NAS head. The plurality of NAS processors 1506 may be a symmetric multiprocessor (SMP) or an asymmetric multiprocessor (AMSP).
The DB server program 1508 is stored in the NAS memory 1508.
The above is a configuration example of the scale-out NAS member 110L and the scale-up NAS 110H. In the present embodiment, under the so-called server three-layer model in the storage control system 600, the data read from the LU 310 (for example, all related to the DB 103) by the communication between the scale-up NAS 110H and the DKA 140. Data or response data generated by DB processing) is stored in NAS memory 1508. However, since the scale-out NAS member 110L and the DKA140 do not communicate with each other, no data is stored in the NAS memory 508 of the scale-out NAS member 110L. Therefore, the NAS memory 508 of the scale-out NAS member 110L may have a smaller storage capacity than the NAS memory 1508 of the scale-up NAS 110H.
FIG. 6 is a block diagram showing a configuration example of DKA140.
The DKA140 includes a communication port 22A, an FC controller 602, a data transfer LSI 601, one or more I / O control units 870 including an IO processor 603 and an I / O memory 604, and a connector 605.
The communication port 22A is a port for communicating with the storage device 300 via a communication network (for example, Fiber Channel) (not shown).
The FC controller 602 is interposed between the communication port 22A and the data transfer LSI 601. The FC controller 602 controls the transfer of block-level data, for example, according to the Fiber Channel protocol.
The I / O memory 604 is for storing a program that controls the I / O processor 603.
The I / O processor 603 is a CPU or microprocessor. The I / O processor 603 is connected to the data transfer LSI 610, the I / O memory 604, and the SVP 23, and reads various computer programs in the I / O memory 604 to control the transfer of data and commands.
The data transfer LSI 601 is an LSI that is connected to the connector 605 connected to the storage connection unit 150, the I / O processor 603, and the FC controller 602 to control data transfer.
In this embodiment, a so-called server three-layer model is constructed by one storage control system 600. Therefore, in this storage control system 600, various processing flows are performed according to the server three-layer model. Hereinafter, an example in which data processing is performed between the WEB server program 470 and the DB server program 450 will be described. In the following description, the WEB server program 470 may be a WEB application server program integrated with the AP server program 460.
FIG. 7 shows an outline of the processing flow performed in the computer system 1 according to the present embodiment.
For example, an operation in which a user inputs a desired keyword and presses a search execution button on a certain WEB screen (for example, a WEB page written in HTML) displayed on the host terminal 200. ), A web page request (for example, a web page having a desired keyword) according to the web page request operation is scaled out from the host terminal 200 via the communication network 820. Sent to out NAS member 110L (step S1).
The WEB page request received by the scale-out NAS member 110L is interpreted by the WEB server program 470 read by the NAS processor 506. The WEB server program 470 generates a DB server query message (for example, SQL (Structured Query Language) having the syntax of "SELECT: column name FROM: table name WEHRE: condition") based on the WEB page request. A DB server inquiry message is sent to the scale-up NAS 110H via the server connection section 151 (S2). The DB server inquiry message can be generated, for example, based on the file information managed by the file system of the scale-out NAS member 110L.
The DB server inquiry message received by the scale-up NAS 110H is interpreted by the DB server program 450 (in other words, the NAS processor selected from the plurality of NAS processors 1506) read by the plurality of NAS processors 1506. The DB server program 450 executes DB processing based on the result of interpreting the DB server inquiry message (S3). This DB processing may be performed by one NAS processor among a plurality of NAS processors 1506, or may be performed by parallel processing or parallel processing of two or more NAS processors. Further, in this DB processing, for example, at least one NAS processor out of a plurality of NAS processors 1506 communicates with the I / O processor 603 of the DKA140 from the DB (for example, relational database) 103 in the LU310 to the DB. Acquires the data requested by the server query message (hereinafter referred to as query response data).
The scale-up NAS 110H that has acquired the inquiry response data writes the inquiry response data to the cache memory 130 via the storage connection unit 150 (S4). In addition, the scale-up NAS110H connects to the server a query response message (for example, a server-to-server message including a pointer indicating the location where the query response data is stored (hereinafter referred to as a cache pointer)) which is a response of the DB server query message of S2. It is sent to the scale-out NAS member 110L, which is the source of the DB server inquiry message, via part 151 (S5). In this way, since the response message having a smaller data size than the query response data itself flows through the server connection unit 151, the transfer bandwidth of the server connection unit 151 may be narrower than that of the storage connection unit 150. If the query response data has already been written to the cache memory 130 in the DB processing of S3, the scale-up NAS110H does not perform S4, and the pointer indicating the storage location of the query response data is set to the server connection unit. It may be sent to the scale-out NAS member 110L via 151.
The inquiry response message received by the scale-out NAS member 110L is interpreted by, for example, the WEB server program 470 read by the NAS processor 506. The WEB server program 470 responds to the inquiry response message and acquires inquiry response data from the cache memory 130 via the storage connection unit 150 (S6). Then, the WEB server program 470 generates a WEB page 490 on which the acquired inquiry response data (or processed data) is placed, and the WEB page 490 is used as the host terminal 200 which is the source of the WEB page request of S1. Provide to (S7).
Hereinafter, an example of a specific flow of processing of S1 to S7 will be described. In the following description, a branch code is attached to each step belonging to each step. For example, for a step belonging to S2, an uppercase alphabet is added as a branch code after "S2", such as "S2A".
FIG. 8 shows a specific example of the processing of S1 to S2 in FIG.
In the scale-out NAS member 110L selected from the two or more scale-out NAS members 110L that make up the scale-out NAS 111, the WEB server program 470 read by the NAS processor 506 receives the WEB page request received from the host terminal 200. Get (S1). Then, the WEB server program 470 generates a DB server inquiry message (S2A) based on the content of the WEB page request, and transmits the generated DB server inquiry message to the scale-up NAS 110 via the server connection unit 151. (S2B). The sent DB server inquiry message is temporarily stored in the NAS memory 1508 of the scale-up NAS 110H (S2C).
FIG. 9 shows a specific example of the processing of S3 to S4 of FIG.
The memory controller 1505 in the scale-up NAS 110H acquires the DB server inquiry message 108 stored in the NAS memory 1508 (S3A), and the acquired DB server inquiry message 108 is selected from a plurality of NAS processors 1506. Sort to (S3B).
The NAS processor 1506 to which the DB server inquiry message is distributed grasps the location of the DB103 (for example, the ID of the LU310, the head logical block address, and the data size) based on the file system managed by the NAS processor 1506, and determines the DB103. Send a block-level I / O request to retrieve to the I / O processor 1504 (S3C).
The scale-up NAS110H I / O processor 1504 communicates with the DKA140 I / O processor 603 via the storage connection 150 and SM120 (S3D), and makes the I / O request to the storage connection 150. And via CM130, send to I / O processor 603 of DKA140 (S3E).
The I / O processor 603 of the DKA140 reads an I / O request from the cache area (area on the CM130) notified by interprocessor communication via the storage connection 150 (S3F). Then, the I / O processor 603 acquires the DB 103 from the LU 310 according to the I / O request, and stores the DB 103 in the cache memory 130 via the storage connection unit 150 (S3G). Then, the I / O processor 603 of the DKA140 performs inter-processor communication with the I / O processor 1504 of the scale-up NAS 110H via the storage connection unit 150 and the SM120 (S3H).
The I / O processor 1504 of the scale-up NAS 110H reads the DB 103 (S3I) from the cache area (area on the CM130) notified by the inter-processor communication via the storage connection unit 150 and stores it in the NAS memory 1508. One or more NAS processors 1506 processes the DB 103 stored in the NAS memory 1508 based on the contents of the DB server inquiry message distributed by S3B (S3K). For example, one or more NAS processors 1506 extract data having a keyword desired by the user from the DB 103 stored in the NAS memory 1508.
Query response data 105 is generated by S3K DB processing and stored in NAS memory 1508.
The NAS processor 1506 selected from the plurality of NAS processors 1506 sends an I / O request to the I / O processor 1504 requesting that the query response data 105 be stored in the cache memory 130 (S4A). In response to the I / O request, the I / O processor 1504 acquires the query response data 105 in the NAS memory 1508 and stores it in the cache memory 130 (S4B).
FIG. 10 shows a specific example of the processing of S5 to S7 in FIG.
The NAS processor 1506 (in other words, the DB server program 450) of the scale-up NAS 110H sends a query response message containing information on the location where the query response data 105 is stored to the DB server query message via the server connection unit 151. Send to the source scale-out NAS member 110L (S5).
The scale-out NAS member 110L NAS processor 506 (in other words, the WEB server program 470) makes an I / O request to acquire the query response data 105 from the location indicated by the information contained in the query response message. Output to 504 (S6A). The I / O processor 504 acquires the query response data 105 from the cache memory 130 via the storage connection unit 150 according to the I / O request, and stores the acquired query response data 105 in the NAS memory 508 (S6B).
The NAS processor 506 generates a WEB page 490 (S7A) containing the inquiry response data 105 (or data obtained by processing the query response data 105) stored in the NAS memory 508, and generates the generated WEB page 490 as a WEB page. Provided to the host terminal 200 that sent the request (S7B).
As described above, according to the above-described embodiment, both the scale-out NAS 111 and the scale-up NAS 110H are mounted on one storage control system 600. As a result, the performance of the memory control system 600 is improved.
Further, according to the above-described embodiment, each of the two or more scale-out NAS members 110L constituting the scale-out NAS 111 and the scale-up NAS 110H operate as a server. In the storage control system 600, a message between servers (data different from the above data, for example, an inquiry message) is separated from the storage connection unit 150 through which data (for example, user data) stored in or read from LU310 flows. And a response message) are provided with a server connection unit 151. As a result, in the storage control system 600, a plurality of connections are selectively selected according to whether data or a server-to-server message is exchanged between the scale-out NAS member 110L and the scale-up NAS 110H. used. As a result, efficient data processing can be performed in the storage control system 600.
Further, according to the above-described embodiment, the scale-out NAS 111 performs processing capable of parallel processing such as a WEB server, and the scale-up NAS 110H performs processing difficult to be parallel processing such as a DB server. As a result, more efficient data processing can be performed in the storage control system 600.
By the way, some modifications can be considered in this embodiment.
FIG. 11 is a configuration example of the scale-up NAS in the first modification of the present invention.
The data transfer LSI connected to the server connector 1509B is provided with a plurality of input / output ports 501A to 501D. A plurality of transfer paths included in the server connection unit 151 are connected to the plurality of input / output ports 501A to 501D, respectively. Further, a plurality of port IDs (for example, MAC address or IP address) are assigned to each of the plurality of input / output ports 501A to 501D.
The NAS memory 1508 is provided with a message distribution table 503 and a message buffer 502. The message distribution table 503 is a table used to determine which NAS processor among the plurality of NAS processors 1506 distributes the message message received from the scale-out NAS member 110L. For example, in the message distribution table 503, a plurality of distribution destinations corresponding to a plurality of port IDs (for example, MAC addresses) are recorded.
In this first modification, for example, when a server-to-server message (for example, a query message) from the scale-out NAS member 110L is stored in the message buffer 502 via the first I / O port 501 (S11). The memory controller 1505 grasps the distribution destination corresponding to the port ID of the input / output port 501A through which the message has passed from the message distribution table 503 (S12). Then, the memory controller 1505 causes the first NAS processor 1506 corresponding to the grasped distribution destination to process the message stored in the message buffer 502 (S13).
FIG. 12 shows an example of data communication between at least one of the scale-up NAS 110H and the scale-out NAS member 110L and the DKA22 in the second modification of the present invention.
In the second modification, at least one of the scale-up NAS 110H and the scale-out NAS member 110L (hereinafter collectively referred to as "NAS head 110") is not equipped with an I / O processor, and the I / O in the NAS head is not mounted. Let the I / O processor 603 of the DKA22 perform the processing performed by the processor.
For example, as shown in FIG. 12A, a dedicated interrupt line 510 is provided between the NAS head 110 and the DKA22. In this case, the block-level I / O request output from the NAS processor 506 (or 1506) is transmitted to the I / O processor 603 of the DKA22 via the dedicated interrupt line 510.
Further, for example, as shown in FIG. 12B, the command queue 511 is provided in the NAS memory 508 (or 1508) on the NAS head 110. The block-level I / O request output from the NAS processor 506 (or 1506) is stored in its command queue 511 (S21). The DKA22 I / O processor 603 polls the command queue (S22) and, if it detects that an I / O request exists, retrieves the I / O request from the command queue (S23).
FIG. 13 shows a configuration example of the cache memory 130 in the storage control system 600 in the third modification of the present invention.
In the third modification, the cache memory 130 is provided with a used area (hereinafter, server used area) 130A for inter-server processing and a used area (hereinafter, normal used area) 130B for normal read / write processing. Be done. "Inter-server processing" is processing performed when operating not only as a file server but also as another type of server (for example, at least one of the above-mentioned WEB server, AP server, and DB server). .. The "normal read / write process" is a process of receiving a read command or a write command from the host terminal 200, reading the data from the LU310, or writing the data to the LU310 in response to the command.
In this third modification, one of a plurality of used areas existing in the cache memory 130 is selected depending on whether the processing is between servers or normal read / write processing.
Specifically, for example, when DB processing is performed between the scale-up NAS 110H and DKA22, the query response data is stored in the server usage area 130A. On the other hand, for example, when data is exchanged with LU310 via DKA22 by operating the scale-up NAS 110H or scale-out NAS member 110L as a mere file server, or via another type of channel adapter (CHA, for example, Fiber Channel). When the Fiber Channel Adapter (CHF) 110, which receives a block-level I / O request, exchanges data with the LU 310 via the DKA22, the data is stored in the normal use area 130B.
FIG. 14 shows the appearance of the memory control system 600 in the fourth modification of the present invention.
The storage control system 600 can be composed of, for example, a basic housing 10 and a plurality of expansion housings 12. The expansion chassis 12 is an option of the storage control system 600. For example, up to four expansion chassis 12 can be connected to one basic chassis 10. Each expansion housing 12 is provided with a plurality of cooling fans 13. Further, in each expansion housing 12, a plurality of storage devices 300, a plurality of power supply units 400, and a plurality of battery units 500 are detachably provided, and each of them is, for example, a basic housing. It is controlled by the control function of the adapter board inserted into the 10 slots 104.
FIG. 15 shows an outline of the processing flow performed in the computer system 1 according to the fifth modification of the present embodiment.
The scale-up NAS 110H that has acquired the query response data by the DB processing of S3 transmits the query response data together with the query response message to the scale-out NAS member 110L via the server connection unit 151 (S54). In this case, the scale-out NAS member 110L generates the WEB page 490 based on the inquiry response data and provides the WEB page 490 to the host terminal 200 (S6).
Further, in this fifth modification, the scale-up NAS110H selects whether to transfer the query response data via the server connection unit 151 or the storage connection unit 150 based on the data size of the query response data to be transferred. You may. A specific example is shown in FIG.
FIG. 16 shows one process performed by the scale-up NAS 110H in the fifth modification of the present embodiment.
For example, the NAS memory 1508 of the scale-up NAS 110H records a transfer data size threshold value (the value is, for example, 200 MB).
When the scale-up NAS110H acquires the query response data by the DB processing of S3, the scale-up NAS110H compares the data size of the query response data with the transfer data size threshold value on the NAS memory 1508 (S100). As a result of the comparison of S100, when it is determined that the data size of the query response data is equal to or larger than the transfer data size threshold, the scale-up NAS110H caches the query response data via the processing of S4, that is, the storage connection unit 150. Executes the process of storing in the memory 130. On the other hand, when it is determined that the data size of the query response data is less than the transfer data size threshold as a result of the comparison of S100, the scale-up NAS110H processes the query response data via the processing of S54, that is, the server connection unit 151. Is executed to the scale-out NAS member 110L.
Although the embodiments and modifications of the present invention have been described above, these are examples for explaining the present invention, and the scope of the present invention is not limited to these embodiments and modifications. The present invention can also be implemented in various other forms. For example, the WEB server, AP server, and DB server do not need to be separated. Specifically, for example, the WEB server program 470 may have all or part of the functions as an AP server, and the DB server program 450 may have all or part of the functions as an AP server. You may. Further, for example, the scale-up NAS 110H and / or the scale-out NAS member 110L are not limited to the data size of the data, but are the storage connection unit 150 and the server connection unit based on predetermined conditions (for example, the attributes of the data to be transmitted). You may select which of 151 to send the data through, and send the data through the selected connection.
<figref num="1">The outline of the appearance of the memory control system which concerns on one Embodiment of this invention is shown.</figref><figref num="2">The outline of the appearance of the scale-up NAS 110H and the scale-out NAS member 110L is shown.</figref><figref num="3">It is a block diagram which shows the structure of the computer system which includes the memory control system which concerns on this embodiment.</figref><figref num="4">It is a block diagram which shows the configuration example of the scale-out NAS member 110L.</figref><figref num="5">It is a block diagram which shows the configuration example of the scale-up NAS110H.</figref><figref num="6">It is a block diagram which shows the structural example of DKA140.</figref><figref num="7">The outline of the processing flow performed in the computer system 1 according to the present embodiment is shown.</figref><figref num="8">A specific example of the processing of S1 to S2 in FIG. 7 is shown.</figref><figref num="9">A specific example of the processing of S3 to S4 in FIG. 7 is shown.</figref><figref num="10">A specific example of the processing of S5 to S7 in FIG. 7 is shown.</figref><figref num="11">It is a configuration example of the scale-up NAS in the first modification of the present invention.</figref><figref num="12">An example of data communication between at least one of the scale-up NAS 110H and the scale-out NAS member 110L and the DKA22 in the second modification of the present invention is shown.</figref><figref num="13">A configuration example of the cache memory 130 in the storage control system 600 in the third modification of the present invention is shown.</figref><figref num="14">The appearance of the memory control system 600 in the 4th modification of this invention is shown.</figref><figref num="15">The outline of the processing flow performed in the computer system 1 according to the fifth modification of the present embodiment is shown.</figref><figref num="16">One process performed by the scale-up NAS 110H in the fifth modification of the present embodiment is shown.</figref>
Code description
100 ... Storage controller 101 ... Storage unit 103 ... Database 104 ... Data file 110H ... Scale-up NAS head 110L ... Scale-out NAS member 111 ... Scale-out NAS 120. .. Shared memory 130 ... Cache memory 140 ... Disk adapter 150 ... Storage connection 151 ... Server connection 200 ... Host terminal 310 ... Logical unit 600 ... Storage control system 800 ... disk control
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| KR101457302B1 | Cited by | Republic of Korea | Search report |
| JP2010211880A | Cited by | Japan | Examiner |
| JP2012118973A | Cited by | Japan | Examiner |
| JP2007156751A | Cited by | Japan | Examiner |
| JP2012118973A | Cited by | Japan | Search report |
2 priority claims, no other members on record
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 2004109252 | Japan | A | |
| JP20040109252 | – | – | – |
3 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Written withdrawal of applicationA761 | A761 | |
| Written request for application examinationA621 | A621 | |
| Notification of acceptance of power of attorneyRD02 | RD02 |
Numbers
- Publication
- 2005293370
- Publication, DOCDB
- 2005293370
- Publication, EPODOC
- JP2005293370
- Application
- 109252
- Application, DOCDB
- 2004109252
- Application, EPODOC
- JP20040109252
Titles3
- Japanese
- 記憶制御システム
- English
- Memory control system
- English
- STORAGE CONTROL SYSTEM
Classification
- CPC, 6
- G06F3/061
- G06F3/0658
- G06F3/0659
- G06F3/0661
- G06F3/0683
- G06F11/2089
- IPC, 4
- G06F3 06
- G06F11 20
- G06F12 00
- G06F13 10