Raid LUN creation using proportional disk mapping
First Claim
1. A method of creating a logical unit in a redundant array of independent disks system having a plurality of disks wherein the method comprises:
- dividing the logical unit into a plurality of segments;
allocating at least one segment to a first disk and at least one segment to a second disk of the plurality of disks;
allocating at least one additional segment to the second disk, and wherein the second disk is allocated proportionally more segments that the first disk; and
receiving a proportional create statement wherein the create statement defines at least one logical unit comprising a predefined number of groups and contains a parameter list of disks and the number of segments to be allocated to each disk for each said group.
9 Assignments
0 Petitions
Accused Products
Abstract
A method and system for creating logical units (LUNs) in a RAID system by allocating proportional amounts of disk storage space to each LUN. Proportional allocation of disk space for different LUNs allows for the selective mapping of more data from the LUN to be mapped to some of the different disks to better optimize the I/O performance in a RAID system. The LUN is divided into a plurality segments or strips are allocated to predetermined disks in a predetermined proportional manner. A proportional create statement defines the proportional mapping and an intelligent RAID controller manages the proportional mapping of information.
207 Citations
9 Claims
-
1. A method of creating a logical unit in a redundant array of independent disks system having a plurality of disks wherein the method comprises:
-
dividing the logical unit into a plurality of segments;
allocating at least one segment to a first disk and at least one segment to a second disk of the plurality of disks;
allocating at least one additional segment to the second disk, and wherein the second disk is allocated proportionally more segments that the first disk; and
receiving a proportional create statement wherein the create statement defines at least one logical unit comprising a predefined number of groups and contains a parameter list of disks and the number of segments to be allocated to each disk for each said group. - View Dependent Claims (2, 3)
generating a memory map indicating the corresponding disk for each segment; and
accessing data in the logical unit according to the memory map.
-
-
4. A method of improving the performance of a redundant array of independent disks system wherein the system comprises a plurality of disks and at least one logical unit associated with disk space on less than all of said disks, said method comprising:
-
analyzing the utilization of the plurality of disks, including hit-rate for each disk;
determining the availability of disk space;
determining whether the available disk space can contain new information; and
creating a new logical unit using proportional mapping wherein;
at least some information from the new logical unit is stored on the disks previously determined to have available space; and
at least one disk is allocated more segments for the new logical unit than another disk having at least one segment for the new logical unit. - View Dependent Claims (5, 6, 7, 8)
receiving a proportional create statement;
parsing the create statement to determine a value relating to a group size and a value relating to the group members;
allocating strips of the logical unit to the physical disks indicated in the create statement according to the proportions indicated in the create statement.
-
-
6. A method as defined in claim 5 wherein the step of allocating strips of the logical unit to the physical disks comprises the following:
-
creating a memory map for the segments in the logical unit and the corresponding disks;
allocating the segments for the logical unit according the memory map.
-
-
7. A method as defined in claim 6 wherein the step of creating a memory map comprises the following:
-
determining characteristics for a first stripe of strips, wherein the characteristics relate to which physical disks receive the first stripe of strips;
allocating strips for the first stripe to the disks;
determining the characteristics for at least one additional stripe of strips wherein the characteristics for the additional stripe of strips differs from the characteristics associated with the first stripe.
-
-
8. A method as defined in claim 7 further comprising the step of creating a conversion memory map for converting logical block addresses to physical addresses.
-
9. A redundant array of independent disks system comprising:
-
a plurality of disks forming an array;
a controller connected to the array of disks for controlling the allocation of data on the physical disks;
a host computer system connected to the controller, wherein the information on the array is presented to the host system as one or more virtual disks;
a module associated with the controller for proportionally mapping virtual disk information to the array;
a parsing module for parsing a proportional create statement wherein the proportional create statement indicates the disks to receive strips of the virtual disk and the relative proportions for each disk;
an allocation module for allocating strips of the virtual disk to the physical disks indicated in the create statement in the indicated proportions; and
a conversion module for converting logical block addresses into physical disk addresses.
-
Specification