Array type disk system updating redundant data asynchronously with data access
First Claim
1. An array type disk system, comprising:
- a plurality of disk units, each of which includes a data area for storing data therein and a parity area for storing redundant data corresponding to the stored data therein, and which are arranged in the form of arrays and are operated in parallel;
a disk control device which controls data accesses to respective disk units;
a host computer system which commands the disk control device to access the respective disk units;
update data generation means for generating update data by performing an exclusive OR operation between data before a write operation and data to be written when the data is to be first written into an address in a pertinent one of said disk units, and for generating new update data by performing an exclusive OR operation among the data before the write operation, the data to be written and the generated update data when the data is to be written into the address in the pertinent disk unit again, wherein the generation of update data utilizes a singular disk units;
update data holding means for holding therein the update data generated by said update data generation means;
log data generation means for generating a parity address as log data in association with the held update data, the parity address being that address of a particular one of said disk units at which redundant data for the data of the data address is stored;
log data holding means, which includes a nonvolatile memory, for holding therein the log data generated by said log data generation means; and
delayed parity generation means, operating asynchronously with the process of writing the data into said pertinent disk unit, for reading the redundant data associated with the update data out of the parity address of the particular disk unit in accordance with the parity address of the log data, for generating new redundant data on the basis of an exclusive OR operation performed on the redundant data read out of said particular disk unit in accordance with the parity address of the log data and the update data associated therewith from said update data holding means, and for writing the new redundant data into said particular disk unit in accordance with the parity address of the log data, wherein the generation of new redundant data utilizes a singular disk unit.
3 Assignments
0 Petitions
Accused Products
Abstract
In a disk array system, data read out and data written anew are temporarily held as former data in a former data holding portion. When a write operation has occurred, a CPU searches the holding portion for write data, it generates update data from the new and former write data items, and it holds the generated update data in an update data holding portion. In addition, the CPU stores the storage address of redundant data associated with the held update data, as log data in a log data holding portion. Further, the CPU operates asynchronously with the write operation to read out the redundant data of the address of the holding portion, to calculate new redundant data from the read redundant data and the held update data, and to write the new redundant data into the address of the log data. On this occasion, a parity area and a data area are separated so as to heighten read/write processing speeds and a parity generation processing speed.
-
Citations
38 Claims
-
1. An array type disk system, comprising:
-
a plurality of disk units, each of which includes a data area for storing data therein and a parity area for storing redundant data corresponding to the stored data therein, and which are arranged in the form of arrays and are operated in parallel; a disk control device which controls data accesses to respective disk units; a host computer system which commands the disk control device to access the respective disk units; update data generation means for generating update data by performing an exclusive OR operation between data before a write operation and data to be written when the data is to be first written into an address in a pertinent one of said disk units, and for generating new update data by performing an exclusive OR operation among the data before the write operation, the data to be written and the generated update data when the data is to be written into the address in the pertinent disk unit again, wherein the generation of update data utilizes a singular disk units; update data holding means for holding therein the update data generated by said update data generation means; log data generation means for generating a parity address as log data in association with the held update data, the parity address being that address of a particular one of said disk units at which redundant data for the data of the data address is stored; log data holding means, which includes a nonvolatile memory, for holding therein the log data generated by said log data generation means; and delayed parity generation means, operating asynchronously with the process of writing the data into said pertinent disk unit, for reading the redundant data associated with the update data out of the parity address of the particular disk unit in accordance with the parity address of the log data, for generating new redundant data on the basis of an exclusive OR operation performed on the redundant data read out of said particular disk unit in accordance with the parity address of the log data and the update data associated therewith from said update data holding means, and for writing the new redundant data into said particular disk unit in accordance with the parity address of the log data, wherein the generation of new redundant data utilizes a singular disk unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. An array type disk system, comprising:
-
a plurality of disk units, each of which includes a data area for storing data therein and a parity area for storing redundant data corresponding to the stored data therein, and which are arranged in the form of arrays and are operation in parallel; a disk control device which controls data accesses to the respective disk units; a host computer system which commands the disk control device to access the respective disk units; update data generation means for generating update data by performing an exclusive Or operation between data before a write operation and data to be written when the data is to be first written into an address in a pertinent one of said disk units and for generating new update data by performing an exclusive OR operation among the data before the write operation, the data to be written and the generated update data when the data is to be written into the address in the pertinent disk unit again, wherein the generation of update data utilizes a singular disk unit; update data holding means for holding therein the update data generated by said update data generation means; former data holding means for holding read data therein when the data has been read out of a certain data address in a pertinent one of said disk units. wherein during an operation of writing the data into the data address in the pertinent disk unit, an operation of reading the data out of the data address of said pertinent disk unit is omitted in accordance with the data before the write operation being held in said former data holding means; log data generation means for generating a parity address as log data, the parity address being that address of a particular one of said disk units at which redundant data for the data of the disk address is stored; log data holding means, which includes a nonvolatile memory, for holding therein the log data generated by said log data generation means; and delayed parity generation means, operating asynchronously with the process of writing the data into said pertinent disk unit, for reading the redundant data corresponding to the data address out of the parity address of the particular disk unit in accordance with the parity address of the log data, for generating new redundant data in accordance with an exclusive OR operation performed on the redundant data read out of said particular disk unit in accordance with the parity address of the log data and the update data associated therewith from said update data holding means, and for writing the new redundant data into said particular disk unit in accordance with the parity address of the log data, wherein the generation of new redundant data utilizes a singular disk unit. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A method of controlling an array type disk system having:
-
a plurality of disk units, each of which includes a data area for storing data therein and a parity area for storing redundant data corresponding to the stored data therein, and which are arranged in the form of arrays and are operated in parallel; a disk control device which controls data accesses to respective disk units; a host computer system which commands the disk control device to access the respective disk units; said control method comprising the steps of; generating update data through calculation of exclusive OR between data before a write operation and data to be written when the data is to be first written into an address in a pertinent one of said disk units, and generating new update data through calculation of exclusive OR among the data before the write operation, the data to be written and the generated update data when the data is to be written into the address in the pertinent disk unit again, wherein the generation of update data utilizes a singular disk unit; holding the generated update data; holding a parity address as log data in association with the held update data, the parity address being that address of a particular one of said disk units at which redundant data for the data of the data address is stored; and reading the redundant data associated with the update data out of the parity address of the particular disk unit in accordance with the parity address of the log data, generating new redundant data which is the result of exclusive OR between the redundant data read out and the update data associated therewith, and writing the new redundant data into said particular disk unit in accordance with the parity address of the log data, asynchronous with the process of writing the data into said pertinent disk unit, wherein the generation of new redundant data utilizes a singular disk unit.
-
Specification