USPatent applicationPatented

RAID systems and setup methods thereof that integrate several RAID 0 architectures

Granted 30 Jun 2009 · 2 office actions

Assignee: VIA Technologies Inc.

Law firm: Law firm · Log in to unlock

Attorney: Attorney · Log in to unlock

Inventors: Yong Li, Qing-Chao Luo · Examiner: Hyung S Sough · AU 2188 · TC 2100

Life of the application

10 dated events
⤢ drag to zoom20062008201020122014201620182020202220242026ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

RAID systems and setup methods thereof are provided. At least a first group of disks is selected to create a RAID 0 architecture. A second group of disks is further selected to create the RAID 0 architecture. The RAID 0 architectures are concatenated. The second group is within the first group, and the disks of the second group are the disks having remnant disk capacity after the RAID 0 architecture of the first group is created. The RAID 0 architectures corresponding to the first and second group are created respectively based on the disk having minimum disk capacity size among the disks of the first and second group.

Description

6 parts
›CROSS-REFERENCE TO RELATED APPLICATION

This application is related to copending application entitled “RAID systems and setup methods thereof”, U.S. Application no.: Ser. No. 11/420,084, filed on May 24, 2006.

›BACKGROUND OF THE INVENTION

1. Field of the Invention

The disclosure relates generally to RAID (Redundant Arrays of Independent Disks) systems and setup methods thereof, and, more particularly to systems and setup methods thereof that integrate several RAID 0 architectures.

2. Description of the Related Art

Employment of disk arrays can improve access speed to disks and prevent data lost due to disk failure. Disk arrays integrate several disks into an array, used as a single disk. Data in a disk array is stripped and stored in different disks. During data access, related disks in the disk array can work simultaneously, reducing the data access time.

The technique for disk array is referred to as RAID, and configured in levels RAID 0 to RAID 5. In RAID 0 architecture, since data is stripped and stored in different disks, and respective disks can work independently, data can be simultaneously read/written on different disks, improving the data access efficiency. FIG. 1 is a schematic diagram illustrating a conventional RAID 0 architecture. As shown in FIG. 1 , disks D 0 , D 1 , . . . , Dn are selected as a group to create a RAID 0 architecture, in which data strips S 0 , S 1 , . . . , Sn+ 1 are stored in different disks. It is understood that a strip size parameter must be configured during the creation of RAID 0 architecture, and data is stripped and stored in different disks accordingly.

Generally, an enterprise extends a storage system according to its own requirement. With advances in manufacturing technology and process, disk capacity has grown. Several disks having different sizes may be utilized in an enterprise. In conventional disk array technology, however, only a single RAID level can be applied, such that the capacity of each disk cannot be fully utilized. In FIG. 1 , since disks D 0 , D 1 , . . . ,Dn are selected to create a RAID 0 architecture, and disk D 0 has minimum disk capacity, the disk capacity of disk D 0 size in respective disks is selected to create the RAID 0 architecture. As shown in FIG. 1 , since the disk size of respective disks are different, the remnant disk capacity R 1 in disk D 1 and remnant disk capacity R 2 and R 3 in disk Dn cannot be fully utilized.

›BRIEF SUMMARY OF THE INVENTION

RAID systems and setup methods thereof are provided.

An embodiment of a RAID system comprises a plurality of disks. At least a first group of disks is selected to create a RAID 0 architecture. A second group of disks is further selected to create the RAID 0 architecture. The RAID 0 architectures are concatenated.

In an embodiment of a RAID setup method, at least a first group of disks is first selected, and a RAID 0 architecture is created accordingly. A second group of disks is then selected, and another RAID 0 architecture is created accordingly. The RAID 0 architectures are concatenated.

Setup methods of the RAID systems may take the form of program code embodied in a tangible media. When the program code is loaded into and executed by a machine, the machine becomes an apparatus for practicing the disclosed method.

›BRIEF DESCRIPTION OF THE DRAWINGS

The invention will become more fully understood by referring to the following detailed description with reference to the accompanying drawings, wherein:

FIG. 1 is a schematic diagram illustrating a conventional RAID 0 architecture;

FIG. 2 is a flowchart showing a first embodiment of a RAID setup method;

FIG. 3 is a schematic diagram illustrating a first embodiment of a RAID system;

FIG. 4 is a flowchart showing a second embodiment of a RAID setup method;

FIG. 5 is a schematic diagram illustrating a second embodiment of a RAID system;

FIG. 6 is a flowchart showing a third embodiment of a RAID setup method; and

FIG. 7 is a schematic diagram illustrating a third embodiment of a RAID system.

›DETAILED DESCRIPTION OF THE INVENTION · 1 of 2

RAID systems and setup methods thereof are provided.

FIG. 2 is a flowchart showing a first embodiment of a RAID setup method. It is noted that a plurality of disks, each having corresponding disk capacity size, are provided for disk array creation in this embodiment.

In step S 210 , a number of disks are selected from the disks. The selected disks are prepared to create a RAID 0 architecture. In some embodiments, the selected disks may be all the disks. In step S 220 , a strip size parameter is configured, and a RAID 0 architecture is created based on the disk having minimum disk capacity size among the selected disks. Since data is stripped and stored in different disks, a strip size parameter must be configured during the creation of RAID 0 architecture, and data is stripped and stored in different disks accordingly. It is understood that since RAID 0 architecture is known as industry standard, the creation thereof is omitted herefrom.

In step S 230 , it is determined whether any disk having remnant disk capacity exists. It is understood that each selected disk must provide a disk capacity with the minimum disk capacity size to create the RAID 0 architecture. Since respective disks may have different disk capacity size, some disks may have remnant disk capacity. If so, the procedure goes to step S 210 , the disks having remnant disk capacity are selected, and in step S 220 , a strip size parameter is configured, and a RAID 0 architecture is created based on the disk having minimum disk capacity size among the selected disks. If not, in step S 240 , the RAID 0 architectures are concatenated. It is understood that, in this embodiment, the RAID 0 architectures are concatenated using JBOD (Just a Bunch Of Disks) technique. JBOD is well-known and omitted herefrom.

FIG. 3 is a schematic diagram illustrating a first embodiment of a RAID system. As shown in FIG. 3 , disks D 0 , D 1 , . . . ,Dn are first selected to create a RAID 0 architecture, named RAID 0:0. Since disks D 1 ˜Dn having remnant disk capacity exist, disks D 1 ˜Dn are selected to create a RAID 0 architecture, named RAID 0:1. Since disk Dn still has remnant disk capacity, disk Dn is selected to create a RAID 0 architecture, named RAID 0:2. The RAID 0:0, RAID 0:1 and RAID 0:2 are concatenated as a disk array using JBOD technique. It is understood that once the disk array is created, a RAID controller (not show) can perform related access control operations according to the RAID 0 architecture that data belonged in or required to write to. The data access control in RAID 0 architecture is well-known and omitted herefrom.

FIG. 4 is a flowchart showing a second embodiment of a RAID setup method. In this embodiment, the number of disks is even.

In step S 410 , two disks are selected as a group. In step S 420 , a strip size parameter is configured, and a RAID 0 architecture is created based on the disk having minimum disk capacity size among the group. In step S 430 , it is determined whether any disk having remnant disk capacity exists. If so, the procedure goes to step S 420 , the disk having remnant disk capacity is selected to create a RAID 0 architecture. If not, in step S 440 , it is determined whether all disks have been selected. If not, the procedure goes to step S 410 . If so, in step S 450 , the RAID 0 architectures are concatenated.

FIG. 5 is a schematic diagram illustrating a second embodiment of a RAID system. As shown in FIG. 5 , disks D 0 and D 1 are selected as a group to create a RAID 0 architecture, named RAID 0:0. Since disk D 1 has remnant disk capacity, disk D 1 is selected to create a RAID 0 architecture, named RAID 0:1. Then, disks D 2 and D 3 are selected as a group to create a RAID 0 architecture, named RAID 0:2. Since disk D 3 has remnant disk capacity, disk D 3 is selected to create a RAID 0 architecture, named RAID 0:3. Similarly, other disks undergo the same creation procedure until all disks have been selected. Finally, the RAID 0:0, RAID 0:1, RAID 0:2, RAID 0:3 and other RAID 0 architectures are concatenated as a disk array.

FIG. 6 is a flowchart showing a third embodiment of a RAID setup method. In this embodiment, the number of disks is odd.

In step S 610 , three disks are selected as a group. In step S 620 , a strip size parameter is configured, and a RAID 0 architecture is created based on the disk having minimum disk capacity size among the group. In step S 630 , it is determined whether any disk having remnant disk capacity exists. If so, the procedure goes to step S 620 , in which disks having remnant disk capacity are selected to create a RAID 0 architecture until no disk having remnant disk capacity exists. If not, in step S 640 , two disks are selected as a group. In step S 650 , a strip size parameter is configured, and a RAID 0 architecture is created based on the disk having minimum disk capacity size among the group. In step S 660 , it is determined whether any disk having remnant disk capacity exists. If so, the procedure goes to step S 650 , in which disk having remnant disk capacity is selected to create a RAID 0 architecture. If not, in step S 670 , it is determined whether all disks have been selected. If not, the procedure goes to step S 640 . If so, in step S 680 , the RAID 0 architectures are concatenated.

FIG. 7 is a schematic diagram illustrating a third embodiment of a RAID system. As shown in FIG. 7 , disks D 0 , D 1 and D 2 are selected as a group to create a RAID 0 architecture, named RAID 0:0. Since disks D 1 and D 2 have remnant disk capacity, disks D 1 and D 2 are selected to create a RAID 0 architecture, named RAID 0:1. Disk D 2 still has remnant disk capacity, and is selected to create a RAID 0 architecture, named RAID 0:2. Then, other disks undergo the creation procedure in the second embodiment (as shown in FIG. 5 ) until all disks have been selected. As shown FIG. 7 , disks D 3 and D 4 are selected as a group to create a RAID 0 architecture, named RAID 0:3. Since disk D 4 has remnant disk capacity, disk D 4 is selected to create a RAID 0 architecture, named RAID 0:4. Finally, the RAID 0 architectures are concatenated as a disk array.

›DETAILED DESCRIPTION OF THE INVENTION · 2 of 2

RAID systems and setup methods thereof, or certain aspects or portions thereof, may take the form of program code (i.e., executable instructions) embodied in tangible media, such as products, floppy diskettes, CD-ROMS, hard drives, or any other machine-readable storage medium, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine thereby becomes an apparatus for practicing the methods. The methods may also be embodied in the form of program code transmitted over some transmission medium, such as electrical wiring or cabling, through fiber optics, or via any other form of transmission, wherein, when the program code is received and loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the disclosed methods. When implemented on a general-purpose processor, the program code combines with the processor to provide a unique apparatus that operates analogously to application specific logic circuits.

While the invention has been described by way of example and in terms of preferred embodiment, it is to be understood that the invention is not limited thereof. Those who are skilled in this technology can still make various alterations and modifications without departing from the scope and spirit of this invention. Therefore, the scope of the present invention shall be defined and protected by the following claims and their equivalents.

Claims as granted

14 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

5 codes
IPC · International Patent Classification
Section G — Physics
  • G06F12/00
USPC · US Patent Classification
711/114711/154711/171711/162

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomJul 2006Jan 2007Jul 2007Jan 2008Jul 2008Jan 2009Jul 2009USPTOApplicantNon-final rejectionResponse after non-finalFinal rejection
USPTOApplicanthover for detail · click to open
Pendency
3.1 y
1,133 days filing → grant
Office actions
2
non-final + final
Responses
2
no RCE
Examiner
Hyung S Sough
art unit 2188 · TC 2100
Citations: 7 back · 0 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom20062008201020122014201620182020202220242026Owner 1
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock