Patent ID: 8489976
Filing Date: 2013-07-16
Classification: G06F

Abstract:
1. A method of storing stripe information having user data with first and second parity data to enable correction of the user data in a storage apparatus including a plurality of disk units, the method comprising: distributing the stripe information to n successive data strips and first and second parity data strips, each of the data strips being stored in respective disk units and having a plurality of data blocks, each of the data blocks storing a part of either the user data or associated parity data and position information indicative of a location of each of the data blocks; obtaining the user data, dividing the user data into a plurality of user data blocks which are adapted to be stored in the data blocks, and determining which user data blocks are to be stored into which data blocks, respectively; determining position information of each of the data blocks to store the user data blocks; setting a first virtual strip used in the generation of first parity data so the first virtual strip is not residing within the plurality of disk units, the first virtual strip including first virtual position information having a first parameter given; generating m successive first parity data for a group of user data blocks of the n successive data strips where one of the n successive data strips comprises m successive user data blocks; generating first associated position information for the m successive first parity data, based on the first parameter given, and associated position information corresponding to the n successive data strips; setting a second virtual data strip used in the generation of second parity data so the second virtual data strip is not residing within the plurality of disk units, the second virtual strip including second virtual position information having a second parameter given; generating m successive second parity data for the group of user data blocks of the n successive data and n weighting functions given; generating second associated position information for the m successive second parity data, based on the associated position information of the n successive data strips, the n weighting functions given, and the second parameter given; and storing the stripe information including the n successive data strips, the first parity strip having the generated first associated information and the second parity strip having the generated second associated position information, and wherein a counter value used to set the first and second virtual data strips is selectively determined in accordance with a number of disks devices or one of the first and the second parity data generated, respectively.