摘要:
Management of a file hierarchy for a clustered file system can be distributed across nodes of the cluster. A cluster file hierarchy is accessed to determine location of a file in response to a request to write to a file. A first node maintains the cluster file hierarchy. It is determined that management of a fileset object, which represents a fileset that includes the file, has been delegated to a second node based, at least in part, on said accessing the cluster file hierarchy. A node file hierarchy maintained by the second node is accessed responsive to determining the delegation. The cluster file hierarchy represents filesets of the clustered file system and the node hierarchy represents a subset of one or more of the filesets. Location of the file is determined based, at least in part, on said accessing the node file hierarchy.
摘要:
In some embodiments, a file management unit located in the operating system detects a write operation that writes the data blocks within the consistency snapshot (in main memory) to the persistent storage. The file management unit can then determine that all transactions have been completed before the write operation begins. In some instances, the file management unit then attempts to write the data blocks within the consistency snapshot to the persistent storage. The file management unit can then receive a notification that the write operation did not successfully write the data blocks from the consistency snapshot to the persistent storage. In some embodiments, the write operation is not successful because there are fewer free data blocks in the persistent storage than needed for writing the data blocks within the consistency snapshot to persistent storage. The file management can then wait a period of time. After the file management unit has waited for a period of time, it can make another attempt to write the data blocks within the consistency snapshot to the persistent storage.
摘要:
Embodiments include a method for removing a file within a redirect-on-write file system. In some embodiments, a file removal operation is detected in a file management unit, which resides in a memory unit. It is then determined that the number of free data blocks in the persistent storage is below a minimum threshold. The file removal operation is written to a log used for storing system operations. A file management unit is notified of the successful write of the file removal operation to the log used for storing system operations. The data blocks are moved from the file selected for removal to a list of free data blocks. The indirect blocks from the file selected for removal are moved to a data block removal list.
摘要:
After a clone file is created from a file, a write request targeting the clone file can be handled. It is determined that the write request indicates the clone file that was cloned from a file in a first fileset. The clone file is of a second fileset and a clustered file system comprises the first fileset and the second fileset. A data block of the clone file affected by the write request is determined. It is then determined that the data block at a current location cannot be modified. The write request is implemented with respect to the data block at a different location. It is indicated that the data block at the different location can be modified for subsequent write requests that indicate the clone file
摘要:
Mechanisms are provided for importing pre-existing data into a storage system utilizing a current storage management system that is different from an original storage management system used to create the pre-existing data. One or more data storage devices are integrated into the storage system in-place without modification of the pre-existing data stored on the one or more data storage devices. Metadata for the pre-existing data is created based on a linear progression of data in the pre-existing data. Read access requests targeting the pre-existing data are executed using the created metadata. Write access requests targeting the pre-existing data are executed by redirecting the write access requests to a copy of the pre-existing data created in another storage location.
摘要:
Mechanisms are provided for importing pre-existing data into a storage system utilizing a current storage management system that is different from an original storage management system used to create the pre-existing data. One or more data storage devices are integrated into the storage system in-place without modification of the pre-existing data stored on the one or more data storage devices. Metadata for the pre-existing data is created based on a linear progression of data in the pre-existing data. Read access requests targeting the pre-existing data are executed using the created metadata. Write access requests targeting the pre-existing data are executed by redirecting the write access requests to a copy of the pre-existing data created in another storage location.
摘要:
Maintaining a generation value for each fileset that is distinct from a corresponding fileset manager preserves the independence of nodes while also allowing distributed fileset management. A fileset manager can maintain a value that reflects consistency snapshots for that node (“node generation”) separately from a value that reflects consistency snapshots for a particular fileset (“fileset generation”).
摘要:
One embodiment is for using a sparse file as a clone. The method includes creating, by an application associated with a computer system, a snapshot of a file, such as an individual file, a collection of files, file system, directories, and so forth. Further, the method includes requesting, by the application, a clone of that created snapshot. Further still, the method includes generating, by the application, an empty sparse having at least one inode identifying the empty sparse file as the clone and pointing to the snapshot associated with the clone. Thereby, the requested clone is created using the created sparse file, which begins as an empty sparse file.
摘要:
Management of a file hierarchy for a clustered file system can be distributed across nodes of the cluster. A cluster file hierarchy is accessed to determine location of a file in response to a request to write to a file. A first node maintains the cluster file hierarchy. It is determined that management of a fileset object, which represents a fileset that includes the file, has been delegated to a second node based, at least in part, on said accessing the cluster file hierarchy. A node file hierarchy maintained by the second node is accessed responsive to determining the delegation. The cluster file hierarchy represents filesets of the clustered file system and the node hierarchy represents a subset of one or more of the filesets. Location of the file is determined based, at least in part, on said accessing the node file hierarchy.
摘要:
A method including creating a commit-in-progress context from a copy of a data object in a redirect-on-write file system; and begin storing the commit-in-progress context in a persistent storage device. The method further includes, while storing the commit-in-progress context in the persistent storage device: receiving a notification of a pending modification to the first data object, creating an update-in-progress context from a copy of the commit-in-progress context, and begin applying the modification to the update-in-progress context. The method further includes detecting that a connectivity error has occurred between the commit-in-progress context and the storage device, and in response, identifying whether the commit-in-progress context is successfully stored in the storage device. In response to identifying that the commit-in-progress context is not successfully stored: aborting the storing of the commit-in-progress context, assigning a new commit-in-progress context, and begin storing the new commit-in-progress context.