CN100483323C - Method, system, and program for managing data updates - Google Patents

Method, system, and program for managing data updates Download PDF

Info

Publication number
CN100483323C
CN100483323C CNB2004800390685A CN200480039068A CN100483323C CN 100483323 C CN100483323 C CN 100483323C CN B2004800390685 A CNB2004800390685 A CN B2004800390685A CN 200480039068 A CN200480039068 A CN 200480039068A CN 100483323 C CN100483323 C CN 100483323C
Authority
CN
China
Prior art keywords
ablation process
record
indication
group
disk storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2004800390685A
Other languages
Chinese (zh)
Other versions
CN1898636A (en
Inventor
F·科拉多
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN1898636A publication Critical patent/CN1898636A/en
Application granted granted Critical
Publication of CN100483323C publication Critical patent/CN100483323C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1071Power loss, i.e. interrupted writes due to power loss in a RAID system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1095Writes number reduction, i.e. reducing the number of writes in a RAID array with parity

Abstract

Provided are a method, system, and program for managing updates of user data and parity data stored in stripes across a plurality of disk storage units arranged in a data organization type such as a RAID array. In one embodiment, a record of stripes potentially containing inconsistent user and parity data is stored on a disk storage unit. In another aspect, before writing a record of stripes to a disk storage unit, stripe entries for a plurality of write processes is permitted to accumulate. In another aspect, a record of stripes may be written to different disk storage units and a generation number is used to identify the latest record of stripes.

Description

Be used to write the methods, devices and systems of data
Technical field
Embodiment relates to and being used in organization system for example more method, the system and program of new data in the RAID system.
Background technology
Having proposed many technology is used for organizing and is stored in for example data of disk drive of memory device.This data storage organization is called independent (or cheap) dish redundant array or (RAID).In RAID tissue, two or more disk drives are used, improving fault-tolerant or performance, or the two.Dissimilar RAID data storage organization is arranged, and these different types often are called 0 grade of RAID, 1 grade, 2 grades ....
For example, in 0 grade of data tissue of RAID, make user's file data become " band " shape, that is, user data block is distributed on a plurality of dishes to improve performance.But, in 0 grade of data tissue of RAID, if one of them drives fail does not then provide redundancy to make data usually and recovers.3 grades of data tissues of RAID and 0 grade of RAID are similar, store error correction data but remain with a dish usually, usually are called " odd and even data ".If a drives fail, then this odd and even data just can be used to the user data of reconstructing lost.
Fig. 1 illustrates an example of 5 grades of data tissues of RAID, be included in disk drive 20a, 20b ... a plurality of bands on the 20e: band 1, band 2 ... band n.Each band comprises a plurality of user data blocks 10 and an odd and even data piece 12.There is not specific disk drive to be used for storing odd and even data piece 12 specially.But, the odd and even data piece 12 that is used for these bands be distributed in array all dish 20a, 20b ... on the 20e, with further improvement performance.
When Fig. 2 shows when upgrade in the RAID system band with new data on old user's data on the band n for example in order to generate the logical operation that new odd and even data can carry out.As shown in Figure 2, can carry out the XOR operation to the new user data 30 on the band n and old user's data 32.The result of exclusive-OR operation can carry out nonequivalence operation with the old odd and even data 33 of band n, to generate the new odd and even data 36 of band n.New odd and even data 36 can be used to be overwritten in the old odd and even data 33 on the suitable RAID storage unit, and new user data 30 can be used for being overwritten in the old data 32 on the suitable RAID storage unit.
Because the user data of arbitrary particular bands resides on the different disk drives usually with odd and even data, therefore the user data and the odd and even data of a band often do not upgrade simultaneously.New odd and even data just was written into after new user data may write band, or vice versa.If upgrading the write operation intermediate system outage of band, so in some systems, the user data of band will be inconsistent with the odd and even data of band.
So, if system interrupts because of outage or other fault before write operation is finished, then can preserve these bands, be commonly referred to the record of " dirty band ", it is inconsistent that it may contain odd even.For example, some known memory controllers have nonvolatile memory, and for example NVRAM (nonvolatile RAM) has wherein kept dirty tape recording.In case service restoration, but just dirty tape recording in the access nonvolatile memory of memory controller, and recover the odd even consistance of listed dirty band.
However, but industry has a kind of needs always, improve the processor performance in the data storage organization.
Summary of the invention
According to an aspect of the present invention, a kind of method that writes data is provided, this method comprises: storage first record in disk storage unit, and wherein said first record comprises that the user data that is stored on a plurality of disk storage units and the band of odd and even data may contain the inconsistent indication of odd even; In described band, write user data and odd and even data by described record indication; Remove described indication; Receive a plurality of indications at first accumulation period from first group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And in response to the described a plurality of indications from described first group of a plurality of ablation process, a plurality of indications of storage in second record, it is inconsistent that each indication of wherein said second record points out that the target stripe of described first group of a plurality of ablation process may contain odd even; At described accumulation period, postpone that described second record is write disk storage unit; And receive clear instruction from first ablation process of described first group of a plurality of ablation process, and in response to described clear instruction, stop described accumulated phase and will described second write down writing disk storage unit.
According to another aspect of the present invention, a kind of device that is used to write data is provided, this device comprises: with the unit of first recording storage in disk storage unit, wherein said first record comprises the user data that is stored on a plurality of disk storage units and the band of odd and even data may contain the inconsistent indication of odd even; In described band, write the unit of user data and odd and even data by described record indication; Remove the unit of described indication; Receive the unit of a plurality of indications at first accumulation period from first group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And in response to described a plurality of indications from described first group of a plurality of ablation process, the unit of a plurality of indications of storage in second record, it is inconsistent that each indication of wherein said second record points out that the target stripe of described first group of a plurality of ablation process may contain odd even; At described accumulation period, postpone the unit that described second record is write disk storage unit; And receive clear instruction from first ablation process of described first group of a plurality of ablation process, and in response to described clear instruction, stop described accumulated phase and will described second write down the unit that writes disk storage unit.
According to a further aspect of the invention, provide a kind of system that is used to write data, this system comprises: at least one internal memory, and it comprises operating system and application program; Be connected to the processor of described internal memory; Data-carrier store with a plurality of disk storage units; Data storage controller is used to manage I/O (I/O) access to described data-carrier store; With the parts of first recording storage in disk storage unit, wherein said first record comprises that the user data that is stored on described a plurality of disk storage unit and the band of odd and even data may contain the inconsistent indication of odd even; In described band, write the parts of user data and odd and even data by described record indication; Remove the parts of described indication; Receive the parts of a plurality of indications at first accumulation period from first group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And in response to described a plurality of indications from described first group of a plurality of ablation process, the parts of a plurality of indications of storage in second record, it is inconsistent that each indication of wherein said second record points out that the target stripe of described first group of a plurality of ablation process may contain odd even; At described accumulation period, postpone the parts that described second record write disk storage unit; And receive clear instruction from first ablation process of described first group of a plurality of ablation process, and in response to described clear instruction, stop described accumulated phase and will described second write down the parts that write disk storage unit.
Description of drawings
Now consult accompanying drawing, identical Ref. No. is represented corresponding components in institute's drawings attached:
Fig. 1 is illustrated in the RAID data prior art tissue in the band on a plurality of disk drives;
The prior art that Fig. 2 is illustrated in RAID odd and even data in the Data Update generates;
Fig. 3 illustrates an embodiment of the computing environment that realizes each side of the present invention;
Fig. 4 illustrates the memory controller example of the computing environment that can be used for Fig. 3;
Fig. 5 A illustrates an embodiment of dirty the tape recording that is stored on the disk drive;
Fig. 5 B illustrates an embodiment of dirty the tape recording that is kept by log manager;
Fig. 6 illustrates an embodiment of dirty the performed operation of tape recording of management;
Fig. 7 illustrates with dirty tape recording and cooperates the embodiment that writes the performed operation of data;
Fig. 8 illustrates dirty tape recording of management and cooperates the timeline chart that writes the embodiment that data operate with dirty tape recording;
Fig. 9 illustrates an embodiment who is cooperated the cleaning record that is kept by log manager with dirty tape recording; And
Figure 10 illustrates the architecture that can use with described embodiment.
Embodiment
In the following description, consult accompanying drawing, wherein accompanying drawing forms a part of the present invention, and several embodiment are shown.Should be understood that and to use other embodiment, and can make structure and operation change.
Fig. 3 illustrates the computing environment example that can realize Data Update.Computing machine 102 comprises one or more CPU (central processing unit) (CPU) 104 (only illustrating), internal memory 106, nonvolatile memory 108, storage of processor 109 and operating system 110.Computing machine 102 can be communicated by letter with network 111 by network adapter 112.Application program 114 is carried out in internal memory 106, and can be from storer 108 sense data and write data to it.Computing machine 102 can comprise any computing equipment that industry is known, for example: large scale computer, server, personal computer, workstation, kneetop computer, handheld computer, telephone plant, the network equipment, virtual equipment, memory controller or the like.Any CPU 104 and operating system 110 that industry is known all can be used.As the part of memory management operation, program in the internal memory 106 and data are commutative in storer 108.
Device driver 120 is carried out in internal memory 106, and comprises the memory controller specific instruction, with and storage of processor 109 and operating system 110 and storage of processor 109 between interface communication.Device driver 120 comprises log manager 130, and its management maintains the record that is stored in the data cell in the storer 108, and wherein odd even may be because ongoing Data Update and inconsistent.For example, storer 108 can comprise a plurality of disk drive 150a, 150b ... 150n, the rank of types of organization such as RAID has wherein kept odd and even data.
In some implementations, storage of processor 109 is carried out some operation, to assist computing machine 102 sense data and write data to it from storer 108.For example, storage of processor 109 can have software, firmware or hardware or their combination, with LBA (LBA (Logical Block Addressing)) address from computing machine 102 convert to disk drive 150a, 150b ... the cylinder of 150n, magnetic head and sector standard.An example of the storage of processor 109 that is suitable for is 80200 processors and 80312 supporting integrated circuit that present assignee, Intel company sell.In another embodiment, the memory controller that is similar to 80200 processors and 80312 supporting integrated circuit can change to the part or all of function that comprises log manager 130 and ablation process described herein.
Fig. 4 synoptic diagram illustrates an example of storage of processor 109.Storage of processor 109 is convenient to fast moving mass data between main frame 102 and storer 108.Storage of processor 109 comprises electric bridge 160, and it is at the main bus 162 of main frame 102 and be connected between the inferior bus 164 of memory controller 166 of storer 108.It for example can be the memory controller 166 and main bus 162 physical isolation of serial-Advanced Technology Attachment (SATA) controller that electric bridge 160 allows.Details about the SATA architecture have explanation at technical specification " serial ATA: high speed serialization AT annex (Serial ATA:High Speed Serialized AT Attachment) " Rev.1.0A in (in January, 2003).
Main address conversioning unit 168 provides from main bus 162 by the high throughput data path of local bus 174 to processor 170 and local memory 172.Be connected to the logic engine 175 in addition of local bus 174, it can be processor 170 the additional treatments resource is provided.Inferior address conversioning unit 178 provides the high throughput data path from processor 170 and local memory 172 to inferior bus 164.In the embodiment shown, bus the 162, the 164th, pci bus, but the peripheral bus of other type also can use.Details about the PCI architecture provide in " PCI local bus (PCI Local Bus), Rev.2.3 " that PCI-SIG publishes.
Local memory 172 has Memory Controller Hub 180.In the embodiment shown, local memory 172 is RAM type storeies, is used for data are carried out high-speed cache.Also can use the storer of other type.Direct memory access (DMA) (DMA) controller allow from main frame 102 to local memory 172 and the direct memory from local memory 172 to driver 150a...150n transmit.In addition, can provide nonvolatile memory, for example non-volatile random access (NVRAM) storer is to store dirty stripe information.
The function that is used for carrying out the storage of RAID categorical data and transmits can realize in storage of processor 109, driver 120 or the combination of the two.This function also can for example realize in the network adapter 112 at miscellaneous equipment.
According to an aspect of illustrated embodiment, log manager 130 for example keeps the record 200 (Fig. 5 A) of dirty band among disk drive 150a, the 150b...150n at nonvolatile memory.Thereby, in some applications, just can not need in for example dirty the tape recording among the NVRAM of the nonvolatile memory of storage of processor 109.In other was used, if nonvolatile memory or memory controller lost efficacy, the record 200 that then is stored among one or more disk drive 150a, the 150b...150n just provided backup.
On the other hand, log manager 130 for example keeps dirty tape recording 202 (Fig. 5 B) in the internal memory 106 of computing machine 102 at storer.As detailed below, this configuration allowed before dirty tape recording 202 being write among disk drive 150a, the 150b...150n disk drive the dirty band record of accumulation clauses and subclauses in record 202.Like this, dirty tape recording 202 of accumulation just becomes dirty tape recording 200 of a disk drive among disk drive 150a, the 150b...150n.Thereby, in some applications, just can reduce the dish write operation number that dirty stripe information is write a disk drive among disk drive 150a, the 150b...150n.
Aspect another, log manager 130 can generate a plurality of dirty tape recordings 200, and each record is write in the difference dish among disk drive 150a, the 150b...150n.This configuration is convenient to carry out the parallel batch processing of write operation.Need to use dirty tape recording 200 if having, then driver 120 can identify dirty the nearest tape recording 200 that is stored on disk drive 150a, the 150b...150n.Dirty nearest tape recording 200 can be used for identifying some dirty bands (that is, may have the band of inconsistent user and odd and even data) then, so that can recover the odd even consistance of the band that identifies.
Fig. 6 shows the operational instances that log manager 130 generates also dirty tape recording 200 of holding tray driver and dirty tape recording 202 of daily record, and it cooperates with one or more data write operation or process, and Fig. 7 shows an example.After the data in starting (frame 210 of Fig. 7) data writing process is arranged in disk drive 150a, 150b...150n in the RAID array with renewal the particular bands of certain volume, ablation process begins to read old user's data to be updated from the target stripe of target volume, shown in the read operation 212 of Fig. 8 timeline chart.
In addition, ablation process begins to read old odd and even data to be updated from target volume and band, shown in another read operation 214 of Fig. 8.Also have, ablation process begins in transfer operation 216 new user data to be sent in the storage of processor 109.In Fig. 8 example, this transfer operation can be that DMA transmits.Also can use other categorical data to transmit.In some applications, the transmission of new data to memory controller can not take place before data being write disk drive.
Also after starting (frame 210 of Fig. 7) data writing process, ablation process sends (Fig. 7,8 frame 220) instruction to log manager 130, is labeled as dirty band in dirty tape recording 202 of daily record with the target stripe with ablation process.Respond by (frame 222 of Fig. 6), log manager 130 writes down the reel number and the bar reel number of (Fig. 6,8 frame 224) target stripe in dirty tape recording 202 of daily record.Shown in Fig. 5 B, dirty tape recording 202 of daily record comprises a plurality of clauses and subclauses 230a, 230b...230e, and each clauses and subclauses has the bar reel number that is associated of the reel number and field 234 storage target stripe of a field 232 storage target stripe.
In the example of Fig. 5 B, clauses and subclauses 230c writes in response to ablation process 240c, and its operation is shown in Fig. 7.So ablation process 230c sends (frame 220) instruction and is labeled as dirty band with the target stripe with this ablation process.Except that ablation process 230c shown in Figure 7, computing machine 102 can have a plurality of ablation process 240a, 240b...240e parallel work-flow.Because each ablation process all starts in the mode of the process frame 210 that is similar to Fig. 7, therefore ablation process sends instruction in the mode of the process frame 220 that is similar to Fig. 7 to log manager 130, is input as clauses and subclauses in dirty tape recording 202 of daily record with the target stripe with this ablation process.
Some dirty band clauses and subclauses may be imported before clauses and subclauses 230c, and is represented as existing clauses and subclauses 230a, 230b.So in this example, ablation process 240a can make the dirty band record of daily record clauses and subclauses 230a be input for the target stripe of ablation process 240a; And ablation process 240b can make the dirty band record of daily record clauses and subclauses 230b be input for the target stripe of ablation process 240b.
According to an aspect, dirty band clauses and subclauses do not need the startup to each ablation process 240a, 240b... to respond and are directly inputted in dirty tape recording 200 of disk drive.But, before writing dirty tape recording 202 of daily record dirty tape recording 200 of disk drive one of in as disk drive 150a, 150b...150n, can allow the dirty band clauses and subclauses accumulation a period of time in dirty tape recording 202 of daily record.Like this, for example, two additional is written in parallel to process 240d, 240e and is shown as the target stripe that the clauses and subclauses that make two additional entries 230d, 230e in dirty tape recording 202 of daily record are respectively applied for ablation process 240d, 240e respectively.
In the embodiment shown, in case this batch is written in parallel to one of process 240a, 240b...240e and receives the new user data that (frame 250 of Fig. 7) will write this ablation process target stripe, just instruction of ablation process (Fig. 7,8 frame 252) log manager 130 " is cleaned (flush) ", be about to dirty tape recording 202 of daily record and one of be written among disk drive 150a, the 150b...150n, so that dirty tape recording 202 of daily record becomes dirty the tape recording 200 of disk drive that one of is stored among disk drive 150a, the 150b...150n.Can the clearlyest find out by Fig. 8, in case start first ablation process of (frame 210 of Fig. 7) this batch ablation process 240a, 240b...240e, its time is labeled as time t0 in the timeline of Fig. 8, log manager 130 just can be later dirty the tape recording of ablation process accumulation of this batch that is starting in dirty tape recording 202 of daily record, receive its new user data up to this batch one of process that is written in parallel at that time, its time is labeled as time t1 in the timeline of Fig. 8.
Should be understood that ablation process that time t0 that the mark ablation process starts can be used for is different from first receives its process that is written in parallel at the new user data of time t1 mark.Though t0-t1 during dirty tape recording accumulation period has been described as should be understood that beginning and the end that also can select the dirty band accumulation period of other period mark.For example, should be understood that divisor reportedly send outer incident to can be used to trigger the clear instruction of generation to log manager 130.For example, in one embodiment, wherein ablation process generates in batch, and the ablation process of this batch can forbid generating the clear instruction to log manager 130, till each target stripe for each ablation process of this batch has all write dirty band record.
Other incident can be used to indicate the period of dirty tape recording accumulation.Except that dirty tape recording of accumulation, as following, in response to totally instructing from the mark that each ablation process receives (frame 322) at this accumulation period, log manager 130 also can be labeled as target stripe totally (frame 324).
To the instruction of one of cleaning or be written to from the dirty stripe information with being comprised in dirty tape recording 202 of daily record of ablation process among disk drive 150a, the 150b...150n respond (frame 260 of Fig. 6), log manager 130 is determined (frame 262), for the dirty band clauses and subclauses of the record 202 of the ablation process that sends clear instruction, whether dirty tape recording of daily record 202 is cleaned.This determines that cleaning record 270 by audit log makes, it comprises a plurality of clauses and subclauses 272a, 272b...272e as dirty tape recording 202 of daily record, each clauses and subclauses has the reel number of a field 232 storage target stripe, and the bar reel number that is associated of the target stripe of field 234 storage ablation process.The target stripe of an ablation process of each clauses and subclauses 272a, 272b...272e sign, the dirty band record of the corresponding daily record of its clauses and subclauses 232a...232h clauses and subclauses are cleaned, that is are written to dirty tape recording 200 of disk drive.Like this, if determine by (frame 262), target stripe for the ablation process that sends clear instruction, dirty tape recording 202 of daily record has been cleaned, then log manager 130 continues to accumulate (frame 222,224) dirty band clauses and subclauses for other is written in parallel to process in dirty tape recording 202 of daily record, up to till be written in parallel to process and receive another clear instruction.
If determine (frame 262), for the target stripe of the ablation process that sends clear instruction, dirty tape recording 202 of daily record is not cleaned, and then log manager 130 increases progressively record in the field 282 that (frame 280) be stored in dirty tape recording 202 of daily record and generates number.This record generate the information that number can be used to determine record 202 in a single day be written into one of disk drive 150a, 150b...150n whether be the nearest record 200 of dirty tape recording 200 of the disk drive of writing.
In addition, record 270 is cleaned in log manager 130 marks (Fig. 6,8 frame 284) daily record, is written to the dirty band tabulation of dirty tape recording 200 of disk drive with indication.In one embodiment, this can clean clauses and subclauses 272a...272e before record 270 any and all current dirty band clauses and subclauses 232a...232e of dirty tape recording 202 of daily record are copied to daily record and clean record 270 and finish by wiping daily record.Like this, the record that record 270 just can provide all dirty band clauses and subclauses 232a...232e that are written to dirty tape recording 200 of nearest disk drive is cleaned in daily record.
Also have, log manager 130 is written to one of disk drive 150a, 150b...150n (so that dirty tape recording 202 of current daily record becomes dirty tape recording 200 of nearest disk drive) with the information of dirty tape recording 202 of current daily record.So in this example, the dirty band clauses and subclauses 230a-230e of record 202 is written as the dirty band clauses and subclauses 291a-291e of the dirty band daily record 200 of disk drive.In addition, the generation field 282 of record 202 is copied to the field 282 of record 200.
After finishing the writing of dirty tape recording 200 of nearest disk drive, log manager 130 sends (Fig. 6,8 frame 292, frame 290) dirty tape recording and writes and finish callback and write down each ablation process that 270 target stripe clauses and subclauses 272a...272e is identified to being cleaned by daily record.This callback is cleaned record 270 listed ablation process to daily record and pointed out: the record that its target stripe has been designated dirty band is written to disk drive, as dirty tape recording 200 of nearest disk drive.
So, receive (frame 300 of Fig. 7) dirty tape recording and write the ablation process of finishing callback and can begin new user data with each ablation process and write (Fig. 7,8 frame 302) target stripe to the ablation process that is associated.If outage or other interruption take place in ablation process, then the odd and even data consistance of the possible dirty band that is identified in dirty tape recording 200 of the nearest disk drive that is written to disk drive can be resumed.Therefore, just can avoid reinitializing of the whole odd and even data of rolling up.
In case ablation process is read (operation 212 of Fig. 8) old data, read (operation 214 of Fig. 8) old odd and even data and receive the new data that (operation 216 of Fig. 8) is written to this ablation process target stripe from target stripe from target stripe, this ablation process just can generate (operation 310) new odd and even data.Except that writing new user data, in case receiving dirty tape recording writes and finishes callback, in a single day ablation process has been finished and has been that target stripe generates (frame 312 of Fig. 7) new odd and even data, just can begin new odd and even data is write the target stripe that (Fig. 7,8 frame 314) arrives this ablation process.
In case ablation process has been finished the target stripe that new user data and new odd and even data is written to this ablation process, the target stripe that writes data into ablation process is promptly accused and is finished.Correspondingly, ablation process can send (Fig. 7,8 frame 320) instruction to log manager 130, is labeled as totally with the target stripe with ablation process.
To clean respond (frame 322 among Fig. 6) that instruct of mark from ablation process, log manager 130 will identify this ablation process from dirty tape recording 202 of daily record target stripe is that the clauses and subclauses of dirty band remove (frame 324), because the ablation process for this band is finished, and this band no longer may be " dirty ", and promptly user data can be consistent with odd and even data.But according to a further aspect, log manager 130 can be not clean to disk drive 150a, 150b...150n with the information of dirty the tape recording 202 of daily record upgraded immediately.But, log manager can continue the make a fresh start instruction of the process that is written in parallel to of accumulation (frame 222), and their target stripe is added (frame 224) arrive dirty tape recording 202 of daily record, as write down 202 clauses and subclauses 230f, 230g, 230h...230n with shown in the mirage, up to receiving till (frame 260) be used for not cleaning as yet the clear instruction of target stripe clauses and subclauses of (frame 262).Also have, log manager can continue the mark band that accumulation process that is written in parallel to before (frame 322) sends and totally instruct when they are finished, and from dirty tape recording 202 of daily record, remove (frame 324) their target stripe, be used for not cleaning as yet the clear instruction of the target stripe clauses and subclauses of (frame 262) up to receiving (frame 260).Like this, the write operation to disk drive 150a, 150b...150n just can reduce.
In case determine by (frame 262), target stripe for the ablation process that sends clear instruction, dirty tape recording 202 of daily record do not cleaned as yet, log manager 130 increases progressively (frame 280) and is stored in record in the field 282 and generates number, and mark (Fig. 6,8 frame 284) daily record cleans record 270, is written to the dirty band tabulation of dirty tape recording 200 of disk drive with indication.Also have, log manager 130 is written to dirty tape recording 202 of current daily record (Fig. 6,8 frame 290) one of disk drive 150a, 150b...150n, so that the information that is comprised in dirty tape recording 202 of current daily record becomes dirty tape recording 200 of nearest disk drive.If after at this moment outage takes place or other interrupts, then the consistance of the odd and even data of the target stripe of removing from dirty tape recording 200 of daily record will not need to recover, because each is all finished to the ablation process of the target stripe of removing clauses and subclauses.Therefore, just can avoid being labeled as the reinitializing of odd and even data of clean target stripe.
If computer system 102 is closed (frame 350 of Fig. 6) with normal mode, all ablation process are all finished, and there is not dirty band to stay in dirty tape recording 202 of daily record, then but the field 354 (Fig. 4) of dirty tape recording 202 of log manager 130 marks (frame 352) daily record is totally closed with indication.And, for example all do not have the RAID write operation in 3 seconds if system or log manager 130 detected in a period of time, but, close to indicate totally with regard to tag field 354.If the result is cut off the power supply subsequently, the clear operation in the time of just can avoiding restarting.
In addition, log manager 130 increases progressively record in the field 282 that (frame 280) be stored in dirty tape recording 202 of daily record and generates number, and mark (Fig. 6,8 frame 284) daily record cleans record 270, and the dirty band tabulation that is written to dirty tape recording 200 of disk drive with indication is empty.In one embodiment, this can realize by any clauses and subclauses 272a...272e in the past that wipes daily record cleaning record 270.Also have, log manager 130 is written to dirty tape recording 202 of current daily record (Fig. 6,8 frame 290) one of disk drive 150a, 150b...150n (so that dirty tape recording 202 of current daily record becomes dirty tape recording 200 of nearest disk drive).In this embodiment, the clauses and subclauses of dirty tape recording 202 of daily record are empty, because totally close.After finishing the writing of dirty tape recording 200 of nearest disk drive, log manager 130 does not need to send (Fig. 6,8 frame 292) dirty tape recording and writes and finish callback, because there is ablation process to be cleaned the null object band clauses and subclauses 272a...272e sign of record 270 by daily record.
When restarting systems 102, can check having by the field 354 of totally closing of dirty tape recording 200 of disk drive of the nearest generation of field 282 indication number.If field 354 indication mechanisms were to close in clean mode in the past, then there is not the odd and even data consistance of band to be resumed.Thereby, just can avoid reinitializing of the whole odd and even data of rolling up.On the other hand, if field 354 indication of totally closing of dirty tape recording 200 of nearest disk drive is closed and is not clean, then can clauses and subclauses 291a, the 291b... of dirty tape recording 200 of disk drive be checked, may have those bands of inconsistent user and odd and even data with sign, so that can the odd and even data that identify band be reinitialized.
The additional embodiment details
The described technology that is used for the management data migration can be embodied as uses standard program and/or engineering to produce method, equipment or the goods of software, firmware, hardware or their any combinations.Word used herein " goods " is meant code or the logic that for example realizes in magnetic storage medium (for example hard disk drive, floppy disk, tape etc.), optical memory (CD-ROM, CD etc.), volatibility and the nonvolatile semiconductor memory member (for example EEPROM, ROM, PROM, RAM, DRAM, SRAM, firmware, FPGA (Field Programmable Gate Array) etc.) at hardware logic (for example integrated circuit (IC) chip, programmable gate array (PGA), special IC (ASIC) etc.) or computer-readable medium.Code in the computer-readable medium is by processor access and execution.The code of realizing preferred embodiment also can be by transmission medium or from the file server access on network.In these cases, the goods of code can comprise transmission medium, and for example Network transmission line, wireless transmission medium, signal are then by propagation such as space, radiowave, infrared signals.So " goods " can comprise the medium of implementing code.In addition, " goods " can comprise the combination of the hardware and software component of enforcement, processing and run time version.Certainly, those skilled in the art will appreciate that, can make many changes for this configuration, and goods can comprise any information bearing medium that industry is known.
In some implementation, device driver can be included in the computer system, this computer system comprises memory controller, for example above-mentioned serial-Advanced Technology Attachment (SATA), Serial Attached SCSI (SAS) (SAS), redundant array of independent disks (RAID) etc., controller, its management is to the access of Nonvolatile memory devices, for example tape or one or more disk storage unit, each disk storage unit comprises a disc driver or a CD.In alternative implementation, memory controller embodiment can be included in the system that does not have driver.More details to the SAS architecture that is used for equipment and extender have explanation at technical specification " infotech-Serial Attached SCSI (SAS) (SAS) (Information Technology-Serial AttachedSCSI (SAS)) ", with reference to the no.ISO/IEC14776-150:200x and the ANSIINCITS. that are published by ANSI * *: 200x PHY layer (on July 9th, 2003).
In some implementation, device driver and memory controller embodiment can realize in comprising the computer system of Video Controller, so that information to be provided, show that on the monitor that is connected to the computer system that comprises device driver and network adapter this computer system comprises desk-top computer, workstation, server, large scale computer, kneetop computer, handheld computer etc.Alternative is that memory controller and device driver embodiment can realize in the computing equipment that does not comprise Video Controller.
In some implementation, log manager 130 is shown as a part that operates in the driver in the main memory 106.In other embodiments, log manager 130 can for example realize in storage of processor 109 in hardware.Therefore, log manager can software, hardware, firmware or their any combination realize.
In some implementation, network adapter can be configured to be connected to the cable transmitting data of network adapter upper port.Alternative is that network adapter embodiment can be configured at wireless network or connects transmitting data, for example WLAN, bluetooth etc.
Logic shown in Fig. 7 a-7b shows some incident that occurs in sequence with certain.In alternative, some operation can different order be carried out, change or remove.And certain operations can be added above-mentioned logic to, and still conforms to described embodiment.In addition, operation as herein described can take place successively, but perhaps some operation parallel processing.Also have, these operations can be carried out by single processing unit or by distributed processing unit.
Figure 10 shows an implementation of the Computer Architecture 500 of networking component, main frame for example shown in Figure 3 and memory device.Architecture 500 can comprise processor 502 (for example microprocessor), internal memory 504 (for example volatile memory) and storer 506 (for example nonvolatile memory, for example disc driver, CD drive, tape drive etc.).Storer 506 can comprise internal storage device or the additional or accessible storer of network.Program in the storer 506 is loaded in the internal memory 504 and by processor 502 in the known mode of industry and carries out.Memory controller 507 writable control storages 506.This architecture also comprises network adapter 508, so that can for example communicate by letter in Ethernet, FC-AL road etc. with network.Details about fibre channel architecture have explanation in technical specification " Fibre Channel Framing andSignaling Interface ", document number is ISO/IEC AWI 14165-25.
In addition, in certain embodiments, this architecture can comprise Video Controller 509, and so that information to be provided on display monitor, wherein Video Controller 509 can be realized on video card, or is integrated on the integrated circuit package that is installed on the motherboard.As described, some network equipment can have a plurality of storage cards or controller.Input equipment 510 is used to provide the user's input to processor 502, and can comprise any other activation or input parts that keyboard, mouse, a pin, loudspeaker, touching display screen or industry are known.Output device 512 can provide from processor 502 or other assembly information transmitted such as display monitor, printer, storer for example.
Memory controller 506 and network adapter 508 can be respectively realize on card, for example peripheral component interconnect (pci) card or certain other I/O card, or on the integrated circuit package that is installed on the motherboard, realize.
Provided the above-mentioned explanation of various embodiment for diagram and illustration purpose.Above-mentioned instructions, example and data provide the complete description of the manufacturing and the use of each composition.Should not think that this instructions is an exclusiveness, or be confined to disclosed clear and definite form.Can make many changes and change according to foregoing.

Claims (30)

1. method that writes data comprises:
Storage first record in disk storage unit, wherein said first record comprises that the user data that is stored on a plurality of disk storage units and the band of odd and even data may contain the inconsistent indication of odd even;
In described band, write user data and odd and even data by described record indication;
Remove described indication;
Receive a plurality of indications at first accumulation period from first group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And
In response to described a plurality of indications from described first group of a plurality of ablation process, a plurality of indications of storage in second record, it is inconsistent that each indication of wherein said second record points out that the target stripe of described first group of a plurality of ablation process may contain odd even;
At described accumulation period, postpone that described second record is write disk storage unit; And
Receive clear instruction from first ablation process of described first group of a plurality of ablation process, and, stop described accumulation period and described second record is write disk storage unit in response to described clear instruction.
2. the method for claim 1, wherein said first record contains a plurality of indications for a plurality of bands on described a plurality of disk storage units, promptly described a plurality of bands each all may to contain odd even inconsistent.
3. method as claimed in claim 2, wherein said a plurality of disk storage units are arranged to redundant array of independent disks type tissue.
4. the method for claim 1 also is included in and finishes when described second record write disk storage unit, sends record to each ablation process of described first group of a plurality of ablation process and writes and finish indication.
5. method as claimed in claim 4, second ablation process of wherein said first group of a plurality of ablation process receives to write down to write in response to it finishes indication, with target stripe that described second ablation process is associated in write user data and odd and even data, and send mark for the target stripe that is associated with described second ablation process and totally instruct.
6. method as claimed in claim 5, comprise that also receiving mark from described second ablation process of described first group of a plurality of ablation process totally instructs, and totally instruct in response to described mark, from described second record, remove the target stripe that is associated with described second ablation process and may contain the inconsistent indication of odd even.
7. method as claimed in claim 6 also comprises:
In response to described clear instruction, described second record is write the cleaning record;
Receive second clear instruction from the 3rd ablation process of described first group of a plurality of ablation process; And
Determine to contain second record that the target stripe that is associated with described the 3rd ablation process may contain the inconsistent indication of odd even and whether be written into disk storage unit.
8. method as claimed in claim 6 also comprises:
After described clear instruction, receive second group of a plurality of indication from second group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And
In response to described second group of a plurality of indication from described second group of a plurality of ablation process, second group of a plurality of indication of storage in described second record, it is inconsistent that each indication of described second group of a plurality of indication of wherein said second record points out that the target stripe of described second group of a plurality of ablation process may contain odd even.
9. method as claimed in claim 8, also comprise from first ablation process of described second group of a plurality of ablation process and receive the 3rd clear instruction, and in response to described the 3rd clear instruction, described second record is write disk storage unit, the described indication of wherein said removing comprises described second record is write disk storage unit, in this disk storage unit, the target stripe relevant with described second ablation process may contain the inconsistent indication of odd even and be removed.
10. method as claimed in claim 9, wherein first record generates with first and number is stored in first disk storage unit, and second record number is stored in the internal memory that is different from first disk storage unit with second generation.
11. a device that is used to write data, described device comprises:
With the unit of first recording storage in disk storage unit, wherein said first record comprises the user data that is stored on a plurality of disk storage units and the band of odd and even data may contain the inconsistent indication of odd even;
In described band, write the unit of user data and odd and even data by described record indication;
Remove the unit of described indication;
Receive the unit of a plurality of indications at first accumulation period from first group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And
In response to described a plurality of indications from described first group of a plurality of ablation process, the unit of a plurality of indications of storage in second record, it is inconsistent that each indication of wherein said second record points out that the target stripe of described first group of a plurality of ablation process may contain odd even;
At described accumulation period, postpone the unit that described second record is write disk storage unit; And
Receive clear instruction from first ablation process of described first group of a plurality of ablation process, and, stop described accumulation period and write down the unit that writes disk storage unit described second in response to described clear instruction.
12. device as claimed in claim 11, wherein said first record contains a plurality of indications for a plurality of bands on described a plurality of disk storage units, promptly described a plurality of bands each all may to contain odd even inconsistent.
13. device as claimed in claim 12, wherein said a plurality of disk storage units are arranged to redundant array of independent disks type tissue.
14. device as claimed in claim 11 also is included in and finishes described second record when writing disk storage unit, sends record to each ablation process of described first group of a plurality of ablation process and writes the unit of finishing indication.
15. device as claimed in claim 14, comprise that also second ablation process that is used to make described first group of a plurality of ablation process receives record in response to it and writes and finish indication, with target stripe that described second ablation process is associated in write user data and odd and even data, and send the unit of the clean instruction of mark for the target stripe that is associated with described second ablation process.
16. device as claimed in claim 15, comprise that also receiving mark from described second ablation process of described first group of a plurality of ablation process totally instructs, and totally instruct in response to described mark, from described second record, remove the unit that the target stripe that is associated with described second ablation process may contain the inconsistent indication of odd even.
17. device as claimed in claim 16 also comprises:
In response to described clear instruction, described second record is write the unit that cleans record;
Receive the unit of second clear instruction from the 3rd ablation process of described first group of a plurality of ablation process; And
Determine to comprise the unit whether second record that the target stripe that is associated with described the 3rd ablation process may contain the inconsistent indication of odd even has been written into disk storage unit.
18. device as claimed in claim 16 also comprises:
After described clear instruction, receive the unit of second group of a plurality of indication from second group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And
In response to described second group of a plurality of indication from described second group of a plurality of ablation process, the unit of second group of a plurality of indication of storage in described second record, it is inconsistent that each indication of described second group of a plurality of indication of wherein said second record points out that the target stripe of described second group of a plurality of ablation process may contain odd even.
19. device as claimed in claim 18, also comprise from first ablation process of described second group of a plurality of ablation process and receive the 3rd clear instruction, and in response to described the 3rd clear instruction, described second record is write the unit of disk storage unit, the described indication of wherein said removing comprises described second record is write disk storage unit, in this disk storage unit, the target stripe relevant with described second ablation process may contain the inconsistent indication of odd even and be removed.
20. device as claimed in claim 19, wherein first record generates with first and number is stored in first disk storage unit, and second record number is stored in the internal memory that is different from first disk storage unit with second generation.
21. a system that is used to write data comprises:
At least one internal memory, it comprises operating system and application program;
Be connected to the processor of described internal memory;
Data-carrier store with a plurality of disk storage units;
Data storage controller is used to manage the I/O I/O access to described data-carrier store;
With the parts of first recording storage in disk storage unit, wherein said first record comprises that the user data that is stored on described a plurality of disk storage unit and the band of odd and even data may contain the inconsistent indication of odd even;
In described band, write the parts of user data and odd and even data by described record indication;
Remove the parts of described indication;
Receive the parts of a plurality of indications at first accumulation period from first group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And
In response to described a plurality of indications from described first group of a plurality of ablation process, the parts of a plurality of indications of storage in second record, it is inconsistent that each indication of wherein said second record points out that the target stripe of described first group of a plurality of ablation process may contain odd even;
At described accumulation period, postpone the parts that described second record write disk storage unit; And
Receive clear instruction from first ablation process of described first group of a plurality of ablation process, and, stop described accumulation period and write down the parts that write disk storage unit described second in response to described clear instruction.
22. system as claimed in claim 21, wherein said first record comprises a plurality of indications for a plurality of bands on described a plurality of disk storage units, promptly described a plurality of bands each all may to contain odd even inconsistent.
23. the system as claimed in claim 22, wherein said a plurality of disk storage units are arranged to redundant array of independent disks type tissue.
24. system as claimed in claim 21 also is included in and finishes described second record when writing disk storage unit, sends record to each ablation process of described first group of a plurality of ablation process and writes the parts of finishing indication.
25. system as claimed in claim 24, comprise that also second ablation process that makes described first group of a plurality of ablation process receives record in response to it and writes and finish indication, with target stripe that described second ablation process is associated in write user data and odd and even data, and send the parts of the clean instruction of mark for the target stripe that is associated with described second ablation process.
26. system as claimed in claim 25, comprise that also receiving mark from second ablation process of described first group of a plurality of ablation process totally instructs, and totally instruct in response to described mark, from described second record, remove the parts that the target stripe that is associated with described second ablation process may contain the inconsistent indication of odd even.
27. system as claimed in claim 26 also comprises:
In response to described clear instruction, described second record is write the parts that clean record;
Receive the parts of second clear instruction from the 3rd ablation process of described first group of a plurality of ablation process; And
Determine to comprise the parts whether second record that the target stripe that is associated with described the 3rd ablation process may contain the inconsistent indication of odd even has been written into disk storage unit.
28. system as claimed in claim 26 also comprises:
After described clear instruction, receive the parts of second group of a plurality of indication from second group of a plurality of ablation process, it is inconsistent wherein to point out that from each indication of ablation process the target stripe that is associated with the said write process may contain odd even on described a plurality of disk storage units; And
In response to described second group of a plurality of indication from described second group of a plurality of ablation process, the parts of second group of a plurality of indication of storage in described second record, it is inconsistent that each indication of described second group of a plurality of indication of wherein said second record points out that the target stripe of described second group of a plurality of ablation process may contain odd even.
29. system as claimed in claim 28, also comprise: receive the 3rd clear instruction from first ablation process of described second group of a plurality of ablation process, and in response to described the 3rd clear instruction, described second record is write the parts of disk storage unit, the described indication of wherein said removing comprises described second record is write disk storage unit, in this disk storage unit, the target stripe relevant with described second ablation process may contain the inconsistent indication of odd even and be removed.
30. system as claimed in claim 29, wherein first record generates with first and number is stored in first disk storage unit, and second record number is stored in the internal memory that is different from first disk storage unit with second generation.
CNB2004800390685A 2003-12-29 2004-12-20 Method, system, and program for managing data updates Expired - Fee Related CN100483323C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/747,921 US7197599B2 (en) 2003-12-29 2003-12-29 Method, system, and program for managing data updates
US10/747,921 2003-12-29

Publications (2)

Publication Number Publication Date
CN1898636A CN1898636A (en) 2007-01-17
CN100483323C true CN100483323C (en) 2009-04-29

Family

ID=34700806

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800390685A Expired - Fee Related CN100483323C (en) 2003-12-29 2004-12-20 Method, system, and program for managing data updates

Country Status (7)

Country Link
US (1) US7197599B2 (en)
EP (1) EP1700199B1 (en)
CN (1) CN100483323C (en)
AT (1) ATE488798T1 (en)
DE (1) DE602004030155D1 (en)
TW (1) TWI292904B (en)
WO (1) WO2005066759A2 (en)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7779294B2 (en) * 2005-04-15 2010-08-17 Intel Corporation Power-safe disk storage apparatus, systems, and methods
US7441146B2 (en) * 2005-06-10 2008-10-21 Intel Corporation RAID write completion apparatus, systems, and methods
US7562188B2 (en) * 2005-06-17 2009-07-14 Intel Corporation RAID power safe apparatus, systems, and methods
WO2007012921A2 (en) * 2005-07-27 2007-02-01 Adaptec, Inc. Parity update footprints kept on disk
US7925827B2 (en) * 2005-11-04 2011-04-12 Oracle America, Inc. Method and system for dirty time logging
US7930495B2 (en) * 2005-11-04 2011-04-19 Oracle America, Inc. Method and system for dirty time log directed resilvering
US8938594B2 (en) * 2005-11-04 2015-01-20 Oracle America, Inc. Method and system for metadata-based resilvering
US8074019B2 (en) * 2007-11-13 2011-12-06 Network Appliance, Inc. Preventing data loss in a storage system
US20090300282A1 (en) * 2008-05-30 2009-12-03 Promise Technology, Inc. Redundant array of independent disks write recovery system
CN103984587B (en) * 2008-06-12 2017-10-20 普安科技股份有限公司 The method of the control program of physical storage device is updated in sas storage virtualization system
US8397051B2 (en) 2009-02-23 2013-03-12 Autonomy, Inc. Hybrid hash tables
US20100215175A1 (en) * 2009-02-23 2010-08-26 Iron Mountain Incorporated Methods and systems for stripe blind encryption
US8090683B2 (en) * 2009-02-23 2012-01-03 Iron Mountain Incorporated Managing workflow communication in a distributed storage system
US8145598B2 (en) * 2009-02-23 2012-03-27 Iron Mountain Incorporated Methods and systems for single instance storage of asset parts
KR101562794B1 (en) * 2009-08-04 2015-10-26 삼성전자주식회사 Data storage device
KR101694984B1 (en) 2010-12-08 2017-01-11 한국전자통신연구원 Method of parity updates in asymmetric clustering filesystem
US9229809B2 (en) * 2011-09-11 2016-01-05 Microsoft Technology Licensing Llc Nonvolatile media journaling of verified data sets
US8456972B2 (en) 2011-09-12 2013-06-04 Microsoft Corporation Efficient access to storage devices with usage bitmaps
US20170031791A1 (en) * 2015-07-27 2017-02-02 Futurewei Technologies, Inc. Maintaining a parity-inconsistent table to identify stripes affected by a write hole effect
US9959046B2 (en) * 2015-12-30 2018-05-01 Samsung Electronics Co., Ltd. Multi-streaming mechanism to optimize journal based data storage systems on SSD

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
AU653670B2 (en) 1992-03-10 1994-10-06 Data General Corporation Improvements for high availability disk arrays
US5574882A (en) 1995-03-03 1996-11-12 International Business Machines Corporation System and method for identifying inconsistent parity in an array of storage
US5778426A (en) * 1995-10-23 1998-07-07 Symbios, Inc. Methods and structure to maintain a two level cache in a RAID controller and thereby selecting a preferred posting method
US6041423A (en) 1996-11-08 2000-03-21 Oracle Corporation Method and apparatus for using undo/redo logging to perform asynchronous updates of parity and data pages in a redundant array data storage environment
US6073218A (en) * 1996-12-23 2000-06-06 Lsi Logic Corp. Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
US6381674B2 (en) * 1997-09-30 2002-04-30 Lsi Logic Corporation Method and apparatus for providing centralized intelligent cache between multiple data controlling elements
US6334168B1 (en) * 1999-02-19 2001-12-25 International Business Machines Corporation Method and system for updating data in a data storage system

Also Published As

Publication number Publication date
TW200529195A (en) 2005-09-01
DE602004030155D1 (en) 2010-12-30
ATE488798T1 (en) 2010-12-15
WO2005066759A2 (en) 2005-07-21
EP1700199A2 (en) 2006-09-13
US7197599B2 (en) 2007-03-27
US20050144381A1 (en) 2005-06-30
EP1700199B1 (en) 2010-11-17
TWI292904B (en) 2008-01-21
CN1898636A (en) 2007-01-17
WO2005066759A3 (en) 2006-06-22

Similar Documents

Publication Publication Date Title
CN100483323C (en) Method, system, and program for managing data updates
US9652343B2 (en) Raid hot spare system and method
US7206899B2 (en) Method, system, and program for managing data transfer and construction
US8719520B1 (en) System and method for data migration between high-performance computing architectures and data storage devices with increased data reliability and integrity
US8560772B1 (en) System and method for data migration between high-performance computing architectures and data storage devices
US7571291B2 (en) Information processing system, primary storage device, and computer readable recording medium recorded thereon logical volume restoring program
US8037347B2 (en) Method and system for backing up and restoring online system information
US20050086559A1 (en) Storage system using fast storage devices for storing redundant data
CN101351760A (en) Method and system for accessing auxiliary data in power-efficient high-capacity scalable storage
US7222135B2 (en) Method, system, and program for managing data migration
CN105103234A (en) Solid state drive architectures
GB2400935A (en) Configuring memory in a RAID controller
EP2573689A1 (en) Method and device for implementing redundant array of independent disk protection in file system
JP2000099282A (en) File management system
JP2005276196A (en) System and method for performing drive recovery subsequent to drive failure
US20100115310A1 (en) Disk array apparatus
US6766414B2 (en) Methods, apparatus and system for caching data
US20090083503A1 (en) System of creating logical volume and method thereof
CN101073066B (en) Method, system, and program for generating parity data
US6446160B1 (en) Multi-drive data storage system with analysis and selected demounting of idle data storage media
CN116401063A (en) RAID resource allocation method, device, equipment and medium
EP1862905A2 (en) Flash memory storage system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090429

Termination date: 20181220