SYSTEMS AND METHODS FOR DATA MIGRATION IN A CLUSTERED FILE SYSTEM
First Claim
1. A method for coordinating access to data in a storage management system, the method comprising:
- storing in a shared file system on a primary storage device a plurality of files comprising a first plurality of regular files and a plurality of stub files, the plurality of stub files being associated with a second plurality of regular files having been migrated to secondary storage;
maintaining in a first driver cache of a first computer a first indication of first inodes associated with at least one of the first plurality of regular files on the primary storage device;
maintaining in a second driver cache of a second computer a second indication of second inodes associated with at least one of the first plurality of regular files on the primary storage device;
requesting with each of the first and second computers a read-only lock on a signal file on the shared file system to determine whether or not a migration operation is about to occur with respect to at least one of the first plurality of regular files on the primary storage device;
when the request for the read-only lock on the signal file is denied of at least one of the first and second computers, clearing the respective first and/or second indications from the respective first and/or second driver caches of the at least one of the first and second computers; and
when the request for the read-only lock on the signal file is granted to at least one of the first and second computers, unlocking the signal file and re-requesting the read-only lock on the signal file after a predetermined period of time.
4 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for providing more efficient handling of I/O requests for clustered file system data subject to data migration or the like. For instance, exemplary systems can more quickly determine if certain files on primary storage represent actual file data or stub data for recalling file data from secondary storage. Certain embodiments utilize a driver cache on each cluster node to maintain a record of recently accessed files that represent regular files (as opposed to stubs). A dual-locking process, using both strict locking and relaxed locking, maintains consistency between driver caches on different nodes and the data of the underlying clustered file system, while providing improved access to the data by the different nodes. Moreover, a signaling process can be used, such as with zero-length files, for alerting drivers on different nodes that data migration is to be performed and/or that the driver caches should be flushed.
120 Citations
20 Claims
-
1. A method for coordinating access to data in a storage management system, the method comprising:
-
storing in a shared file system on a primary storage device a plurality of files comprising a first plurality of regular files and a plurality of stub files, the plurality of stub files being associated with a second plurality of regular files having been migrated to secondary storage; maintaining in a first driver cache of a first computer a first indication of first inodes associated with at least one of the first plurality of regular files on the primary storage device; maintaining in a second driver cache of a second computer a second indication of second inodes associated with at least one of the first plurality of regular files on the primary storage device; requesting with each of the first and second computers a read-only lock on a signal file on the shared file system to determine whether or not a migration operation is about to occur with respect to at least one of the first plurality of regular files on the primary storage device; when the request for the read-only lock on the signal file is denied of at least one of the first and second computers, clearing the respective first and/or second indications from the respective first and/or second driver caches of the at least one of the first and second computers; and when the request for the read-only lock on the signal file is granted to at least one of the first and second computers, unlocking the signal file and re-requesting the read-only lock on the signal file after a predetermined period of time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for coordinating access to data in a shared storage environment, the system comprising:
-
a first computer comprising a first memory storing copies of first inodes in a shared file system that represent first data files that have not been migrated from primary storage to secondary storage; a second computer comprising a second memory storing copies of second inodes in the shared file system that represent second data files that have not been migrated from primary storage to secondary storage, the first and second memories not storing copies of inodes that represent stub files; first and second file system drivers executing on, respectively, said first and second computers, each of the first and second file system drivers being configured to request a shared lock on a signal file on the shared file system; and when the request for the shared lock on the signal file is denied of at least one of the first and second file system drivers, clearing the respective copies of the first and/or second inodes from the respective first and/or second memories, and when the request for the shared lock on the signal file is granted to at least one of the first and second file system drivers, unlocking the signal file and re-requesting the shared lock on the signal file after a predetermined period of time. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system for coordinating access to data in a shared storage environment, the system comprising:
-
first means for storing on a first computing device a first indication of first inodes in a shared file system that represent first data files that have not been migrated from primary storage to secondary storage; second means for storing on a second computing device a second indication of second inodes in the shared file system that represent second data files that have not been migrated from primary storage to secondary storage, the first and second means for storing not storing indications of inodes that represent stub files; third means for requesting a non-exclusive lock on a signal file on the shared file system to determine whether or not a migration operation is about to occur on data in the shared file system; and fourth means for requesting a non-exclusive lock on the signal file on the shared file system to determine whether or not a migration operation is about to occur at least on at least one of the first and second data files, and when the request for the non-exclusive lock on the signal file is denied of at least one of the third and fourth means for requesting, clearing the first and/or second indications of the, respective, first and/or second means for storing, and when the request for the non-exclusive lock on the signal file is granted to at least one of the third and fourth means for requesting, unlocking the signal file and re-requesting with the at least one of the third and fourth means for requesting the non-exclusive lock on the signal file after a predetermined period of time. - View Dependent Claims (20)
-
Specification