Provided are a method, system, and article of manufacture for error checking addressable blocks in storage. Addressable blocks of data are stored in a storage in stripes, wherein each stripe includes a plurality of data blocks for one of the addressable blocks and at least one checksum block includi
Provided are a method, system, and article of manufacture for error checking addressable blocks in storage. Addressable blocks of data are stored in a storage in stripes, wherein each stripe includes a plurality of data blocks for one of the addressable blocks and at least one checksum block including checksum data for the addressable block. A write request is received to modify data in one of the addressable blocks. The write and updating the checksum are performed in the stripe having the modified addressable block. An indication is made to perform an error checking operation on the stripe for the modified addressable block in response to the write request, wherein the error checking operation reads the data blocks and the checksum in the stripe to determine if the checksum data is accurate. An error handling operation is initiated in response to determining that the checksum data is not accurate.
대표청구항▼
1. An article of manufacture comprising a non-transitory computer readable storage medium having code executed to cause operations with respect to a storage device and a memory and to cause operations comprising: storing addressable blocks of data in the storage device in stripes, wherein each strip
1. An article of manufacture comprising a non-transitory computer readable storage medium having code executed to cause operations with respect to a storage device and a memory and to cause operations comprising: storing addressable blocks of data in the storage device in stripes, wherein each stripe includes a plurality of data blocks for one of the addressable blocks and at least one checksum block including checksum data derived from the data blocks for the addressable block;receiving a write request to modify data in one of the addressable blocks in the storage device;performing a write for the write request to modify one of the addressable blocks to generate a modified addressable block and updating the checksum data in the stripe having the modified addressable block to generate an updated checksum, wherein modified data in the modified addressable block and the updated checksum data resulting from the write are destaged to the storage device;indicating in a recently modified list in the memory the modified addressable block;after the write is performed, performing an error checking operation on a plurality of the stripes having modified addressable blocks indicated in the recently modified list by reading the data blocks and the checksum data in the plurality of the stripes having the modified addressable blocks to determine if the checksum data is accurate; andinitiating an error handling operation in response to determining that the checksum data is not accurate. 2. The article of manufacture of claim 1, wherein the operations further comprise: recalculating the checksum data in the stripe as part of the error checking operation or a write during which the at least one checksum block is recalculated using all the data blocks in the stripe; andremoving the modified addressable block indicated in the recently modified list in response to recalculating the checksum data using all the data blocks in the stripe for the modified addressable block. 3. The article of manufacture of claim 1, wherein the operations further comprise: initiating a background operation to read the data blocks and the at least one checksum block in each stripe for a plurality of addressable blocks to determine if the checksum data is accurate, wherein the plurality of addressable blocks on which to perform the background operation includes modified and unmodified data. 4. The article of manufacture of claim 1, wherein the operations further comprise: initiating a background operation to determine if the checksum data is accurate. 5. The article of manufacture of claim 4, wherein the operations further comprise: alternating between processing m stripes as part of the background operation and n stripes as part of the error checking operation processing the modified addressable blocks indicated in the recently modified list, wherein m is greater than n. 6. The article of manufacture of claim 1, wherein the data and checksum blocks in one stripe are written to different storage devices according to a Redundant Array of Independent Disk (RAID) algorithm. 7. A system in communication with a storage device, comprising: a memory;storage manager code enabled to cause operations, the operations comprising: storing addressable blocks of data in the storage device in stripes, wherein each stripe includes a plurality of data blocks for one of the addressable blocks and at least one checksum block including checksum data derived from the data blocks for the addressable block;receiving a write request to modify data in one of the addressable blocks in the storage device;performing a write for the write request to modify one of the addressable blocks to generate a modified addressable block and updating the checksum data in the stripe having the modified addressable block to generate an updated checksum, wherein modified data in the modified addressable block and the updated checksum data resulting from the write are destaged to the storage device;indicating in a recently modified list in the memory the modified addressable block;after the write is performed, performing an error checking operation on a plurality of the stripes having modified addressable blocks indicated in the recently modified list by reading the data blocks and the checksum data in the plurality of the stripes having the modified addressable blocks to determine if the checksum data is accurate; andinitiating an error handling operation in response to determining that the checksum data is not accurate. 8. The system of claim 7, wherein the operations further comprise: recalculating the checksum data in the stripe as part of the error checking operation or a write during which the at least one checksum block is recalculated using all the data blocks in the stripe; andremoving the modified addressable block indicated in the recently modified list in response to recalculating the checksum data using all the data blocks in the stripe for the modified addressable block. 9. The system of claim 7, wherein the operations further comprise: initiating a background operation to read the data blocks and the at least one checksum block in each stripe for a plurality of addressable blocks to determine if the checksum data is accurate, wherein the plurality of addressable blocks on which to perform the background operation includes modified and unmodified data. 10. The system of claim 7, wherein the operations further comprise: initiating a background operation to determine if the checksum data is accurate. 11. The system of claim 10, wherein the operations further comprise: alternating between processing m stripes as part of the background operation and n stripes as part of the error checking operation processing the modified addressable blocks indicated in the recently modified list, wherein m is greater than n. 12. The system of claim 7, wherein the data and checksum blocks in one stripe are written to different storage devices according to a Redundant Array of Independent Disk (RAID) algorithm. 13. A method, comprising: storing addressable blocks of data in a storage device in stripes, wherein each stripe includes a plurality of data blocks for one of the addressable blocks and at least one checksum block including checksum data derived from the data blocks for the addressable block;receiving a write request to modify data in one of the addressable blocks in the storage device;performing a write for the write request to modify one of the addressable blocks to generate a modified addressable block and updating the checksum data in the stripe having the modified addressable block to generate an updated checksum, wherein modified data in the modified addressable block and the updated checksum data resulting from the write are destaged to the storage device;indicating in a recently modified list in the memory the modified addressable block;after the write is performed, performing an error checking operation on a plurality of the stripes having modified addressable blocks indicated in the recently modified list by reading the data blocks and the checksum data in the plurality of the stripes having the modified addressable blocks to determine if the checksum data is accurate; andinitiating an error handling operation in response to determining that the checksum data is not accurate. 14. The method of claim 13, further comprising: recalculating the checksum data in the stripe as part of the error checking operation or a write during which the at least one checksum block is recalculated using all the data blocks in the stripe; andremoving the modified addressable block indicated in the recently modified list in response to recalculating the checksum data using all the data blocks in the stripe. 15. The method of claim 13, further comprising initiating a background operation to read the data blocks and the at least one checksum block in each stripe for a plurality of addressable blocks to determine if the checksum data is accurate, wherein the plurality of addressable blocks on which to perform the background operation includes modified and unmodified data. 16. The method of claim 13, further comprising: initiating a background operation to determine if the checksum data is accurate. 17. The method of claim 16, further comprising: alternating between processing m stripes as part of the background operation and n stripes as part of the error checking operation processing the modified addressable blocks indicated in the recently modified list, wherein m is greater than n. 18. The method of claim 13, wherein the data and checksum blocks in one stripe are written to different storage devices according to a Redundant Array of Independent Disk (RAID) algorithm.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (74)
Orsley,Tim, Accelerated RAID with rewind capability.
Matsunami Naoto,JPX ; Yoshida Minoru,JPX ; Miyazawa Shoichi,JPX ; Oeda Takashi,JPX ; Honda Kiyoshi,JPX ; Ohno Shuji,JPX, Array disk controller for grouping host commands into a single virtual host command.
Kaneda Yasunori,JPX ; Oeda Takashi,JPX ; Honda Kiyoshi,JPX ; Matsunami Naoto,JPX ; Akiyama Hitoshi,JPX ; Arakawa Hiroshi,JPX ; Yoshida Minoru,JPX ; Yagisawa Ikuya,JPX, Array type disk system updating redundant data asynchronously with data access.
Kaneda Yasunori,JPX ; Oeda Takashi,JPX ; Honda Kiyoshi,JPX ; Matsunami Naoto,JPX ; Akiyama Hitoshi,JPX ; Arakawa Hiroshi,JPX ; Yoshida Minoru,JPX ; Yagisawa Ikuya,JPX, Array type disk system updating redundant data asynchronously with data access.
Hill Andrew J. W. (3 Thomson Walk Calcot Heights ; Reading ; RG3 GBX), Computer memory array control for accessing different memory banks simullaneously.
Morita, Seiki; Kobayashi, Masaaki; Sakuramoto, Manabu; Fukuoka, Mikio; Takata, Yutaka, Control method of control device conducting data input and output to storage devices, and control device used therefor.
Glider Joseph S. (Mountain View CA) Powers David T. (Morgan Hill CA) Idleman Thomas E. (Santa Clara CA), Data correcting applicable to redundant arrays of independent disks.
Glider Joseph S. (Mountain View CA) Powers David T. (Morgan Hill CA) Idleman Thomas E. (Santa Clara CA), Data corrections applicable to redundant arrays of independent disks.
Miyawaki Hiroyuki,JPX ; Iwasaki Yasuo,JPX, Data recording/reproducing apparatus with a plurality of recording/reproducing units and capable of data recovery.
Yashiro Mitsuhiko,JPX ; Obata Takeshi,JPX ; Takeda Suijin,JPX ; Iwatani Sawao,JPX, Disk array apparatus that only calculates new parity after a predetermined number of write requests.
Idleman Thomas E. (Santa Clara CA) Koontz Robert S. (Atherton CA) Powers David T. (Morgan Hill CA) Jaffe David H. (Belmont CA) Henson Larry P. (Santa Clara CA) Glider Joseph S. (Palo Alto CA) Gajjar , Disk array system.
Idleman Thomas E. (Santa Clara CA) Koontz Robert S. (Atherton CA) Powers David T. (Morgan Hill CA) Jaffe David H. (Belmont CA) Henson Larry P. (Santa Clara CA) Glider Joseph S. (Palo Alto CA) Gajjar , Disk array system.
Parks Terry J. (Round Rock TX) Jeffries Kenneth L. (Leander TX) Jones Craig S. (Austin TX), Disk drive controller accepting first commands for accessing composite drives and second commands for individual diagnos.
Biskup, Richard J.; Davis, Brian R.; McDonald, James A.; Horst, Robert W., Disk drive data protection using clusters containing error detection sectors.
Stallmo David C. ; Brant William A. ; Hall Randy, Distributed storage array system having plurality of storage devices which each of devices including a modular control unit for exchanging configuration information over a communication link.
Henson Larry P. (Santa Clara CA) Gajjar Kumar (San Jose CA) Powers David T. (Morgan Hill CA) Idleman Thomas E. (Santa Clara CA), Failure-tolerant mass storage system.
Nickolls John R. (Los Altos CA) Kim Won S. (Fremont CA) Zapisek John (Cupertino CA) Blank William T. (Palo Alto CA), Input/output system for parallel processing arrays.
Ellis Robert A. (Woodland Park CO) Lubbers Clark E. (Colorado Springs CO) Malan Steven J. (Woodland Park CO) Rivera Peter (Colorado Springs CO) Snyder Sid (Colorado Springs CO) Thiel David W. (Colora, Method and apparatus for preserving data integrity in a multiple disk raid organized storage system.
Chinnaswamy Kumar (Milford MA) Gagliardo Michael A. (Shrewsbury MA) Goodwin Paul M. (Framingham MA) Lynch John J. (Wayland MA) Tessari James E. (Arlington MA), Method and apparatus for reducing buffer storage in a read-modify-write operation.
Blaum Miguel M. (San Jose CA) Hao Hsieh T. (Los Altos CA) Mattson Richard L. (San Jose CA) Menon Jaishankar M. (San Jose CA), Method and means for encoding and rebuilding data contents of up to two unavailable DASDs in an array of DASDs.
Dunn George Anthony ; Rolls Richard ; Shipman James, Method and means for managing disk drive level logic and buffer modified access paths for enhanced raid array data rebuild and write update operations.
Lubbers Clark E. (Colorado Springs CO) Thiel David W. (Colorado Springs CO), Method for on-line reorganization of the data on a RAID-4 or RAID-5 array in the absence of one disk and the on-line res.
DeKoning Rodney A. ; Humlicek Donald R. ; Johnson Max L. ; Rink Curtis W., Methods and structure to maintain a two level cache in a RAID controller and thereby selecting a preferred posting metho.
Katz Randy H. (Berkeley) Powers David T. (Morgan Hill) Jaffe David H. (Belmont) Glider Joseph S. (Mountain View) Idleman Thomas E. (Santa Clara CA), Non-volatile memory storage of write operation identifier in data sotrage device.
Katz Randy H. ; Powers David T. ; Jaffe David H. ; Glider Joseph S. ; Idleman Thomas E., Non-volatile memory storage of write operation identifier in data storage device.
Katz Randy H. (Berkeley CA) Powers David T. (Morgan Hill CA) Jaffe David H. (Belmont CA) Glider Joseph (Mountain View CA) Idleman Thomas E. (Santa Clara CA), Non-volatile memory storage of write operation indentifier in data storage device.
Mizuno Masahiro (Kamakura JPX) Ogura Shiro (Kamakura JPX) Ito Kazuhiko (Kamakura JPX), Recording system having a redundant array of storage devices and having read and write circuits with memory buffers.
Arlington David L. (Chittenden County VT) Cole Jacqueline M. (Broome County NY) Hazelzet Bruce G. (Crittenden County VT) Krolak David J. (Crittenden County VT) Li Hehching H. (Tioga County NY) Oza Bh, Smart memory card architecture and interface.
Jones Craig S. (Austin TX) Jeffries Kenneth L. (Leander TX) Parks Terry J. (Round Rock TX), System for scheduling read ahead operations if new request is sequential of last n last read requests wherein n is diffe.
Jones Craig S. (Austin TX) Jeffries Kenneth L. (Leander TX) Parks Terry J. (Round Rock TX), System for scheduling readahead operations if new request is within a proximity of N last read requests wherein N is dep.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.