In a data storage system based on large capacitance, high performance and high availability through a hierarchical construction of redundant arrays of expensive disks (raid) and a method for controlling the storage system, in order to provide better reliability and more prominent performance than the traditional raid, and more particularly, in a hierarchical raid system provided with a plurality of RAIDs in which at least one raid composed of a large number of disks is used as a virtual disk, and a method for controlling the raid system, and further in a record medium capable of being read through a computer having a writing of a program to realize the inventive method; the hierarchical raid system includes a host computing unit; at least one upper level raid controlling unit having a first raid level X, for controlling a plurality of first lower level raid controlling units having a second raid level Y in order to use a lower level raid as a virtual disk; and the plurality of first lower level raid controlling units having the second raid level Y, for controlling numerous member disks under a control of the upper level raid controlling unit so as to be used as the virtual disk of the upper level raid.
|
1. A method for controlling a hierarchical raid system having a plurality of RAIDs in which at lest one raid composed of a plurality of disks is used as a virtual disk, said method comprising the steps of:
a) giving a read-command of existing data and parity from an upper level raid controlling unit to a lower level raid controlling unit when a write-command for new data is given from a host computer; b) performing an exclusive OR of the new data, existing data and the parity, and executing a write-transmission in the lower level raid controlling unit so as to perform a renewal of the parity and the data according to the execution result of the exclusive OR operation; c)generating a command for reading the parity and data of a hard disk in the lower level raid controlling unit according to the read-command of the step a), and transmitting the command to the upper level raid controlling unit; and d) evoking a reading for the data and a parity value and performing the exclusive OR so that the write-command given from the upper level raid controlling unit becomes a write-transmission to each corresponding lower level raid controlling unit, and executing the write-transmission for the renewal of parity and data.
2. A record medium capable of being read through a computer so as to use at least one raid having a plurality of disks as a virtual disk, in a hierarchical raid system having a microprocessor, the record medium characterized in that the computer has a writing of a program to realize:
a first function of giving a read-command for existing data and parity from an upper level raid controlling unit to a lower level raid controlling unit when a write-command for new data is given from a host computer; a second function of performing an exclusive OR of the new data, existing data and the parity, and executing a write-transmission in the lower level PAID controlling unit so as to perform a renewal of the parity and the data according to the execution result of the exclusive OR operation; a third function of generating a command for reading the parity and data of a hard disk in the lower level raid controlling unit according to the read-command of the first function, and transmitting the command to the upper level raid controlling unit; and a fourth function of evoking a reading for the data and a parity value and performing the exclusive OR so that the write-command given from the upper level raid controlling unit becomes the write-transmission to each corresponding lower upper level raid controlling unit, and executing the write-transmission for the renewal of parity and data.
|
The present invention relates to a storage system offering large capacitance, high performance, and high availability through a hierarchical construction of RAID and a method for controlling the storage system; and more particularly, to a hierarchical RAID system including virtual disks, each of which is composed of a traditional RAID with a number of disks, and to a method for controlling the RAID system and a recording medium capable of being read through a computer having a writing of a program to realize the inventive method.
In the last few years, we have experienced huge disparity between I/O subsystem performance and processing power of a computer system that has been growing steadily. Myers has reported that processor power doubled every 2.25 years since 1978, however the I/O performance has not kept pace with the gains in processing power. As the gap between the performance of processors and I/O systems is becoming large, the overall performance of a computer system will depend on the I/O bottleneck. Therefore, it is essential to balancing the I/O bandwidth and the computational power.
Improving I/O performance, known as data declustering and disk striping in disk array systems has been one of the main research topic for computer architects in recent years. Patterson et al. have proposed Redundant Arrays of Inexpensive Disks (RAID) that is defined by five different levels of RAID (Level 1∼5) depending on the data and parity placement scheme. The RAID offers large capacity and high performance using a number of disks, and is a reliable storage system that prevents from data loss by means of single disk redundancy, even if a disk fails.
Redundant arrays of inexpensive disks (hereinafter, referred to as "RAID") offer fault tolerance against disk failures. However a storage system having more disks suffer from less reliability and performance. A RAID architecture tolerating multiple disks failures shows extremely poor performance in comparison with one of the RAID Level 5 due to the complexity of implementation.
Now a day, the demand on huge data-storing capacity required by video on demand, internet data center, data warehousing, digital imaging, nonlinear video editing, and etc increases the number of disks of a RAID. As these trends accelerate, traditional RAID cannot protect from the simultaneous loss of more than one disk. As a result, a lot of research has arisen in disk array system that will not lose data even when multiple disks fails simultaneously.
A RAID is a storage system that offers large capacity and high performance using a number of disks, and is a reliable system that prevents from data loss by means of data redundancy, even if a disk fails. RAID Levels such as Level 0, Level 1, Level 5, Level 6, etc, show different characteristic of reliability and performance. A RAID showing better reliability offers generally poor performance.
The RAID Level 0 is a performance-oriented technology with no redundant data. Therefore the storage system requiring high performance uses this scheme. In this Level, the performance is very good but the reliability falls in proportion to the number of the disks.
The RAID Level 1, or disk mirroring, protects against disk failure by replicating all data stored on the virtual disk at least once. It offers extremely high data reliability, and improves performance. However there is a drawback that extremely many disks are required for this scheme.
The RAID Level 5 protects data loss from single disk failure using single parity disk, however more disks degrade the performance. It suffers still from data reliability because of small amount of parities. The RAID Level 6 improves data reliability using two parity disks, however it suffers from extremely degraded performance in comparison with the RAID Level 5.
Previous works have presented fault tolerant schemes for a disk array tolerating against two disk failures, and another works have presented three-disk-tolerant schemes offering better reliability of a disk array. Their schemes at least double the complexity of implementation in comparison with the RAID Level 5, thus a disk array offering better reliability suffers from severe performance degradation, since practical engineers hesitate to adopt these schemes into a commercial RAID system.
RAID Level 3+1 and Level 5+1 have been introduced to dissolve the performance degradation with attaining high reliability. The RAID Level 3+1 is mirroring of the RAID Level 3, and the RAID Level 5+1 is mirroring of the RAID Level 5. However, there is the drawback that these Levels require too many redundant disks, and their disk utilization is lower than 50%.
Therefore, it is an object of the present invention to provide a hierarchical RAID system having a plurality of RAIDs in which a traditional RAID composed of a large number of disks is used as a virtual disk, in order for a data storing based on large capacitance, high performance, and high availability, and to provide a method for controlling the RAID system, and a record medium capable of being read through a computer having a writing of a program to realize the inventive method.
In accordance with an aspect of the present invention, there is provided a hierarchical RAID system having a plurality of RAIDs, in which at least one RAID having a large number of disks is used as a virtual disk, said hierarchical RAID system comprising: a host computing unit; at least one upper level RAID controlling unit having a first RAID Level (X), for controlling a plurality of first lower level RAID controlling units having a second RAID Level (Y); and the plurality of first lower level RAID controlling units, each of which includes member disks.
In accordance with another aspect of the present invention, there is provided a method for controlling a hierarchical RAID system having a plurality of RAIDs in which at least one RAID composed of a large number of disks is used as a virtual disk, the method includes the steps of: a) giving a read-command of data and parity from an upper level RAID controlling unit to a lower level RAID controlling unit when a write-command for new data is given from a host computer; b) performing an exclusive OR operation of the new data, existing data, and the parity, and executing a write-transmission in the lower RAID controlling unit so as to perform a renewal of the parity and the data according to the execution result of the exclusive OR; c) generating a command for reading the parity and data of a hard disk in the lower level RAID controlling unit according to the read-command of the step a), and transmitting it to the high RAID controlling unit; and d) evoking a reading for the data and a parity value and performing the exclusive OR operation according that the write-command given from the upper level RAID controlling unit becomes the write-transmission of each corresponding lower level RAID controlling unit, and executing the write-transmission for the renewal of parity and data.
In accordance with further another aspect of the present invention, there is provided a hierarchical RAID system having a microprocessor, which is provided so as to utilize at least one RAID composed of a large number of disks as a virtual disk, it is provided for a record medium capable of being read through a computer having a writing of a program, the program being for realizing a first function of giving a reading command for data and parity from a high RAID controlling unit to a lower level RAID controlling unit when a write-command for new data is given from a host computer; a second function of performing an exclusive OR operation of the new data, existing data and the parity, and executing a write-transmission in the lower RAID controlling unit so as to perform a renewal of the parity and the data according to the execution result of the exclusive OR; a third function of generating a command for reading the parity and data of a hard disk in the lower level RAID controlling unit according to the reading command of the first function, and transmitting it to the upper level RAID controlling unit; and a fourth function of evoking a reading for the data and a parity value and performing the exclusive OR operation according that the write-command given from the upper level RAID controlling unit becomes the write-transmission of each corresponding lower RAID controlling unit, and executing the write-transmission for the renewal of parity and data.
The above and other objects and features of the instant invention will become apparent from the following description of preferred embodiments taken in conjunction with the accompanying drawings, in which:
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.
In a general RAID, a disk is directly constructed with the RAID, meantime, an inventive hierarchical RAID system has the construction that the RAID is provided with a virtual disk as another RAID.
As shown in the drawing, the inventive hierarchical RAID system includes a host computer 200 and numerous RAID controllers based on a hierarchical structure. The upper level RAID controller 210 of a RAID Level X connected to the host computer 200 contains a plurality of lower RAID controllers 220, 230, 240 of a RAID Level Y, and the lower level RAID controllers 220, 230, 240 respectively include member disks 221∼223, 231∼233, 241∼243, wherein X and Y indicate, e.g., numbers of traditional RAID Levels such as 0, 1, 3, 5 and 6 etc. The following RAID constructed by the above-described system is named as the homogeneous hierarchical RAID Level X×Y.
The RAID Levels may individually exist in independent RAID controllers, or exist in one RAID controller partially or overall. It is represented 2 as a depth of the hierarchical RAID Level that the high RAID 210 contains the lower level RAIDs 220, 230, 240, the lower level RAID being constructed by disks.
For reference, as shown in
In another hierarchical RAID system of the invention shown in this drawing, it shows the construction of one embodiment for a heterogeneous hierarchical RAID, and the RAID controllers of each hierarchy respectively have optional RAID Levels. That is, only one RAID Level exists in the RAID controller 320, but two or more of RAID Levels may exist as shown in a RAID controller 330. In such heterogeneous hierarchical RAID, the hierarchical RAID 350 can be provided by member disks. In addition, all the above RAID Levels may be contained into one RAID controller. Such hierarchical RAID Levels are represented as the heterogeneous hierarchical RAID.
As afore-described, the RAID Level 6 having prominent reliability offers very bad performance in comparison with the widely used RAID Level 5. The hierarchical RAID Level 5×5 means that the upper level RAID includes the Level 5 and each of the lower level RAIDs includes the Level 5, and its performance is similar to the RAID Level 5 and its reliability is more prominent than the RAID Level 6. It can also made up hierarchical RAID Levels 0×5, 5×0, 1×3, 3×1, 1×5, 5×1, 5×5, 5×6, 6×5 or 6×6, which offers different performance and reliability from each other.
These respective hierarchical RAID Levels provide various characteristics of better reliability and performance than the traditional RAID.
The reliability between the traditional RAID and the hierarchical RAID is compared with each other by means of Markov process, as follows.
In general, the reliability of the RAID is measured in mean-time-to-data-loss (MTTDL). The MTTDL can be numerically obtained as follows, in order to get the reliability based on various construction of the inventive hierarchical RAID.
The reliability of the hierarchical RAID can be obtained from the Markov process for the failure/repair model as shown in
Each branch of a state denotes transition rate to next state. For example, (N-2)λ of two-disk-down state is failure rate (transition rate to three-disk-down state) when two disks have failed. 2μ of two-disk-down state is repair rate (transition rate to single-disk-down state) when two disk have failed, where N is the number of total disks, the repair rate per disk μ is 1/MTTR (mean-time-to-repair), and the failure rate per disks λ equals 1/MTTF (mean-time-to-failure)
Mean-time-to-data-loss (MTTDL) cannot be obtained only using the differential equation, but also the fundamental matrix M that is defined as the following equation (1).
where, Q is the truncated stochastic transitional probability matrix.
The truncated stochastic transitional probability matrixes Q5, Q6, Q7 for the single-disk, two-disk, and three-disk fault tolerant RAID of (A), (B), and (C) for
From the equations (1) and (2), the fundamental matrix M5 of the RAID Level 5 is defined by the following equation (3).
The element mij of M5 is the average time spent in state j given that the process starts in state i before reaching the data-loss state. It was assumed that the system start in state 1 (all-disk-up) and therefore MTTDL is the sum of the average time spent in all state j given that the process starts in state 1. It can formally be written as the following equation (4).
where d+1 is the column size of the fundamental matrix. The MTTDL of the RAID Level 5 can be written as the following equation (5)
In the same ways, the MTTDL of the RAID Level 6 and 7 can be derived by equations (6) and (7).
The MTTDL of the single-disk, two-disk, three-disk fault tolerant RAID can be obtained simply, meanwhile the MTTDL of the RAID Level 1 is somewhat complex. The transitional probability from single-disk-down state to two-disk-down state is neither zero nor one, because if a second failed disk does not correspond to the mirror of the first failed disk, there is no data loss.
where $P(n)$ is the safety probability function that there is no data loss when n disks fail simultaneously. In the mirroring, the data is safe, if each of n mirroring set of N/2 mirroring groups has only one faulty disk. Hence the safety probability function P1(n) of the RAID Level 1 can be written as the following equation (9).
From the equations 1, 8 and 9, and
where d is the maximum number of fault-tolerable disks. In the case of the RAID Level 1, d is equal to N/2. The symbolic equation of the inverse of M-1 cannot be simply derived from Numerical Expression 10, thus we choose numerical method to calculate the MTTDL.
The hierarchical RAID Level 5×5 tolerates at least three disk failures, and at most i+j-1 disk failures. Where, i is the number of virtual disks comprising the upper level RAID, and j is the number of physical disks comprising each lower level RAID. The total number of disks including check and information disks is equal to i×j.
Derivation of the MTTDL of the HiRAID Level 5×5 is also complex. It is similar to the HiRAID Level 1, if P1(n) of equation 10 is replaced with P5×5(n), which can be defined by the following equation (11).
the probability that four disks fail in four separate groups without data loss+the probability that two disks fail in a same group and one disk fails in another group and one disk fails in the other group without data loss+the probability that three disks fail in a same group and one disk fails in another group without data loss+the probability that four disks fail in a same group without data loss.
=
By the above-mentioned method, P5×5(5) is defined by the following equation (12).
From the above two expressions, P5×5 can be generalized by the following equation (13).
If the information of the lower level RAID is unknown to the upper level RAID, the safety probability function P0×5(n) of the hierarchical RAID Level 0×5 is the probability that n disks fail in n separate groups without data loss.
The safety probability function P5×0(n) of the hierarchical RAID Level 5×0 is the probability that n disks fail in a same group without data loss.
The safety probability functions of the hierarchical RAID Level 1×5 and 5×1 are obtained by assigning i=2 and j=2 to the equation (13), respectively.
In
Referring to
We can know that the Level 5+1 (Level 1×5) is poorer than the Level 1 and the Level 5×1, hence the reciprocal configuration of the Level 1×5 is better. The Level 0×5 is also better than the Level 5×0.
The RAID Level 5×5 has prominent excellent reliability and good performance. The worst shortcoming of the RAID Level 6 is that the RAID Level 6 has very bad performance in comparison with the RAID Level 5., while, the hierarchical RAID Level 5×5 has performance similar to the RAID Level 5.
As shown in
As shown in
During the execution of such operation, the read-command R1.c transmitted from the upper level RAID controller to the lower level RAID controller is generated as the read-command (R3.c) and transmission (R3.tr) for reading the data D1 of the hard disk in the lower level RAID controller, and the lower level controller transmits it to the upper level controller (R1.tr).
Further, the read-command R2.c transmitted from the upper level RAID controller to the lower level RAID controller is generated as the read-command (R5.c) and transmission (R5.tr) for reading the parity P1 of the hard disk in the lower level RAID controller. Then the lower level controller transmits it to the high controller (R2.tr).
Finally, write-transmissions W2 and W3 transmitted from the upper level RAID controller become write-transmissions W4 and W5 of the lower RAID controller, respectively. Such two write-operations correspond to the data D1 and the parity P1 shown in FIG. 7. The operations are independently generated in two RAID controllers.
The write-command W4 from the upper level RAID controller generates a reading for the data D1 and a reading (R4.c+R4.tr) for parity values of D1 and D3. The exclusive OR is also performed. Then the write-transmission (W7.tr) for the renewal of the parity of D1 and D3 and the renewal (W6.tr) of the data D1 are generated.
The write-command W5 from the upper level RAID controller generates a reading of the parity P1 and a reading for parity values of P1 and D4 (R6.c +R6.tr). Then the exclusive OR is executed, and the write-transmission (W9.tr) for the renewal of the parity of P1 and D4, and the renewal (W8.tr) of the parity P1.
The complexity of the hierarchical RAID Level 5×5 is about three times of that of the RAID Level 5, however the operations of the hierarchical RAID disperse throughout three RAID controllers. From
Operations of the controllers 1, 2 and 3 of the RAID Level 5×5 shown in
Oc1=3×W.tr+2×R.tr+2×R.c+XOR
The RAID controller 2 and the RAID controller 3 have one more read-command and one more read-transmission comprising single read-transaction. In other words, the RAID Level 5 requires five data transmission requests by one small-write request, and in a case of the hierarchical RAID transmission Level 5×5, the upper level RAID controller generates five data transmissions and the lower level RAID controller generates six data transmissions. However the additional read-transaction resides in the upper channel interfacing the upper level RAID, thus it does not bottleneck the overall performance, because the lower channel has more read/write transactions. Also, the large-write and read operation of the hierarchical RAID Level 5×5 is equal to that of the RAID Level 5 except slight extra latency that it takes for commands to pass through the upper level RAID controller.
The inventive method described above can be embodied as a program and this program can be stored as a type of being read through a computer at a record medium such as CDROM, RAM, ROM, a floppy disk, a hard disk, and an optical magnetic disk etc.
As afore-mentioned, in accordance with the present invention, the inventive technique is provided to remarkably settle problems of a general RAID, for instances, the more the number of the disks is getting, the lower a reliability becomes rapidly, or many disks are required for good performance, or a seriously bad performance is caused in order to heighten the reliability. That is, there is a prominent effect that the disk utilization is considerably increased and high reliability is also provided in an aspect of failure repair, by using, as a virtual disk, the traditional RAID constructing with a large number of disks.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without deviating from the spirit or scope of the invention. Thus, it is intended that the present invention cover the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.
Baek, Sung-Hoon, Ahn, Dae-Young
Patent | Priority | Assignee | Title |
10452289, | Sep 28 2010 | Pure Storage, Inc. | Dynamically adjusting an amount of protection data stored in a storage system |
11435904, | Sep 28 2010 | Pure Storage, Inc. | Dynamic protection data in a storage system |
11797386, | Sep 28 2010 | Pure Storage, Inc. | Flexible RAID layouts in a storage system |
6934904, | Apr 30 2001 | Oracle America, Inc | Data integrity error handling in a redundant storage array |
6938123, | Jul 19 2002 | Oracle America, Inc | System and method for raid striping |
6950966, | Jul 17 2001 | SEACHANGE INTERNATIONAL INC | Data transmission from raid services |
6981171, | Jun 05 2001 | Oracle America, Inc | Data storage array employing block verification information to invoke initialization procedures |
7047354, | Feb 17 2003 | Hitachi, LTD | Storage system |
7057981, | Nov 28 2003 | Hitachi, Ltd. | Disk array system and method for controlling disk array system |
7080201, | May 22 2003 | Hitachi, LTD | Disk array apparatus and method for controlling the same |
7146464, | Feb 17 2003 | Hitachi, Ltd. | Storage system |
7162582, | Nov 18 2002 | ADAPTEC INC | Caching in a virtualization system |
7200074, | Nov 28 2003 | Hitachi, Ltd. | Disk array system and method for controlling disk array system |
7203135, | Nov 28 2003 | Hitachi, Ltd. | Disk array system and method for controlling disk array system |
7272686, | Feb 17 2003 | Hitachi, Ltd. | Storage system |
7275133, | Feb 17 2003 | Hitachi, Ltd. | Storage system |
7366839, | Feb 17 2003 | Hitachi, Ltd. | Storage system |
7423354, | Dec 25 2003 | Hitachi, LTD | Storage system |
7447121, | Nov 28 2003 | Hitachi, Ltd. | Disk array system |
7453774, | Nov 28 2003 | Hitachi, Ltd. | Disk array system |
7457981, | Feb 04 2004 | Hitachi, Ltd. | Anomaly notification control in disk array |
7461203, | May 22 2003 | Hitachi, Ltd. | Disk array apparatus and method for controlling the same |
7475283, | Feb 04 2004 | Hitachi, Ltd. | Anomaly notification control in disk array |
7480765, | May 22 2003 | GOOGLE LLC | Storage unit and circuit for shaping communication signal |
7523146, | Jun 21 2005 | Apple Inc | Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment |
7523258, | May 22 2003 | Hitachi, Ltd. | Disk array apparatus and method for controlling the same |
7587548, | May 22 2003 | Hitachi, Ltd. | Disk array apparatus and method for controlling the same |
7664910, | Dec 20 2004 | Fujitsu Limited | Data management method and apparatus, hierarchical storage apparatus and computer-readable storage medium |
7671485, | Dec 25 2003 | Hitachi, Ltd. | Storage system |
7685362, | May 22 2003 | GOOGLE LLC | Storage unit and circuit for shaping communication signal |
7797670, | Apr 14 2006 | Apple Inc | Mirrored file system |
7814272, | Nov 05 2004 | STORCENTRIC DIP LENDER, LLC | Dynamically upgradeable fault-tolerant storage system permitting variously sized storage devices and method |
7814273, | Nov 05 2004 | STORCENTRIC DIP LENDER, LLC | Dynamically expandable and contractible fault-tolerant storage system permitting variously sized storage devices and method |
7818531, | Nov 05 2004 | STORCENTRIC DIP LENDER, LLC | Storage system condition indicator and method |
7822922, | Apr 22 2004 | Apple Inc. | Accessing data storage systems without waiting for read errors |
7823010, | Feb 04 2004 | Hitachi, Ltd. | Anomaly notification control in disk array |
7865665, | Nov 28 2003 | Hitachi, Ltd. | Storage system for checking data coincidence between a cache memory and a disk drive |
7873782, | Nov 05 2004 | STORCENTRIC DIP LENDER, LLC | Filesystem-aware block storage system, apparatus, and method |
7904672, | Dec 08 2006 | Seagate Technology LLC | System and method for providing data redundancy after reducing memory writes |
7925830, | Feb 17 2003 | Hitachi, Ltd. | Storage system for holding a remaining available lifetime of a logical storage region |
7975187, | Nov 18 2008 | Cisco Technology, Inc | Method and apparatus for measuring customer impacting failure rate in communication networks |
8015442, | Feb 04 2004 | Hitachi, Ltd. | Anomaly notification control in disk array |
8090980, | Dec 08 2006 | Seagate Technology LLC | System, method, and computer program product for providing data redundancy in a plurality of storage devices |
8151046, | May 22 2003 | Hitachi, Ltd. | Disk array apparatus and method for controlling the same |
8200898, | May 22 2003 | Hitachi, Ltd. | Storage apparatus and method for controlling the same |
8230184, | Nov 19 2007 | Seagate Technology LLC | Techniques for writing data to different portions of storage devices based on write frequency |
8244671, | Oct 11 2007 | Microsoft Technology Licensing, LLC | Replica placement and repair strategies in multinode storage systems |
8250397, | Jan 08 2007 | Apple Inc. | N-way synchronization of data |
8321374, | Jun 21 2005 | Apple Inc. | Peer-to-peer N-way syncing in decentralized environment |
8365013, | Feb 04 2004 | Hitachi, Ltd. | Anomaly notification control in disk array |
8370572, | Feb 17 2003 | Hitachi, Ltd. | Storage system for holding a remaining available lifetime of a logical storage region |
8429342, | May 22 2003 | Hitachi, Ltd. | Drive apparatus and method for controlling the same |
8468300, | Nov 28 2003 | Hitachi, Ltd. | Storage system having plural controllers and an expansion housing with drive units |
8478729, | Jun 03 2005 | Hitachi, Ltd. | System and method for controlling the storage of redundant electronic files to increase storage reliability and space efficiency |
8495015, | Jun 21 2005 | Apple Inc. | Peer-to-peer syncing in a decentralized environment |
8504783, | Dec 08 2006 | Seagate Technology LLC | Techniques for providing data redundancy after reducing memory writes |
8635209, | Jun 21 2005 | Apple Inc. | Peer-to-peer syncing in a decentralized environment |
8671233, | Nov 24 2006 | Seagate Technology LLC | Techniques for reducing memory write operations using coalescing memory buffers and difference information |
8725960, | Dec 08 2006 | Seagate Technology LLC | Techniques for providing data redundancy after reducing memory writes |
8775868, | Sep 28 2010 | Pure Storage, Inc.; Pure Storage, Inc | Adaptive RAID for an SSD environment |
8868491, | Aug 04 2006 | Apple Inc. | Method and system for using global equivalency sets to identify data during peer-to-peer synchronization |
9043639, | Nov 05 2004 | STORCENTRIC DIP LENDER, LLC | Dynamically expandable and contractible fault-tolerant storage system with virtual hot spare |
9594633, | Sep 28 2010 | Pure Storage, Inc. | Adaptive raid for an SSD environment |
Patent | Priority | Assignee | Title |
5271012, | Feb 11 1991 | INTERNATIONAL BUSINESS MACHINES CORPORATION, ARMONK, NY 10504 A CORP OF NY | Method and means for encoding and rebuilding data contents of up to two unavailable DASDs in an array of DASDs |
5301297, | Jul 03 1991 | IBM Corp. (International Business Machines Corp.); International Business Machines Corporation | Method and means for managing RAID 5 DASD arrays having RAID DASD arrays as logical devices thereof |
5862158, | Feb 14 1996 | GLOBALFOUNDRIES Inc | Efficient method for providing fault tolerance against double device failures in multiple device systems |
5978856, | Jan 26 1996 | Dell USA, L.P. | System and method for reducing latency in layered device driver architectures |
6101615, | Apr 08 1998 | International Business Machines Corporation | Method and apparatus for improving sequential writes to RAID-6 devices |
JP8016328, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Feb 28 2001 | BAEK, SUNG-HOON | Electronics and Telecommunications Research Institue | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 011643 | /0496 | |
Feb 28 2001 | AHN, DAE-YOUNG | Electronics and Telecommunications Research Institue | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 011643 | /0496 | |
Mar 28 2001 | Electronics and Telecommunications Research Institute | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Jun 30 2004 | ASPN: Payor Number Assigned. |
Apr 20 2007 | M2551: Payment of Maintenance Fee, 4th Yr, Small Entity. |
Feb 24 2010 | ASPN: Payor Number Assigned. |
Feb 24 2010 | RMPN: Payer Number De-assigned. |
Mar 29 2011 | M2552: Payment of Maintenance Fee, 8th Yr, Small Entity. |
May 12 2015 | M2553: Payment of Maintenance Fee, 12th Yr, Small Entity. |
Jan 23 2017 | STOL: Pat Hldr no Longer Claims Small Ent Stat |
Date | Maintenance Schedule |
Nov 18 2006 | 4 years fee payment window open |
May 18 2007 | 6 months grace period start (w surcharge) |
Nov 18 2007 | patent expiry (for year 4) |
Nov 18 2009 | 2 years to revive unintentionally abandoned end. (for year 4) |
Nov 18 2010 | 8 years fee payment window open |
May 18 2011 | 6 months grace period start (w surcharge) |
Nov 18 2011 | patent expiry (for year 8) |
Nov 18 2013 | 2 years to revive unintentionally abandoned end. (for year 8) |
Nov 18 2014 | 12 years fee payment window open |
May 18 2015 | 6 months grace period start (w surcharge) |
Nov 18 2015 | patent expiry (for year 12) |
Nov 18 2017 | 2 years to revive unintentionally abandoned end. (for year 12) |