IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
UP-0890280
(2007-08-03)
|
등록번호 |
US-7689860
(2010-04-23)
|
발명자
/ 주소 |
- Zarnke, Robert
- Malcolm, Michael A.
|
출원인 / 주소 |
|
인용정보 |
피인용 횟수 :
2 인용 특허 :
21 |
초록
▼
Integrating content into a storage system with substantially immediate access to that content. Providing high reliability and relatively easy operation with a storage system using redundant information for error correction. Having the storage system perform a “virtual write,” including
Integrating content into a storage system with substantially immediate access to that content. Providing high reliability and relatively easy operation with a storage system using redundant information for error correction. Having the storage system perform a “virtual write,” including substantially all steps associated with writing to the media to be integrated, except for the step of actually writing data to that media, including rewriting information relating to used disk blocks, and including rewriting any redundant information maintained by the storage system. Integrating the new physical media into the storage system, including accessing content already present on that media, free space already present on that media, and reading and writing that media. Recovering from errors during integration.
대표청구항
▼
The invention claimed is: 1. A method, including steps of coupling a storage system including at least some existing data content and at least some existing redundant information relevant to said data content with a new storage device including new data content; adjusting usage information associat
The invention claimed is: 1. A method, including steps of coupling a storage system including at least some existing data content and at least some existing redundant information relevant to said data content with a new storage device including new data content; adjusting usage information associated with said storage system to include selected portions from said new storage device as being available for use with said storage system, said steps of adjusting usage information including steps of adjusting at least some of said existing redundant information responsive to said selected portions of said new data content; and updating said storage system to reflect that said selected portions of said new data content are available for use by said storage system. 2. A method as in claim 1, including steps of detecting an error associated with an operation performed by said storage system; and computing information associated with at least one storage block in a stripe associated with said error. 3. A method as in claim 2, wherein the steps of computing include steps of adjusting a set of redundant information for the stripe associated with said error. 4. A method as in claim 1, including steps of optionally writing to said new storage device one or more of the following: information responsive to file system operations performed with regard to said new storage device; information responsive to one or more sets of blocks associated with said new storage device; information responsive to updating one or more file directories associated with said new storage device; information responsive to creating, deleting, modifying, or updating one or more files associated with said new storage device. 5. A method as in claim 1, including steps of concurrently with said steps adjusting usage information, conducting one or more file system operations using said storage system; whereby said new data content is available for those file system operations without substantial delay after said steps of adjusting. 6. A method as in claim 5, wherein each such file system operation is performed atomically. 7. A method as in claim 5, wherein said steps of adjusting are performed concurrently. 8. A method as in claim 1, including steps of integrating a file system associated with said new storage device into said storage system, the file system including at least a set of files and a set of free disk blocks; and whereby operations for said file system need not distinguish between said new storage device and a set of existing storage devices already integrated into said storage system. 9. A method as in claim 8, wherein said steps of integrating a file system include steps of designating at least some of those free disk blocks as parity blocks. 10. A method as in claim 1, including steps of maintaining information representative of a first set of blocks in use by said new storage device; maintaining information representative of a second set of blocks associated with said new storage device and for which either (A) said steps of adjusting information have been performed, or (B) said blocks have been written to the storage device since said storage device was added to the storage system; whereby said steps of adjusting information are deemed substantially complete when said first set of blocks is substantially included in said second set of blocks. 11. A method as in claim 10, including steps of detecting an error associated with an operation performed by said storage system; and when said error is associated with content in said storage system, computing information associated with at least one storage block in a stripe associated with said error; whereby, when stripe does not include one block of said first set of blocks in use by said new storage device, but said one block is included in said second set of blocks for which said steps of adjusting have been performed, content associated with said error is recoverable by said storage system without content from said new storage device; and whereby, when said stripe includes one of said first set of blocks in use by said new storage device, but said one block is not included in said second set of blocks for which said steps of adjusting have been performed, content associated with said error is recoverable by said storage system using content from said new storage device. 12. A method as in claim 11, wherein the steps of computing include steps of adjusting a set of parity information for the stripe associated with said error. 13. A method as in claim 10, including steps of detecting an error associated with an operation performed by said storage system; and wherein said steps of maintaining information representative of either said first set of blocks or said second set of blocks are at least partially responsive to said error. 14. A method as in claim 10 including steps of maintaining information representative of a third set of blocks associated with said storage device and for which at least one storage system operation has been performed. 15. A method as in claim 10, including steps of detecting an error associated with an operation performed by said storage system; and wherein said steps of adjusting are at least partially repeated in response to either (1) a nature of said error, or (2) a difference between said first set of blocks and said second set of blocks. 16. A method as in claim 1, wherein said storage system includes one or more existing storage devices including a set of existing storage blocks, said existing data content being associated with a first set of said existing storage blocks and said redundant information being associated with a second set of said existing storage blocks; said new storage device includes one or more new storage blocks including said new data content; wherein said steps of adjusting redundant information include steps of writing to said existing storage blocks including redundant information to be consistent with said new storage blocks. 17. A method as in claim 16, including steps of maintaining information regarding a first set of said new storage blocks said include data content; maintaining information regarding a second set of said new storage blocks for which said steps of adjusting usage information have been performed; repeating said steps of adjusting usage information until that first set is substantially included in said second set. 18. A method as in claim 1, including steps of providing substantially immediate access to said selected portions from said new storage device, in response to said steps of adjusting usage information, to devices having access to that storage system. 19. A method as in claim 18, wherein said steps of providing access are performed for at least some of said new data content before said steps of adjusting usage information are performed for all of said new data content. 20. A method as in claim 1, wherein said new storage device includes content in a format maintained by said storage system, before said storage device is coupled to said storage system. 21. A method as in claim 1, wherein said storage device includes at least a set of files and a set of free storage blocks; and including steps of concurrently integrating said set of files and said set of free storage blocks into said storage system. 22. A method as in claim 1, wherein said steps of adjusting redundant information include steps of selecting a stripe of storage blocks to include one or more of said selected portions from said new storage device and one or more storage blocks of said existing redundant information; and performing, for said storage system, steps associated with writing content to the storage blocks of said existing redundant information for said selected stripe. 23. A computer-readable medium having computer-executable instructions for performing a method comprising: coupling a storage system including at least some existing data content and at least some existing redundant information relevant to that data content with a new storage device including new data content; adjusting usage information associated with said storage system to include selected portions from said new storage device as being available for use with said storage system, said adjusting usage information including adjusting at least some of said existing redundant information responsive to said selected portions of said new data content; and updating said storage system to reflect that said selected portions of said new data content are available for use by said storage system. 24. The computer-readable medium of claim 23, wherein said storage system includes one or more existing storage devices including a set of existing storage blocks, said existing data content being associated with a first set of said existing storage blocks and said redundant information being associated with a second set of said existing storage blocks; said new storage device includes one or more new storage blocks including said new data content; wherein said adjusting redundant information include writing to said existing storage blocks including redundant information to be consistent with said new storage blocks. 25. The computer-readable medium of claim 24, further comprising: maintaining information regarding a first set of said new storage blocks that include data content; maintaining information regarding a second set of said new storage blocks for which said adjusting usage information has been performed; repeating said adjusting usage information until said first set is substantially included in said second set. 26. The computer-readable medium of claim 23, further comprising: providing substantially immediate access to said selected portions from said new storage device, in response to said adjusted usage information, to devices having access to said storage system. 27. The computer-readable medium of claim 26, wherein said providing access is performed for at least some of said new data content before said usage information is adjusted for all of said new data content. 28. The computer-readable medium of claim 23, further comprising: concurrently integrating a set of files and a set of free storage blocks from said storage device into said storage system. 29. The computer-readable medium of claim 23, wherein said adjusting redundant information comprises: selecting a stripe of storage blocks to include one or more of said selected portions from said new storage device and one or more storage blocks of said existing redundant information; and directing said storage system to write content to the storage blocks of said existing redundant information for said selected stripe.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.