摘要:
A method is used in managing global data caches for file systems. Space is allocated in a volatile memory of a data storage system to a global data cache that is configured to store a set of data objects for a plurality of different file systems. The set of data objects is accessed by the plurality of different file systems. Contents of a file of a file system are stored in a data object in the global data cache upon receiving a write I/O request for the file. A copy of the data object and information for the data object are stored in a persistent journal that is stored in a non-volatile memory of the data storage system. Contents of the file are updated on a storage device based on the data object stored in the global data cache and information stored in the persistent journal.
摘要:
A method is used in managing snapshot in cache-based storage systems. A request to create a snapshot of a data object is received. A portion of the data object is cached in a global cache. The data object is associated with a mapping object. The mapping object manages access to the portion of the data object. A snapshot of the data object is created. A snapshot mapping object is associated with the snapshot of the data object. The snapshot mapping object includes a link to the mapping object. The snapshot mapping object is a version of the mapping object and shares the portion of the data object cached in the global cache.
摘要:
A method is used in managing global metadata caches in data storage systems. Space is allocated in a memory of a data storage system to a global metadata cache which is configured to store metadata objects for a plurality of different file systems responsive to file system access requests from the plurality of different file systems. A metadata object associated with a file of a file system of the plurality of different file systems is stored in the global metadata cache. The metadata object is accessed by a plurality of different versions of the file.
摘要:
A file system has files constructed of an inode for each file, indirect blocks, and allocation units of file system data blocks. Each of the allocation units has one of the file system data blocks or a plurality of the file system data blocks having contiguous file system block numbers. Each file in the file system has a respective allocation unit size attribute specifying an allocation unit size of each and every allocation unit in the file, and the files in the file system have allocation units of different allocation unit sizes. By using larger allocation units for larger files, there is a reduction in the number of indirect blocks in the files without a corresponding loss in performance, and a reduction in the time needed for the UNIX FSCK utility to check file system consistency.
摘要:
A file server has an extent cache of pointers to leaf-level indirect blocks containing file mapping metadata. The extent cache improves file access read and write performance by returning a mapping for the data blocks to be read or written without having to iterate through intermediate level indirect blocks of the file. In addition, the extent cache contains pointers to the leaf-level indirect blocks in the file system cache. Therefore, in most cases, the time spent looking up pointers in the extent cache is offset by a reduction in the time that would otherwise be spent in locating the leaf-level indirect blocks in the file system cache. In a preferred implementation, the extent cache has a first least recently used (LRU) list and cache entry allocation for production files, and a second LRU list and cache entry allocation for snapshot copies of the production files.
摘要:
A method is used in managing active-active mapped logical volumes. A mapped logical volume is created. The mapped logical volume includes first and second mapped logical volumes. Ownership of the first mapped logical volume resides with a first storage processor of a storage system and ownership of the second mapped logical volume resides with a second storage processor of the storage system. The mapped logical volume is managed. An access to the mapped logical volume is provided to the first and second storage processors.
摘要:
A method is used in managing accesses to active-active mapped logical volumes. A portion of a mapped logical volume associated with an I/O request is determined. Based on the determination, a set of storage processor paths for accessing the mapped logical volume is determined. The I/O request is sent using a storage processor path from the set of storage processor paths for accessing the mapped logical volume.
摘要:
This invention is a system and a method for operating a storage server that provides read or write access to a data in a data network using a new architecture. The method of processing I/Os in response to a request by a client of the storage server executes one or more services communicated by a policy engine. The I/Os received from the application are tagged and catalogued to create co-related I/O patterns. The policy engine is then updated with the results of processing the I/Os after executing services on those I/Os.
摘要:
A method is used in encrypting in deduplication systems. A deduplicating technique is applied to a data object. Applying the deduplicating technique includes computing a digest of the data object. An encryption key is derived from the digest of the data object. The data object is encrypted using the encryption key.
摘要:
A method is used in managing global caches in data storage systems. A cache entry of a global cache of a data storage system is accessed upon receiving a request to perform an I/O operation on a storage object. The cache entry is associated with the storage object. Accessing the cache entry includes holding a reference to the cache entry. A determination is made as to whether the I/O operation is associated with a sequential access. Based on the determination, releasing the reference to the cache entry is delayed.