CN100390746C - 提高磁盘阵列奇偶校验更新的缓冲器利用率的方法和系统 - Google Patents
提高磁盘阵列奇偶校验更新的缓冲器利用率的方法和系统 Download PDFInfo
- Publication number
- CN100390746C CN100390746C CNB2005101267237A CN200510126723A CN100390746C CN 100390746 C CN100390746 C CN 100390746C CN B2005101267237 A CNB2005101267237 A CN B2005101267237A CN 200510126723 A CN200510126723 A CN 200510126723A CN 100390746 C CN100390746 C CN 100390746C
- Authority
- CN
- China
- Prior art keywords
- parity
- stored
- impact damper
- value
- constant
- 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
Links
- 238000000034 method Methods 0.000 title claims description 24
- 239000000872 buffer Substances 0.000 title abstract description 9
- 230000008859 change Effects 0.000 abstract description 3
- 230000015654 memory Effects 0.000 description 20
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
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
- 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
Abstract
Description
缓冲器A | 缓冲器B | 缓冲器C |
得到新数据d<sub>X</sub> | ||
Δ=(旧d<sub>X</sub>)+A | ||
写新数据d<sub>X</sub> | ||
K<sub>1</sub>Δ=K<sub>1</sub>*B | ||
d<sub>P</sub>=(旧d<sub>P</sub>)+C | ||
写新奇偶校验d<sub>P</sub> | ||
K<sub>2</sub>Δ=K<sub>2</sub>*B | ||
d<sub>Q</sub>=(旧d<sub>Q</sub>)+C | ||
写新奇偶校验d<sub>Q</sub> | ||
缓冲器A | 缓冲器B | 缓冲器C |
得到新数据d<sub>X</sub> | ||
Δ=(旧d<sub>X</sub>)+A | ||
写新数据d<sub>X</sub> | 未使用 | |
K<sub>1</sub>Δ=K<sub>1</sub>*B | ||
d<sub>P</sub>=(旧d<sub>P</sub>)+A | ||
写新奇偶校验d<sub>P</sub> | ||
K<sub>2</sub>Δ=K<sub>3</sub>*A | ||
d<sub>Q</sub>=(旧d<sub>Q</sub>)+B | ||
写新奇偶校验d<sub>Q</sub> | ||
Claims (20)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/994,086 US7290199B2 (en) | 2004-11-19 | 2004-11-19 | Method and system for improved buffer utilization for disk array parity updates |
US10/994,086 | 2004-11-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1776636A CN1776636A (zh) | 2006-05-24 |
CN100390746C true CN100390746C (zh) | 2008-05-28 |
Family
ID=36575775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101267237A Expired - Fee Related CN100390746C (zh) | 2004-11-19 | 2005-11-21 | 提高磁盘阵列奇偶校验更新的缓冲器利用率的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (2) | US7290199B2 (zh) |
CN (1) | CN100390746C (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2503886A1 (en) * | 2002-11-01 | 2004-05-13 | Alk-Abello A/S | Recombinant protein variants |
TWI310497B (en) * | 2004-02-06 | 2009-06-01 | Hon Hai Prec Ind Co Ltd | System and method for disk fault tolerance |
TWI307836B (en) * | 2004-07-02 | 2009-03-21 | Hon Hai Prec Ind Co Ltd | System and method for a plurality of disks fault tolerance efficienctly |
US7392458B2 (en) * | 2004-11-19 | 2008-06-24 | International Business Machines Corporation | Method and system for enhanced error identification with disk array parity checking |
US20060123271A1 (en) * | 2004-11-19 | 2006-06-08 | International Business Machines Corporation | RAID environment incorporating hardware-based finite field multiplier for on-the-fly XOR |
US7343546B2 (en) * | 2004-12-23 | 2008-03-11 | Intel Corporation | Method and system for syndrome generation and data recovery |
TWI285313B (en) * | 2005-06-22 | 2007-08-11 | Accusys Inc | XOR circuit, RAID device capable of recover a plurality of failures and method thereof |
WO2007012920A1 (en) * | 2005-07-27 | 2007-02-01 | Adaptec, Inc. | Method and system for improving the performance of reed-solomon parity operations in redundant array of inexpensive disks |
US9201939B2 (en) * | 2006-06-02 | 2015-12-01 | Salesforce.Com, Inc. | Method and system for pushing data to a plurality of devices in an on-demand service environment |
US7930586B1 (en) * | 2008-02-07 | 2011-04-19 | At&T Intellectual Property Ii, L.P. | Error rate reduction for memory arrays |
US8370717B1 (en) * | 2008-04-08 | 2013-02-05 | Marvell International Ltd. | Method and apparatus for flexible buffers in an XOR engine |
KR101562794B1 (ko) * | 2009-08-04 | 2015-10-26 | 삼성전자주식회사 | 데이터 저장 장치 |
US9229808B2 (en) * | 2010-10-01 | 2016-01-05 | Pure Storage, Inc. | Reconstruct reads in a raid array with dynamic geometries |
US8954668B2 (en) | 2011-05-23 | 2015-02-10 | International Business Machines Corporation | Writing of data of a first block size in a raid array that stores and mirrors data in a second block size |
US9043543B2 (en) * | 2011-05-23 | 2015-05-26 | International Business Machines Corporation | Writing of new data of a first block size in a raid array that stores both parity and data in a second block size |
US9213486B2 (en) * | 2012-02-22 | 2015-12-15 | International Business Machines Corporation | Writing new data of a first block size to a second block size using a write-write mode |
US10164655B2 (en) * | 2015-09-25 | 2018-12-25 | Western Digital Technologies, Inc. | Cache oblivious algorithm for butterfly code |
US9793922B2 (en) * | 2015-09-25 | 2017-10-17 | HGST Netherlands B.V. | Repair-optimal parity code |
KR20180040767A (ko) | 2016-10-12 | 2018-04-23 | 삼성전자주식회사 | Raid 방식으로 데이터를 저장하는 스토리지 장치 |
US10152379B1 (en) * | 2016-12-27 | 2018-12-11 | EMC IP Holding Company LLP | Efficient garbage collection for distributed storage with forward error correction |
JP2020177501A (ja) * | 2019-04-19 | 2020-10-29 | 株式会社日立製作所 | ストレージシステム、そのドライブ筐体、およびパリティ演算方法。 |
KR20220142521A (ko) * | 2020-02-20 | 2022-10-21 | 인텔 코포레이션 | 단방향 커맨드들을 이용한 온-ssd 소거 코딩 |
CN113296999B (zh) * | 2021-05-20 | 2022-11-11 | 山东云海国创云计算装备产业创新中心有限公司 | 一种raid6编码方法及编码电路 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5499253A (en) * | 1994-01-05 | 1996-03-12 | Digital Equipment Corporation | System and method for calculating RAID 6 check codes |
US5623595A (en) * | 1994-09-26 | 1997-04-22 | Oracle Corporation | Method and apparatus for transparent, real time reconstruction of corrupted data in a redundant array data storage system |
US6101615A (en) * | 1998-04-08 | 2000-08-08 | International Business Machines Corporation | Method and apparatus for improving sequential writes to RAID-6 devices |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3688265A (en) * | 1971-03-18 | 1972-08-29 | Ibm | Error-free decoding for failure-tolerant memories |
USRE34100E (en) * | 1987-01-12 | 1992-10-13 | Seagate Technology, Inc. | Data error correction system |
US5134619A (en) * | 1990-04-06 | 1992-07-28 | Sf2 Corporation | Failure-tolerant mass storage system |
US5140592A (en) * | 1990-03-02 | 1992-08-18 | Sf2 Corporation | Disk array system |
US5956524A (en) * | 1990-04-06 | 1999-09-21 | Micro Technology Inc. | System and method for dynamic alignment of associated portions of a code word from a plurality of asynchronous sources |
US5673412A (en) * | 1990-07-13 | 1997-09-30 | Hitachi, Ltd. | Disk system and power-on sequence for the same |
US5208813A (en) * | 1990-10-23 | 1993-05-04 | Array Technology Corporation | On-line reconstruction of a failed redundant array system |
US5274799A (en) * | 1991-01-04 | 1993-12-28 | Array Technology Corporation | Storage device array architecture with copyback cache |
US5537379A (en) * | 1991-05-10 | 1996-07-16 | Discovision Associates | Optical data storage and retrieval system and method |
US5448719A (en) * | 1992-06-05 | 1995-09-05 | Compaq Computer Corp. | Method and apparatus for maintaining and retrieving live data in a posted write cache in case of power failure |
JP2888401B2 (ja) * | 1992-08-03 | 1999-05-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 冗長ディスクドライブアレイに対する同期方法 |
DE69434381T2 (de) * | 1993-06-04 | 2006-01-19 | Network Appliance, Inc., Sunnyvale | Verfahren zur Paritätsdarstellung in einem Raid-Untersystem unter Verwendung eines nichtflüchtigen Speichers |
US5530948A (en) * | 1993-12-30 | 1996-06-25 | International Business Machines Corporation | System and method for command queuing on raid levels 4 and 5 parity drives |
US5537567A (en) * | 1994-03-14 | 1996-07-16 | International Business Machines Corporation | Parity block configuration in an array of storage devices |
US5537534A (en) * | 1995-02-10 | 1996-07-16 | Hewlett-Packard Company | Disk array having redundant storage and methods for incrementally generating redundancy as data is written to the disk array |
US5754563A (en) * | 1995-09-11 | 1998-05-19 | Ecc Technologies, Inc. | Byte-parallel system for implementing reed-solomon error-correcting codes |
US5720025A (en) * | 1996-01-18 | 1998-02-17 | Hewlett-Packard Company | Frequently-redundant array of independent disks |
US6092215A (en) * | 1997-09-29 | 2000-07-18 | International Business Machines Corporation | System and method for reconstructing data in a storage array system |
JP3618529B2 (ja) * | 1997-11-04 | 2005-02-09 | 富士通株式会社 | ディスクアレイ装置 |
US6279050B1 (en) * | 1998-12-18 | 2001-08-21 | Emc Corporation | Data transfer apparatus having upper, lower, middle state machines, with middle state machine arbitrating among lower state machine side requesters including selective assembly/disassembly requests |
CA2403044A1 (en) * | 2000-03-22 | 2001-09-27 | Interwoven Inc. | Method and apparatus for storing changes to file attributes without having to store an additional copy of the file contents |
US6687872B2 (en) * | 2001-03-14 | 2004-02-03 | Hewlett-Packard Development Company, L.P. | Methods and systems of using result buffers in parity operations |
US6766480B2 (en) * | 2001-03-14 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | Using task description blocks to maintain information regarding operations |
US6567891B2 (en) * | 2001-03-14 | 2003-05-20 | Hewlett-Packard Development Company, L.P. | Methods and arrangements for improved stripe-based processing |
US20020194427A1 (en) * | 2001-06-18 | 2002-12-19 | Ebrahim Hashemi | System and method for storing data and redundancy information in independent slices of a storage device |
US6836820B1 (en) * | 2002-02-25 | 2004-12-28 | Network Appliance, Inc. | Flexible disabling of disk sets |
US6944791B2 (en) * | 2002-07-18 | 2005-09-13 | Lsi Logic Corporation | Method of handling unreadable blocks during write of a RAID device |
US7028136B1 (en) * | 2002-08-10 | 2006-04-11 | Cisco Technology, Inc. | Managing idle time and performing lookup operations to adapt to refresh requirements or operational rates of the particular associative memory or other devices used to implement the system |
US7065609B2 (en) * | 2002-08-10 | 2006-06-20 | Cisco Technology, Inc. | Performing lookup operations using associative memories optionally including selectively determining which associative memory blocks to use in identifying a result and possibly propagating error indications |
US7082492B2 (en) * | 2002-08-10 | 2006-07-25 | Cisco Technology, Inc. | Associative memory entries with force no-hit and priority indications of particular use in implementing policy maps in communication devices |
US6918007B2 (en) * | 2002-09-09 | 2005-07-12 | Hewlett-Packard Development Company, L.P. | Memory controller interface with XOR operations on memory read to accelerate RAID operations |
US7426611B1 (en) * | 2003-08-18 | 2008-09-16 | Symantec Operating Corporation | Method and system for improved storage system performance using cloning of cached data |
JP2005115771A (ja) * | 2003-10-09 | 2005-04-28 | Hitachi Ltd | ディスクアレイ装置 |
JP4288486B2 (ja) * | 2003-11-17 | 2009-07-01 | 日本電気株式会社 | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 |
-
2004
- 2004-11-19 US US10/994,086 patent/US7290199B2/en not_active Expired - Fee Related
-
2005
- 2005-11-21 CN CNB2005101267237A patent/CN100390746C/zh not_active Expired - Fee Related
-
2007
- 2007-10-04 US US11/867,407 patent/US20080022150A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5499253A (en) * | 1994-01-05 | 1996-03-12 | Digital Equipment Corporation | System and method for calculating RAID 6 check codes |
US5623595A (en) * | 1994-09-26 | 1997-04-22 | Oracle Corporation | Method and apparatus for transparent, real time reconstruction of corrupted data in a redundant array data storage system |
US6101615A (en) * | 1998-04-08 | 2000-08-08 | International Business Machines Corporation | Method and apparatus for improving sequential writes to RAID-6 devices |
Non-Patent Citations (2)
Title |
---|
基于DSP的信道译码算法优化. 闫冬,王建国.单片机与嵌入式系统应用,第2期. 2004 |
基于DSP的信道译码算法优化. 闫冬,王建国.单片机与嵌入式系统应用,第2期. 2004 * |
Also Published As
Publication number | Publication date |
---|---|
US7290199B2 (en) | 2007-10-30 |
US20080022150A1 (en) | 2008-01-24 |
CN1776636A (zh) | 2006-05-24 |
US20060123268A1 (en) | 2006-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100390746C (zh) | 提高磁盘阵列奇偶校验更新的缓冲器利用率的方法和系统 | |
CN100385405C (zh) | 利用磁盘阵列奇偶校验的增强错误标识系统和方法 | |
CN101059751B (zh) | 磁盘阵列恢复数据时增加磁盘访问并行性的方法和系统 | |
CN100388221C (zh) | 磁盘阵列从奇偶校验更新操作中断中恢复的方法和系统 | |
CN100345098C (zh) | 磁盘阵列控制器及磁盘阵列环境中的运行方法 | |
US20200295784A1 (en) | Accelerated erasure coding system and method | |
JP3587667B2 (ja) | 外部記憶サブシステムのパリティ記憶及びデータ修復方法 | |
EP1953920B1 (en) | RAID system and data recovery apparatus using galois field | |
US6282671B1 (en) | Method and system for improved efficiency of parity calculation in RAID system | |
JP2000259359A (ja) | Raid装置および記録媒体 | |
Thomasian et al. | A performance evaluation tool for RAID disk arrays | |
Thomasian | Clustered RAID arrays and their access costs | |
US20190213076A1 (en) | Systems and methods for managing digital data in a fault tolerant matrix | |
Wu et al. | Code 5-6: An efficient mds array coding scheme to accelerate online raid level migration | |
Wu | Improve the Performance and Scalability of RAID-6 Systems Using Erasure Codes |
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 | ||
ASS | Succession or assignment of patent right |
Owner name: GOOGLE INC. Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORP. Effective date: 20120428 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20120428 Address after: American California Patentee after: Google Inc. Address before: New York grams of Armand Patentee before: International Business Machines Corp. |
|
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: American California Patentee after: Google limited liability company Address before: American California Patentee before: Google Inc. |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080528 Termination date: 20191121 |
|
CF01 | Termination of patent right due to non-payment of annual fee |