System and method for performing distributed consistency verification of a clustered file system
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-007/00
G06F-017/30
G06F-012/00
출원번호
US-0966591
(2007-12-28)
등록번호
US-8301673
(2012-10-30)
발명자
/ 주소
Hyer, Jr., Robert Wyckoff
Derr, Todd
Edwards, John K.
출원인 / 주소
NetApp, Inc.
대리인 / 주소
Cesari and McKenna, LLP
인용정보
피인용 횟수 :
13인용 특허 :
91
초록▼
A system and method for performing a distributed consistency check of a clustered file system. File system functions for loading an inode and/or buffer tree are modified so that in response to either of these functions being invoked, a consistency check is performed. The consistency check verifies b
A system and method for performing a distributed consistency check of a clustered file system. File system functions for loading an inode and/or buffer tree are modified so that in response to either of these functions being invoked, a consistency check is performed. The consistency check verifies both local consistency on a node of the clustered file and a distributed check across the nodes of the storage system.
대표청구항▼
1. A method for performing verification of a striped volume set, comprising: executing an operating system by a computer servicing a plurality of data containers, the plurality of data containers organized as the striped volume set that includes a plurality of constituent volumes;receiving a request
1. A method for performing verification of a striped volume set, comprising: executing an operating system by a computer servicing a plurality of data containers, the plurality of data containers organized as the striped volume set that includes a plurality of constituent volumes;receiving a request at the operating system directed to a data container of the striped volume set;in response to receiving the request directed to the data container, determining whether the data container has been checked locally;in response to determining that the data container has not been checked locally, performing a local check of the data container;performing a striped volume set check to ensure that the data container is consistent among all the plurality of the constituent volumes by verifying that locally stored metadata associated with the data container is consistent with metadata stored within a container attribute volume of the striped volume set, wherein the container attribute volume is designated to the data container; andreturning a message to the operating system in response to verifying the striped volume set. 2. The method of claim 1, wherein the data container comprises an inode. 3. The method of claim 1, wherein the data container comprises a buffer tree. 4. The method of claim 1, wherein performing a striped volume set check comprises: verifying that the locally stored metadata associated with the data container is consistent with metadata stored within a metadata volume of the striped volume set. 5. The method of claim 1, wherein performing the local check comprises: performing a file inode check of the data container. 6. The method of claim 1, wherein performing the local check comprises: performing a check of a buffer tree associated with an inode of the data container. 7. The method of claim 1, further comprising: modifying a function to load the data container to perform a check of the data container in response to the request directed to the data container. 8. A system configured to perform verification of a striped volume set, comprising: a computer configured to execute an operating system, the computer further configured to service a plurality of data containers organized as the striped volume set that include a plurality of constituent volumes serviced by the computer;the operating system configured to receive a request directed to a data container of the striped volume set;the operating system further configured to determine, in response to receiving the request directed to the data container, whether the data container has been checked locally;the operating system further configured to perform, in response to determining that the data container has not been checked locally, a local check of the data container;the operating system further configured to perform a striped volume set check to ensure that the data container is consistent among all the plurality of the constituent volumes by verifying that locally stored metadata associated with the data container is consistent with metadata stored within a container attribute volume of the striped volume set, wherein the container attribute volume is designated to the data container; andthe operating system further configured to receive a message in response to verifying the striped volume set. 9. The system of claim 8, wherein the data container comprises an inode. 10. The system of claim 8, wherein the data container comprises a buffer tree. 11. The system of claim 8, wherein performing a striped volume set check comprises: the operating system further configured to verify that the locally stored metadata associated with the data container is consistent with metadata stored within a metadata volume of the striped volume set. 12. The system of claim 8, wherein the local check of the data container comprises: the operating system further configured to perform a file inode check of the data container. 13. The system of claim 8, wherein the local check of the data container comprises: the operating system further configured to perform a check of a buffer tree associated with an inode of the data container. 14. The system of claim 8, wherein a set of verification processes of the operating system is configured to perform the verification of the striped volume set. 15. The system of claim 8, wherein the computer comprises a network element and a disk element. 16. The system of claim 8, further comprising: the operating system further configured to organize the plurality of constituent volumes into a single addressable storage space. 17. A non-transitory computer-readable media containing executable program instructions executed by a processor, comprising: program instructions that execute an operating system by a computer servicing a plurality of data containers, the plurality of data containers organized as a striped volume set that includes a plurality of constituent volumes;program instructions that receive a request directed to a data container of the striped volume set;program instructions that determine, in response to receiving the request directed to the data container, whether the data container has been checked locally;program instructions that perform, in response to determining that the data container has not been checked locally, a local check of the data container;program instructions that perform a striped volume set check to ensure that the data container is consistent among all the plurality of constituent volumes by verifying that locally stored metadata associated with the data container is consistent with metadata stored within a container attribute volume of the striped volume set, wherein the container attribute volume is designated to the data container; andprogram instructions that return a message to the operating system in response to verifying the striped volume set. 18. A system configured to verify a striped volume set, comprising: means for executing an operating system by a computer servicing a plurality of data containers, the plurality of data containers organized as the striped volume set on one or more storage devices operatively connected to the computer, wherein the striped volume set includes a plurality of constituent volumes;means for receiving a request directed to a data container of the striped volume set;means for determining, in response to receiving the request directed to the data container, whether the data container has been checked locally;means for performing, in response to determining that the data container has not been checked locally, a local check of the data container;means for performing a striped volume set check to ensure that the data container is consistent among all the plurality of the constituent volumes by verifying that locally stored metadata associated with the data container is consistent with metadata stored within a container attribute volume of the striped volume set, wherein the container attribute volume is designated to the data container; andmeans for returning a message to the operating system in response to verifying the striped volume set. 19. The system as in claim 18, further comprising: means for storing the data container as the striped volume set across one or more of the plurality of constituent volumes. 20. The system as in claim 18, further comprising: means for using a buffer tree as the data container. 21. The system as in claim 18, further comprising: means for verifying an inode of the data container. 22. The system as in claim 18, further comprising: means for using an attached array of writable storage device media as the one or more storage devices. 23. The system as in claim 18, further comprising: means for using an optical media as the one or more storage devices. 24. The system as in claim 18, further comprising: means for using a DVD media as the one or more storage devices. 25. The system as in claim 18, further comprising: means for using a magnetic tape as the one or more storage devices. 26. The system as in claim 18, further comprising: means for using an electronic random access memory as the one or more storage devices. 27. The system as in claim 18, further comprising: means for using a micro-electro mechanical media as the one or more storage devices. 28. The system as in claim 18, further comprising: means for using a magnetic disk as the one or more storage devices. 29. The system as in claim 18, further comprising: means for using a RAID array of magnetic disks as the one or more storage devices. 30. A data storage system, comprising: a computer configured to execute an operating system, the computer configured to service a plurality of data containers organized as a striped volume set that includes a plurality of constituent volumes;a process of the operating system configured to call a loading function of the operating system, the process further configured to issue a request directed to a data container of the striped volume set on one or more persistent storage devices operatively connected to the computer;the operating system further configured to determine, in response to the request directed to the data container, whether the data container has been checked locally;the operating system further configured to perform, in response to determining that the data container has not been checked locally, a local check of the data container;the operating system further configured to perform a striped volume set check to ensure that the data container is consistent among all the plurality of the constituent volumes by verifying that locally stored metadata associated with the data container is consistent with metadata stored within a container attribute volume of the striped volume set, wherein the container attribute volume is designated to the data container, and wherein the striped volume set check is performed before the data container is returned to the process calling the loading function; andthe operating system further configured to return a message to the process in response to verifying the striped volume set. 31. The data storage system as in claim 30, where the striped volume set check further comprises: the operating system further configured to verify that the locally stored metadata associated with the data container is consistent with metadata stored within a metadata volume of the striped volume set. 32. The data storage system as in claim 30, wherein the data container comprises a buffer tree. 33. The data storage system as in claim 30, wherein the data container comprises an inode. 34. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises an attached array of writable storage device media. 35. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises an optical media. 36. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises a DVD media. 37. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises a magnetic tape. 38. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises an electronic random access memory. 39. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises a micro-electro mechanical media. 40. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises a magnetic disk. 41. The data storage system as in claim 30, wherein the one or more persistent storage devices comprises a RAID array of magnetic disks. 42. A storage system, comprising: means for executing an operating system of a computer, the computer configured to service a plurality of data containers organized as a striped volume set that includes a plurality of constituent volumes;means for calling a loading function of the operating system to load a data container of the striped volume set on one or more persistent storage devices operatively connected to the computer;means for determining, in response to loading the data container, whether the data container has been checked locally;means for performing, in response to determining that the data container has not been checked locally, a local check of the data container;means for performing a striped volume set check to verify that the data container is consistent among all the plurality of constituent volumes by verifying that locally stored metadata associated with the data container is consistent with metadata stored within a container attribute volume of the striped volume set, wherein the container attribute volume is designated to the data container, and wherein the striped volume set check is performed before the data container is returned to the means for calling; andmeans for sending a return message in response to verifying the striped volume set.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (91)
Hitz,David; Malcolm,Michael; Lau,James; Rakitzis,Byron, Allocating files in a file system integrated with a raid disk sub-system.
Clifton Richard J. ; Chatterjee Sanjoy ; Larson John P. ; Richart Joseph R. ; Sagan Cyril E., Apparatus and method for backup of a disk storage system.
Jacobs Michael N. (Rochester MN) Lewis David O. (Rochester MN) Thomforde Dale J. (Pine Island MN), Apparatus for storing modifying data prior to selectively storing data to be modified into a register.
Swenson Robert E. (Mendota Heights MN) Hanson Merlin L. (Arden Hills MN) Kelson Larry J. (Shoreview MN), Cache/disk subsystem with file number for recovery of cached data.
Corbett,Peter F.; English,Robert M.; Kleiman,Steven R., Data placement technique for striping data containers across volumes of a storage system cluster.
Auslander Marc A. (Millwood NY) Chang Albert (Austin TX) Morgan Stephen P. (Austin TX) O\Quin ; II John T. (Austin TX) O\Quin ; III John C. (Austin TX), Data processing method to create virtual disks from non-contiguous groups of logically contiguous addressable blocks of.
Koseki, Michihiko; Yokoyama, Mamoru; Sumi, Masashi; Yamaguchi, Satoru; Taniwaki, Sadayoshi; Hamanaka, Seishiro, Data processing system with mechanism for restoring file systems based on transaction logs.
Dalal,Chirag Deepak; Bharadwaj,Vaijayanti Rakshit; Kulkarni,Pradip Madhukar; Karr,Ronald S.; Colgrove,John A., Development of a detailed logical volume configuration from high-level user requirements.
Belsan Jay S. (Nederland CO) Rudeseal George A. (Boulder CO) Milligan Charles A. (Golden CO), Dynamically mapped data storage subsystem having multiple open destage cylinders and method of managing that subsystem.
Xu Yikang ; Vahalia Uresh K. ; Jiang Xiaoye ; Gupta Uday ; Tzelnic Percy, File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems.
Cheng Yu-Ping (San Jose CA) Hitz David (Sunnyvale CA), High-performance non-volatile RAM protected write cache accelerator system employing DMA and data transferring scheme.
Bean George H. (Kingston NY) Borden Terry L. (Poughkeepsie NY) Farrell Mark S. (Pleasant Valley NY) Gum Peter H. (Poughkeepsie NY) Hough Roger E. (Highland NY) Johnson Francis E. (Poughkeepsie NY) Mc, Logical resource partitioning of a data processing system.
Milligan Charles A. (Golden CO) Rudeseal George A. (Boulder CO), Logical track write scheduling system for a parallel disk drive array data storage subsystem.
Baranovsky Leon Daniel ; Cabrera Luis Felipe ; Chin Chiehshow ; Rees Robert, Logical volume manager and method having enhanced update capability with dynamic allocation of storage and minimal stora.
Allen Bruce S. (Willow St. East Kingston NH 03827) Dunalvey Michael R. (276 Harris Ave. Needham MA 02192) King Bruce A. (R.F.D. 2 Bolton MA 01740) DuPrie Harold J. (57 High St. ; Apt. 1B Andover MA 0, Man machine interface.
Fridella,Stephen A; Ma,Gang; Jiang,Xiaoye; Faibish,Sorin; Liang,Rui, Management of the file-modification time attribute in a multi-processor file server system.
Potter David (Acton MA) Provost Laurence N. (Arlington MA) Baron John M. (Grafton MA) Stefanovic David (Allston MA) Sharakan Eric D. (Brighton MA) Sheppard David A. (Cambridge MA) Isman Marshall A. (, Method and apparatus for operating multi-unit array of memories.
Weinreb Daniel L. (Arlington MA) Haradhvala Sam J. (Weston MA), Method and apparatus for virtual memory mapping and transaction management in an object-oriented database system.
Kazar, Michael L.; Nydick, Daniel S.; Sanzi, Jr., Richard N.; Gohh, Fred; Bianchini, Jr., Ronald P.; Speiser, Benjamin, Method and system for responding to file system requests.
Hitz David ; Malcolm Michael ; Lau James ; Rakitzis Byron, Method for maintaining consistent states of a file system and for creating user-accessible read-only copies of a file s.
Gentry Timothy W. (Wichita KS) Fredin Gerald J. (Wichita KS) Riedl Daniel A. (Andover KS), Method for partitioning disk drives within a physical disk array and selectively assigning disk drive partitions into a.
Lowry Edward S. (Acton MA) Van Horn Earl C. (Concord MA) Nixon David M. (Bolton MA), Method of integrating software application programs using an attributive data model database.
Burton, David Alan; Morton, Robert Louis, Method, system, program, and data structures for mapping logical units to a storage space comprises of at least one array of storage units.
Hitz David (Sunnyvale CA) Schwartz Allan (Saratoga CA) Lau James (Cupertino CA) Harris Guy (Mountain View CA), Multiple facility operating system architecture.
Hitz David ; Schwartz Allan ; Lau James ; Harris Guy, Multiple software-facility component operating system for co-operative processor control within a multiprocessor computer system.
Pitts, William Michael, Network system for transmitting overwritten portion of client side node cache image to server site through intermediate downstream nodes updating cache images of data requested by client.
Row Edward J. (Mountain View CA) Boucher Laurence B. (Saratoga CA) Pitts William M. (Los Altos CA) Blightman Stephen E. (San Jose CA), Parallel I/O network file server architecture.
Row Edward J. (Mountain View CA) Boucher Laurence B. (Saratoga CA) Pitts William M. (Los Altos CA) Blightman Stephen E. (San Jose CA), Parallel I/O network file server architecture.
Schmuck Frank B. ; Zlotek Anthony J. ; Shmueli Boaz,ILX ; Mandler Benjamin,ILX ; Yehudai Zvi Yosef,ILX ; Kish William A., Parallel file system with method using tokens for locking modes.
Clark Brian E. (Rochester MN) Lawlor Francis D. (Saugerties NY) Schmidt-Stumpf Werner E. (Patterson NY) Stewart Terrence J. (Rochester MN) Timms ; Jr. George D. (Rochester MN), Parity spreading to enhance storage access.
Bean Robert G. (Colorado Springs CO) Beckman Michael E. (Colorado Springs CO) Rubinson Barry L. (Colorado Springs CO) Gardner Edward A. (Colorado Springs CO) Sergeant O. Winston (Colorado Springs CO), Secondary storage facility empolying serial communications between drive and controller.
Kazar,Michael; English,Robert M.; Jernigan, IV,Richard P., System and method for efficiently guaranteeing data consistency to clients of a storage system cluster.
Smith, Toby; Jernigan, IV, Richard P.; Hyer, Jr., Robert Wyckoff; Kazar, Michael; Noveck, David B.; Griess, Peter, System and method for managing hard and soft lock state information in a distributed storage system environment.
Heil Thomas F. ; Francis Martin H. ; DeKoning Rodney A. ; Weber Bret S., System and method for peer-to-peer accelerated I/O shipping between host bus adapters in clustered computer network.
Foster Richard D. (Poughkeepsie NY) McCaulley Ellory K. (Boulder CO), Version management system using pointers shared by a plurality of versions for indicating active lines of a version.
Boldyrev, Sergey; Pyhälammi, Seppo Juhani; Mannermaa, Mika Juhani; Oliver, Ian Justin; Lassila, Ora; Dive-Reclus, Corinne, Method and apparatus for distributing computation closures.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.