Dynamic redistribution of parity groups
First Claim
1. A method for storing data in a computer network, comprising:
- determining a size of a parity group in response to a write request, said size describing a number of data blocks in said parity group;
arranging at least a portion of data from said write request according to said data blocks;
computing a parity block for said parity group;
storing each of said data blocks on a separate disk drive such that no two data blocks from said parity group reside on the same disk drive;
storing said parity block on a separate disk drive that does not contain any of said data blocks; and
redistributing said parity group to improve storage efficiency.
5 Assignments
0 Petitions
Accused Products
Abstract
A system and method for dynamic redistribution of parity groups is described. The system and method for dynamic redistribution of parity groups operates on a computer storage system that includes a plurality of disk drives for storing parity groups. Each parity group includes storage blocks. The storage blocks include one or more data blocks and a parity block that is associated with the data blocks. Each of the storage blocks is stored on a separate disk drive such that no two storage blocks from a given parity set reside on the same disk drive. The computer system further includes a redistribution module to dynamically redistribute parity groups by combining some parity groups to improve storage efficiency.
-
Citations
20 Claims
-
1. A method for storing data in a computer network, comprising:
-
determining a size of a parity group in response to a write request, said size describing a number of data blocks in said parity group; arranging at least a portion of data from said write request according to said data blocks; computing a parity block for said parity group; storing each of said data blocks on a separate disk drive such that no two data blocks from said parity group reside on the same disk drive; storing said parity block on a separate disk drive that does not contain any of said data blocks; and redistributing said parity group to improve storage efficiency. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for storing data in a computer network, comprising:
-
storing a first parity group comprising first data blocks and a first parity block, wherein said act of storing the first parity group comprises storing each of said first data blocks on a separate disk drive such that no two of the first data blocks reside on the same disk drive; storing a second parity group comprising second data blocks and a second parity block, wherein said act of storing the second parity group comprises storing each of said second data blocks on a separate disk drive such that no two of the second data blocks reside on the same disk drive; and redistributing said first parity group and said second parity group to improve storage efficiency. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system for storing data in a computer network, comprising:
-
means for determining a size of a parity group in response to a write request, said size describing a number of data blocks in said parity group; means for arranging at least a portion of data from said write request according to said data blocks; means for computing a parity block for said parity group; means for storing each of said data blocks on a separate disk drive such that no two data blocks from said parity group reside on the same disk drive; means for storing said parity block on a separate disk drive that does not contain any of said data blocks; and means for redistributing said parity group to improve storage efficiency. - View Dependent Claims (20)
-
Specification