WO2010059255A1 - Memory efficient check of raid information - Google Patents
Memory efficient check of raid information Download PDFInfo
- Publication number
- WO2010059255A1 WO2010059255A1 PCT/US2009/030656 US2009030656W WO2010059255A1 WO 2010059255 A1 WO2010059255 A1 WO 2010059255A1 US 2009030656 W US2009030656 W US 2009030656W WO 2010059255 A1 WO2010059255 A1 WO 2010059255A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- raid
- address
- system bus
- accumulator
- Prior art date
Links
- 239000000872 buffer Substances 0.000 claims description 48
- 230000004044 response Effects 0.000 claims description 20
- 238000000034 method Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 abstract description 7
- 230000006870 function Effects 0.000 abstract description 7
- 238000012546 transfer Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 9
- 238000003491 array Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1057—Parity-multiple bits-RAID6, i.e. RAID 6 implementations
Definitions
- RAID storage systems typically utilize a controller that shields the user or host system from the details of managing the storage array.
- the controller makes the storage array appear as one or more disk drives (or volumes). This is accomplished in spite of the fact that the data (or redundant data) for a particular volume may be spread across multiple disk drives.
- An embodiment of the invention may therefore comprise a system for checking RAID information, comprising: an address compare that determines a first address on a system bus corresponds to a RAID check range; a RAID P-data accumulator that stores a first result of an exclusive-OR of data stored in said RAID P-data accumulator and data received from said system bus, said data received from said system bus corresponding to data being sent to said first address on said system bus, said first address on said system bus corresponding to said RAID check range; a constant selector that, based on said first address on said system bus, selects one of a set of constants that corresponds to said data received from said system bus; and, a RAID Q-data accumulator that stores a second result of an exclusive-OR of data stored in said RAID Q-data accumulator and a third result of a Galois field multiplication of said one of said set of constants and said data received from said system bus.
- An embodiment of the invention may therefore further comprise a method of checking RAID information, comprising: controlling a plurality of storage devices to provide a plurality of RAID strips, said plurality of RAID strips being sent to a plurality of virtual buffers; receiving said plurality of RAID strips; and, accumulating a plurality of P-data values and a plurality of Q-data values corresponding to each of said plurality of virtual buffers, said plurality of P-data values and said plurality of Q-data values corresponding to said plurality of RAID strips received for each of said plurality of virtual buffers.
- An embodiment of the invention may therefore further comprise a system for checking RAID information, comprising: a virtual buffer compare that compares an address presented on a system bus with a plurality of virtual address buffer ranges; a selector that, in response to said address presented on said system bus corresponding to a one of said plurality of virtual address buffer ranges, selects a Galois Field constant and an accumulator buffer address; a Galois Field multiplier that performs a Galois Field multiplication on said Galois Field constant and a block of data that corresponds to said address present on said system bus; a P-data exclusive-OR accumulator that stores a P-data result of an exclusive-OR operation on said block of data and a stored P-data value corresponding to said accumulator buffer address; and, a Q-data exclusive-OR accumulator that stores a Q-data result of an exclusive-OR operation on a Galois Field multiplication result and a stored Q-data value corresponding to said accumulator buffer address.
- a virtual buffer compare that compares an address presented
- Figure 1 is a block diagram of a system for checking RAID information.
- Figure 2 is a block diagram of a system for checking blocks of RAID information.
- Figure 3 is a flowchart of a method of checking RAID information.
- Figure 4 is a block diagram of a computer system. DETAILED DESCRIPTION OF THE EMBODIMENTS
- FIG. 1 is a block diagram of a system for checking RAID information.
- P+Q checking system 100 comprises: address bus 101, data bus 102, address compare 110, constant selector 120, Galois field (GF) multiplier 130, P-data accumulator 140, Q-data accumulator 150, exclusive-OR (XOR) 160, and exclusive-OR 161.
- address bus 101 and data bus 102 comprise system bus 103.
- Address bus 101 is operatively coupled to address compare 110 and constant selector 120.
- Data bus 102 is operatively coupled to GF multiplier 130 and XOR 160.
- Address compare 110 generates three signals: HITP, HITD, and HITQ.
- HITD is operatively coupled to Q-data accumulator 150 and P-data accumulator 140.
- HITP is operatively coupled to P-data accumulator 140.
- HITQ is operatively coupled to Q-data accumulator 150.
- Address compare 110 generates HITD in response to a memory address on address bus 101 that is within a predefined data range. This predefined data range defines a block of virtual memory that P+Q checking system 100 emulates in order to receive RAID data sent from storage devices coupled to system bus 103.
- Address compare 110 generates HITP in response to a memory address on address bus 101 that is within a predefined P-data range.
- This predefined P-data range defines a block of virtual memory that P+Q checking system 100 emulates in order to receive RAID P-data sent from storage devices coupled to system bus 103.
- Address compare 110 generates HITQ in response to a memory address on address bus 101 that is within a predefined Q-data range.
- This predefined Q-data range defines a block of virtual memory that P+Q checking system 100 emulates in order to receive RAID Q-data sent from storage devices coupled to system bus 103.
- HITD and HITQ are also operatively coupled to constant selector 120.
- RAID systems typically distribute data and redundant data over multiple storage devices.
- the blocks of data and redundant data that are all associated with each other are called stripes.
- the blocks of data that comprise a stripe on a particular disk may be referred to as a strip.
- This redundant block stores the parity for the stripe.
- P-block or P-data Each bit in the P-data is simply the bitwise exclusive-OR (XOR) of the corresponding bits in the data strips.
- XOR bitwise exclusive-OR
- C 1 , C 2; etc. are fixed constant bytes whose values are governed by the redundancy method (e.g., Reed-Solomon) being employed to generate the Q-data. These constants may be referred to as the Q-data constants.
- the "•" symbol is intended to represent Galois Field multiplication in GF(2 8 ). It should be understood that by selecting appropriate values for the Q-data constants Ci through C N , additional blocks of Q-data may be generated. These additional blocks of Q-data allow the RAID system to detect and recover from more errors.
- data from a RAID array is sent directly from the storage devices to the P+Q checking system 100 without first being stored in memory.
- the P+Q checking system 100 is coupled to the system bus 103 to appear as memory space to I/O controllers that control the storage devices of the RAID array.
- I/O controllers may function and be controlled without modification.
- RAID control software programs I/O controllers to read RAID data from the storage devices and transfer that data to virtual memory address ranges. These virtual memory address ranges are recognized by the P+Q checking system 100.
- the P+Q checking system 100 receives the data sent to the virtual memory address ranges. However, instead of storing the incoming data, the P+Q checking system 100 updates intermediate values of the P and Q redundant data calculations associated with the incoming data. When all of the strips have been received, the P+Q checking system 100 will have completed the calculation of P and Q redundant data.
- the P+Q checking system 100 may also accept P or Q data from the storage devices.
- the P+Q checking system 100 reduces the utilization of memory for RAID-5 and/or RAID-6 validation operations. These validation operations are an important element in ensuring data integrity for RAID systems. This is particularly important when consumer class storage devices are used because they are less reliable than enterprise class devices. Using a memory based technique to perform validation operations increases memory and system bus loading. This degrades the performance of the RAID system.
- the P+Q checking system 100 eliminates memory accesses for the computation and/or checking of P+Q redundant data.
- Constant selector 120 in response to a HITD or HITQ signal, generates Q-data constants.
- the Q-data constant generated is based on the address present of address bus 101.
- constant selector 120 is able to determine which data strip (i.e., D 1 , D 2 etc.) is on data bus 102.
- constant selector 120 outputs the corresponding constant for the strip that is on data bus 102.
- the constant output by constant selector 120 and the data for the strip that is on data bus 102 is GF multiplied by GF multiplier 130. This operation forms the D x [i] • C x terms in the calculation of the Q-data.
- the data on data bus 102 is also input to XOR 160.
- the other input to XOR 160 is from P-data accumulator 140.
- P-data accumulator stores the output of XOR 160 as the next value to be input to XOR 160.
- this operation by P-data accumulator 140 and XOR 160 form a D x [i] ⁇ (D y [i] ⁇ S> ... ⁇ 8) D z [i]) operation where D x [i] is the current value on data bus 102 and D y [i] ® ... ® D z [i] is the result of previous XOR operations.
- P-data accumulator 140 will hold the result P[i].
- a stored value for the P-data is received and XOR'd by XOR 160 (e.g., in response to the HITP signal)
- the result stored in P-data accumulator 140 will be zero if all of the data, and the stored P-data were correct. Otherwise, the result stored in P-data accumulator 140 will be non-zero thus indicating an error.
- the data output by GF multiplier 130 is input to XOR 161.
- the other input to XOR 161 is from Q-data accumulator 150.
- Q-data accumulator stores the output of XOR 161 as the next value to be input to XOR 161.
- this operation by Q-data accumulator 150 and XOR 161 form a (D x [i] • C x ) ® [(D y [i] • C y ) ® ... ® (D x [i] • C z )] operation where D x [i] is the current value on data bus 102 and (D y [i] • C y ) ® ...
- FIG. 2 is a block diagram of a system for checking blocks of RAID information.
- the system illustrated in Figure 2 functions much like the system illustrated in Figure 1. However, the system illustrated in Figure 2 is adapted to calculate and accumulate multiple P and Q blocks of data.
- P+Q checking system 200 comprises: address bus 201, data bus 202, address compare 210, Galois field (GF) multiplier 230, P-data accumulator buffer 240, Q- data accumulator buffer 250, exclusive-OR (XOR) 260, and exclusive-OR 261.
- Address compare 210 includes constant selector 211, completion detector 212, and buffer management 213.
- Collectively, address bus 201 and data bus 202 comprise system bus 203.
- Address bus 201 is operatively coupled to address compare 210 and thus constant selector 211.
- Address bus 201 is operatively coupled to Q-data accumulator buffer 250 and P-data accumulator buffer 240.
- Data bus 202 is operatively coupled to GF multiplier 230 and XOR 260.
- Address compare 210 may generate three signals: HITP, HITD, and HITQ.
- HITD is operatively coupled to Q-data accumulator buffer 250 and P-data accumulator buffer 240.
- HITP is operatively coupled to P-data accumulator buffer 240.
- HITQ is operatively coupled to Q-data accumulator buffer 250.
- Address compare 210 generates HITD in response to a memory address on address bus 201 that is within a predefined data range. This predefined data range defines a block of virtual memory that P+Q checking system 200 emulates in order to receive RAID data sent from storage devices coupled to system bus 203.
- Address compare 210 generates HITP in response to a memory address on address bus 201 that is within a predefined P-data range.
- This predefined P-data range defines a block of virtual memory that P+Q checking system 200 emulates in order to receive RAID P-data sent from storage devices coupled to system bus 203.
- Address compare 210 generates HITQ in response to a memory address on address bus 201 that is within a predefined Q-data range.
- This predefined Q-data range defines a block of virtual memory that P+Q checking system 200 emulates in order to receive RAID Q-data sent from storage devices coupled to system bus 203.
- Completion detector 212 may track the addresses on address bus 201 to determine when all of the stored data for a block has been received and accumulated by Q-data accumulator buffer 250 or P-data accumulator buffer 240.
- Buffer management 213 may manage the virtual buffers associated with P+Q checking system 200. For example, buffer management 213 may determine the address ranges of the virtual buffers. Buffer management may also determine the locations in Q-data accumulator buffer 250 and P-data accumulator buffer 240 that are associated with certain virtual buffer address ranges.
- Constant selector 211 generates Q-data constants. The Q-data constant generated is based on the address present of address bus 201.
- constant selector 211 By examining certain bits on address bus 201, constant selector 211 is able to determine which data strip (i.e., D 1 , D 2 etc.) is on data bus 202. Thus, constant selector 211 outputs the corresponding constant for the strip that is on data bus 202.
- the constant output by constant selector 211 and the data for the strip that is on data bus 202 is GF multiplied by GF multiplier 230. This operation forms D x [i][j] • C x terms in the calculation of the Q-data for block j. Which block, j, is on data bus 202 is determined from certain bits on address bus 201.
- the data on data bus 202 is also input to XOR 260.
- the other input to XOR 260 is from P-data accumulator buffer 240.
- P- data accumulator buffer 240 stores the output of XOR 260 as the next value for block j to be input to XOR 160.
- P-data accumulator buffer 240 uses certain bits from address bus 201 to determine which accumulated P-data to retrieve and store. Thus, this operation by P-data accumulator buffer 240 and XOR 260 form a D Jz] [j] ® (D y [i] [j] ® ...
- the result stored in the P-data accumulator buffer 240 associated with block j will be zero if all of the data, and the stored P-data associated with block j was correct. Otherwise, the result stored in P-data accumulator buffer 240 associated with block j will be non-zero thus indicating an error.
- the data output by GF multiplier 230 is input to XOR 261.
- the other input to XOR 261 is from Q-data accumulator buffer 250.
- Q- data accumulator buffer 250 stores the output of XOR 261 as the next value for block j to be input to XOR 261.
- this operation by Q-data accumulator buffer 250 and XOR 261 form a (DJi][j]* C x ) ® [(D y [i][j]» C r ) ® ... ® (D z [i][j]» C z )] operation where D x [i][j] is the current value on data bus 202 and (D y [i] [y ] • C ⁇ ) ® ... ® (D z [i] [j] • C.
- FIG. 3 is a flowchart of a method of checking RAID information. The steps illustrated in Figure 3 may be performed by one or more elements of P+Q checking system 100 and P+Q checking system 200.
- a plurality of storage devices are controlled to provide a plurality of RAID strips to a plurality of virtual buffers (302).
- a plurality of storage devices in a RAID array may be controlled to provide their RAID strips to an address range emulated by P+Q checking system 200.
- the plurality of RAID strips are received (304).
- XOR 260 and GF multiplier 230 may received the RAID strips provided in block 302.
- a plurality of P-data values are accumulated based on the plurality of RAID strips (306).
- P-data accumulator buffer 240 may accumulate multiple P-data values based on the RAID strips received in block 304.
- a plurality of Q-data values are accumulated based on the plurality of RAID strips and a plurality of constants (308).
- Q-data accumulator buffer 250 may accumulate multiple Q-data values received from GF multiplier 230.
- the results received from GF multiplier 230 may be based on the RAID strips received in block 304 and constants received from constant selector 21 1.
- the methods, systems, and functions described above may be implemented with or executed by one or more computer systems.
- the methods described above may also be stored on a computer readable medium.
- Many of the elements of P+Q checking system 100 and P+Q checking system 200 may be, comprise, or include computers systems.
- address compare 110 constant selector 120, Galois field (GF) multiplier 130, P-data accumulator 140, Q-data accumulator 150, exclusive-OR (XOR) 160, exclusive-OR 160, address compare 210, Galois field (GF) multiplier 230, P-data accumulator buffer 240, Q-data accumulator buffer 250, exclusive-OR (XOR) 260, and exclusive-OR 261, constant selector 211, completion detector 212, and buffer management 213.
- FIG. 4 illustrates a block diagram of a computer system.
- Computer system 400 includes communication interface 420, processing system 430, storage system 440, and user interface 460.
- Processing system 430 is operatively coupled to storage system 440.
- Storage system 440 stores software 450 and data 470.
- Processing system 430 is operatively coupled to communication interface 420 and user interface 460.
- Computer system 400 may comprise a programmed general-purpose computer.
- Computer system 400 may include a microprocessor.
- Computer system 400 may comprise programmable or special purpose circuitry.
- Computer system 400 may be distributed among multiple devices, processors, storage, and/or interfaces that together comprise elements 420-470.
- Communication interface 420 may comprise a network interface, modem, port, bus, link, transceiver, or other communication device. Communication interface 420 may be distributed among multiple communication devices.
- Processing system 430 may comprise a microprocessor, microcontroller, logic circuit, or other processing device. Processing system 430 may be distributed among multiple processing devices.
- User interface 460 may comprise a keyboard, mouse, voice recognition interface, microphone and speakers, graphical display, touch screen, or other type of user interface device. User interface 460 may be distributed among multiple interface devices.
- Storage system 440 may comprise a disk, tape, integrated circuit, RAM, ROM, network storage, server, or other memory function. Storage system 440 may be a computer readable medium. Storage system 440 may be distributed among multiple memory devices.
- Processing system 430 retrieves and executes software 450 from storage system 440.
- Processing system may retrieve and store data 470.
- Processing system may also retrieve and store data via communication interface 420.
- Processing system 450 may create or modify software 450 or data 470 to achieve a tangible result.
- Processing system may control communication interface 420 or user interface 470 to achieve a tangible result.
- Processing system may retrieve and execute remotely stored software via communication interface 420.
- Software 450 and remotely stored software may comprise an operating system, utilities, drivers, networking software, and other software typically executed by a computer system.
- Software 450 may comprise an application program, applet, firmware, or other form of machine-readable processing instructions typically executed by a computer system.
- software 450 or remotely stored software may direct computer system 400 to operate as described herein.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200980101037A CN101868834A (zh) | 2008-11-19 | 2009-01-09 | Raid信息的存储器效率检查 |
US12/808,844 US8898380B2 (en) | 2008-11-19 | 2009-01-09 | Memory efficient check of raid information |
EP09827902A EP2297741A1 (en) | 2008-11-19 | 2009-01-09 | Memory efficient check of raid information |
JP2011536341A JP5502883B2 (ja) | 2008-11-19 | 2009-01-09 | Raid情報のメモリ効率検査 |
TW098104085A TWI498725B (zh) | 2008-11-19 | 2009-02-09 | 檢查獨立磁碟冗餘陣列(raid)資訊之方法及系統 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11626508P | 2008-11-19 | 2008-11-19 | |
US61/116,265 | 2008-11-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010059255A1 true WO2010059255A1 (en) | 2010-05-27 |
Family
ID=42198425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2009/030656 WO2010059255A1 (en) | 2008-11-19 | 2009-01-09 | Memory efficient check of raid information |
Country Status (7)
Country | Link |
---|---|
US (1) | US8898380B2 (zh) |
EP (1) | EP2297741A1 (zh) |
JP (2) | JP5502883B2 (zh) |
KR (1) | KR20110095126A (zh) |
CN (1) | CN101868834A (zh) |
TW (1) | TWI498725B (zh) |
WO (1) | WO2010059255A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625181A (zh) * | 2019-02-28 | 2020-09-04 | 华为技术有限公司 | 数据处理方法、独立硬盘冗余阵列控制器和数据存储系统 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081559B (zh) * | 2011-01-11 | 2013-06-05 | 华为数字技术(成都)有限公司 | 一种独立磁盘冗余阵列的数据恢复方法和装置 |
US9137250B2 (en) | 2011-04-29 | 2015-09-15 | Stephen Lesavich | Method and system for electronic content storage and retrieval using galois fields and information entropy on cloud computing networks |
US9361479B2 (en) | 2011-04-29 | 2016-06-07 | Stephen Lesavich | Method and system for electronic content storage and retrieval using Galois fields and geometric shapes on cloud computing networks |
US9037564B2 (en) | 2011-04-29 | 2015-05-19 | Stephen Lesavich | Method and system for electronic content storage and retrieval with galois fields on cloud computing networks |
US9569771B2 (en) | 2011-04-29 | 2017-02-14 | Stephen Lesavich | Method and system for storage and retrieval of blockchain blocks using galois fields |
USD827654S1 (en) * | 2013-12-20 | 2018-09-04 | Sony Corporation | Wearable player with graphical user interface |
CN105487938A (zh) * | 2015-11-30 | 2016-04-13 | 浪潮(北京)电子信息产业有限公司 | 一种gf乘法器、校验位生成装置、主控芯片及固态硬盘 |
US11361839B2 (en) * | 2018-03-26 | 2022-06-14 | Rambus Inc. | Command/address channel error detection |
US11023321B2 (en) | 2019-09-27 | 2021-06-01 | Dell Products L.P. | Raid storage-device-assisted deferred parity data update system |
US10936420B1 (en) * | 2019-09-27 | 2021-03-02 | Dell Products L.P. | RAID storage-device-assisted deferred Q data determination system |
US11023322B2 (en) | 2019-09-27 | 2021-06-01 | Dell Products L.P. | Raid storage-device-assisted parity update data storage system |
CN115878052B (zh) * | 2023-03-08 | 2023-05-23 | 苏州浪潮智能科技有限公司 | Raid阵列巡检方法、巡检装置和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5809559A (en) * | 1993-10-06 | 1998-09-15 | Ast Research, Inc. | System and method utilizing a virtual addressing buffer circuit to emulate a device which is physically not present |
US20080040646A1 (en) * | 2004-11-19 | 2008-02-14 | International Business Machines Corporation | Raid environment incorporating hardware-based finite field multiplier for on-the-fly xor |
US7370248B2 (en) * | 2003-11-07 | 2008-05-06 | Hewlett-Packard Development Company, L.P. | In-service raid mirror reconfiguring |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5123092A (en) * | 1988-10-21 | 1992-06-16 | Zenith Data Systems Corporation | External expansion bus interface |
JP3600334B2 (ja) * | 1995-02-17 | 2004-12-15 | 株式会社東芝 | 連続データサーバ装置、連続データ送出方法及びディスクアレイ装置 |
US6687872B2 (en) * | 2001-03-14 | 2004-02-03 | Hewlett-Packard Development Company, L.P. | Methods and systems of using result buffers in parity operations |
US7139873B1 (en) * | 2001-06-08 | 2006-11-21 | Maxtor Corporation | System and method for caching data streams on a storage media |
JP4288486B2 (ja) | 2003-11-17 | 2009-07-01 | 日本電気株式会社 | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 |
JP4435705B2 (ja) * | 2005-03-14 | 2010-03-24 | 富士通株式会社 | 記憶装置、その制御方法及びプログラム |
US8291161B2 (en) * | 2005-10-07 | 2012-10-16 | Agere Systems Llc | Parity rotation in storage-device array |
US7664915B2 (en) * | 2006-12-19 | 2010-02-16 | Intel Corporation | High performance raid-6 system architecture with pattern matching |
JP4358869B2 (ja) * | 2007-02-21 | 2009-11-04 | 富士通株式会社 | ストレージ制御装置、ストレージ制御方法 |
-
2009
- 2009-01-09 EP EP09827902A patent/EP2297741A1/en not_active Withdrawn
- 2009-01-09 WO PCT/US2009/030656 patent/WO2010059255A1/en active Application Filing
- 2009-01-09 JP JP2011536341A patent/JP5502883B2/ja not_active Expired - Fee Related
- 2009-01-09 US US12/808,844 patent/US8898380B2/en active Active
- 2009-01-09 CN CN200980101037A patent/CN101868834A/zh active Pending
- 2009-01-09 KR KR1020107013560A patent/KR20110095126A/ko not_active Application Discontinuation
- 2009-02-09 TW TW098104085A patent/TWI498725B/zh not_active IP Right Cessation
-
2013
- 2013-12-05 JP JP2013252080A patent/JP2014041664A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5809559A (en) * | 1993-10-06 | 1998-09-15 | Ast Research, Inc. | System and method utilizing a virtual addressing buffer circuit to emulate a device which is physically not present |
US7370248B2 (en) * | 2003-11-07 | 2008-05-06 | Hewlett-Packard Development Company, L.P. | In-service raid mirror reconfiguring |
US20080040646A1 (en) * | 2004-11-19 | 2008-02-14 | International Business Machines Corporation | Raid environment incorporating hardware-based finite field multiplier for on-the-fly xor |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625181A (zh) * | 2019-02-28 | 2020-09-04 | 华为技术有限公司 | 数据处理方法、独立硬盘冗余阵列控制器和数据存储系统 |
Also Published As
Publication number | Publication date |
---|---|
US20110264857A1 (en) | 2011-10-27 |
JP2012509523A (ja) | 2012-04-19 |
EP2297741A1 (en) | 2011-03-23 |
US8898380B2 (en) | 2014-11-25 |
JP2014041664A (ja) | 2014-03-06 |
JP5502883B2 (ja) | 2014-05-28 |
KR20110095126A (ko) | 2011-08-24 |
CN101868834A (zh) | 2010-10-20 |
TW201020758A (en) | 2010-06-01 |
TWI498725B (zh) | 2015-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8898380B2 (en) | Memory efficient check of raid information | |
US8473816B2 (en) | Data verification using checksum sidefile | |
US9652408B2 (en) | System and method for providing data integrity | |
US8234444B2 (en) | Apparatus and method to select a deduplication protocol for a data storage library | |
US8799571B1 (en) | System and method for configuring a device array upon detecting addition of a storage device | |
US20210004159A1 (en) | Block mode toggling using hybrid controllers | |
US20060080505A1 (en) | Disk array device and control method for same | |
US7752389B1 (en) | Techniques for determining physical data layout of RAID devices | |
US9009569B2 (en) | Detection and correction of silent data corruption | |
US9543988B2 (en) | Adaptively strengthening ECC for solid state cache | |
US8352835B2 (en) | Data verification using checksum sidefile | |
US8595397B2 (en) | Storage array assist architecture | |
US8438429B2 (en) | Storage control apparatus and storage control method | |
US8489976B2 (en) | Storage controlling device and storage controlling method | |
US20140195731A1 (en) | Physical link management | |
EP2378424A2 (en) | Locating and correcting corrupt data or syndrome blocks | |
US9134926B2 (en) | Protection information initialization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200980101037.0 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2011536341 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12808844 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 20107013560 Country of ref document: KR Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09827902 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2009827902 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |