Optimizing raid migration performance
AssigneeNVIDIA Corporation
InventorsJimmy Zhang, Pinshan Jiang
Life of this patent
Estimating the term…
Abstract
A method of RAID migration comprising reading first and second blocks from a first RAID array. Said first blocks are written to a second RAID array within a first write cycle. Said second blocks are read simultaneously with a portion of said first write cycle in a pipelined fashion. In a first embodiment, pipelining increases the speed of RAID migration from a one-disk stripe array to a two-disk mirror array. In a second embodiment, pipelining and the use of duplicate blocks increases the speed of RAID migration from a two-disk mirror array to a three-disk RAID 5 array. In a third embodiment, pipelining and the use of duplicate blocks increases the speed of RAID migration from a three-disk RAID 5 array to a four-disk RAID 5 array.
Claims20
A method of RAID migration comprising:
- reading first and second blocks from a first RAID array of a first RAID type;
- writing said first blocks to a second RAID array within a first write cycle, wherein said second RAID array is of a second RAID type that is different from the first RAID type;
- and
- wherein said second blocks are read simultaneously with a portion of said first write cycle in a pipelined fashion.
A method of RAID migration comprising:
- reading first blocks from a first RAID array;
- writing said first blocks to a second RAID array wherein said writing said first blocks to said second RAID array creates a first number of duplicate blocks in said first RAID array;
- reading second blocks from said first RAID array;
- writing said second blocks to said second RAID array wherein said writing said second blocks to said second RAID array overwrites at least a fraction of said first number of duplicate blocks in said first RAID array and creates a second number of duplicate blocks in said first RAID array, wherein said second number is greater than said first number;
- reading third and fourth blocks from said first RAID array in a first and second read cycle;
- and
- writing said third and fourth blocks to said second RAID array within a first and second write cycle wherein said writing said third and fourth blocks to said second RAID array overwrites at least a fraction of said second number of duplicate blocks in said first RAID array and creates a third number of duplicate blocks in said first RAID array,
- wherein said first and second read cycles occur substantially simultaneously,
- wherein said first and second write cycles occur substantially simultaneously, and
- wherein further said third number is greater than said second number.
A system of converting a first RAID array to a second RAID array comprising:
- a processor;
- memory coupled to the processor;
- instructions stored within the memory that when executed cause said system perform a method comprising:
- reading first blocks from a first RAID array;
- writing said first blocks to a second RAID array wherein said writing said first blocks to said second RAID array creates a first number of duplicate blocks in said first RAID array;
- reading second blocks from said first RAID array;
- writing said second blocks to said second RAID array wherein said writing said second blocks to said second RAID array overwrites said first number of duplicate blocks in said first RAID array and creates a second number of duplicate blocks in said first RAID array, wherein said second number is greater than said first number;
- reading third and fourth blocks from said first RAID array in a first and second read cycle;
- and
- writing said third and fourth blocks to said second RAID array within a first and second write cycle wherein said writing said third and fourth blocks to said second RAID array overwrites said second number of duplicate blocks in said first RAID array and creates a third number of duplicate blocks in said first RAID array,
- wherein said first and second read cycles occur substantially simultaneously,
- wherein further said first and second write cycles occur substantially simultaneously, and
- wherein said third number is greater than said second number.
Dependencies are inferred from the claim text.