摘要:
Methods, systems, and apparatus can provide a means for a user-level process to acquire locks on resources at the kernel level through the use of a session that persists after the termination of the user-level process. A session recovery mechanism can be provided so that a newly started process can query an existing kernel-level lock session to discover which locks were held by a previously terminated process. This is accomplished, in part, through associating the kernel session with a token, rather than by associating the locks with a user-level process ID. Such a mechanism provides the ability for the new process to perform appropriate lock cleanup or to continue the work of the previous process under protection of the surviving locks.
摘要:
A system for optimizing storage operations by operating only on mapped blocks may include a first and a second set of one or more storage devices, a virtual device client and a virtual device server. The virtual device server may be configured to aggregate storage in the first set of one or more storage devices into a virtual storage device, and make the virtual device accessible to the virtual device server. In preparation for a synchronization operation, the virtual device server may obtain a map identifying one or more in-use regions of the virtual storage device from the virtual device client. The virtual device server may then perform the synchronization operation by copying the one or more in-use regions of the virtual storage device to the second set of one or more storage devices.
摘要:
A computer accessible medium comprises instructions which, when executed, receive a request to allocate one or more blocks for a file. At least one allocation policy is assigned to the file, wherein the allocation policy specifies one or more storage units on which the blocks are to be allocated. Additionally, if more than one storage unit is specified, the allocation policy includes a control indication indicating a mechanism for selecting among the storage units. The instructions, when executed, may also allocate blocks according to the allocation policy. In another implementation, a computer accessible medium comprises instructions which, when executed receive a request to allocate one or more blocks for a file in a filesystem and allocate blocks according to an allocation policy. Allocation policies are specifiable at two or more levels of granularity in the filesystem.
摘要:
System and method for implementing a file system across different storage classes in a storage system. Embodiments may define multiple classes of storage and automatically and transparently migrate data in the storage classes within the same file system to meet the usage needs of the business. Embodiments may transparently adapt the cost of storage to the usage patterns of data on the storage, thereby reducing the amount that customers need to spend for their storage. In embodiments, storage devices may be classified into different classes of storage to implement a multi-class file system. Embodiments may provide a multi-class storage mechanism for managing and implementing user-defined policies for assigning and migrating data within the multi-class file system. The multi-class storage mechanism may determine where to initially place data, and may transparently migrate data to other storage classes according to the policies. Migrated data remains online within the file system.
摘要:
Systems and methods for extent reference count updates are presented. In one embodiment; a reference count update method includes: receiving an indication of new reference association with an extent of a shared storage component; generating reference count update log information for a reference count update log to indicate the new reference association with an extent of a shared storage component, wherein the altering occurs inline; forwarding a successful data update indicator to initiator of activity triggering the new reference association with the extent of the shared storage component; and updating a reference count table in accordance with the information in the reference count update log, wherein the updating is included in a background process.
摘要:
System and method for performing optimized restores of a multi-class file system. More actively accessed data may be assigned to higher storage classes and less actively accessed data may be assigned to lower storage classes in the multi-class file system. In a restore, the higher storage class(es) including more actively accessed data may be restored first. The multi-class file system may then be brought online for access by application(s). The lower storage class(es) may then be restored. In one embodiment, if a request for data that have not been restored is received, the file system may obtain an estimated time until restore of the requested data from the restore mechanism. The file system may then notify the application of the estimated time until restore. The application may notify a user of the estimated time, and may generate another request for the data after the estimated time has elapsed.
摘要:
Systems and methods for extent reference count updates are presented. In one embodiment; a reference count update method includes: receiving an indication of new reference association with an extent of a shared storage component; generating reference count update log information for a reference count update log to indicate the new reference association with an extent of a shared storage component, wherein the altering occurs inline; forwarding a successful data update indicator to initiator of activity triggering the new reference association with the extent of the shared storage component; and updating a reference count table in accordance with the information in the reference count update log, wherein the updating is included in a background process.
摘要:
Various methods and systems can be used to provide standard file system access to data that is originally accessed only by a proprietary interface. One such method involves querying an application (e.g., a database management system) for information identifying a location of each of several data objects within several volumes. The application provides a proprietary interface to the data objects stored on the volumes. The method then creates metadata, which associates each of several files within a new file system with the location of a respective one of the data objects within the volumes. The metadata can be created by an in-place conversion module implemented on a computing device. The method then provides the application with access to the files within the new file system, subsequent to creating the metadata.
摘要:
System and method for performing operations in a multi-class file system without requiring split mirrors. For one or more storage classes in the multi-class file system, operations that require stable copies of the storage classes may be performed without using split mirrors. In one embodiment, read-only data may be assigned and/or migrated to lower storage classes, and operations may be performed on the read-only storage classes without using split mirrors. In one embodiment, to perform an operation without using a split mirror, a write lock of a storage class may be examined to determine if the write-locked storage class has been written to during the operation on the storage class and, if so, the operation may be retried for the storage class. In one embodiment, the file system software may be blocked from enabling a storage class for writing for the duration of the operation on the storage class.
摘要:
System and method for performing backups of a multi-class file system are described. In one embodiment, more recently modified data may be assigned and/or migrated to higher storage classes and less recently modified data may be migrated at time intervals to lower storage classes in the multi-class file system. Backups of each of the storage classes may be performed at time intervals. In one embodiment, the backups may be image-based backups of the storage devices in the storage classes. In one embodiment, the lower storage classes may include one or more read-only storage classes including less-recently modified data that are backed up less frequently than higher storage classes including more-recently modified data. In one embodiment, files migrated to lower storage class(es) may be compressed.