Method and system for reallocating data in a file system
AssigneeNetwork Appliance, Inc.
InventorsRobert L. Fair, John K. Edwards
Life of this patent
Estimating the term…
Abstract
A method and system for reallocating the data blocks of a logical data entity are described. According to one aspect of the invention, the physical arrangement of data blocks of a logical data entity are analyzed to determine a fragmentation level. Next the fragmentation level is compared with a fragmentation threshold previously assigned to the logical data entity. If the fragmentation level exceeds the fragmentation threshold, only those data blocks of the logical data entity that are within a predefined allocation area having a predetermined number of contiguous data blocks that are not associated with the logical data entity are reallocated.
Claims17
A method for reallocating data blocks in a logical data entity, the method comprising:
- analyzing a physical arrangement of the data blocks in the logical data entity to determine a fragmentation level associated with the logical data entity;
- and
- if the fragmentation level exceeds a fragmentation threshold associated with the logical data entity, then reallocating only those data blocks of the logical data entity that are within a predefined allocation area having a predetermined number of contiguous data blocks that are not associated with the logical data entity.
A storage system comprising:
- a file system to create and maintain a logical data entity to be stored as a plurality of data blocks on an array of storage devices and to service read and write requests received from one or more clients;
- a reallocation module to analyze the data blocks to determine a fragmentation level associated with the logical data entity, and to reallocate only those data blocks of the logical data entity that are within a predefined allocation area having a predetermined number of contiguous data blocks that are not associated with the logical data entity, if the fragmentation level exceeds a fragmentation threshold assigned to the logical data entity.
A storage server comprising:
- a network interface through which to communicate data with one or more clients;
- a storage interface through which to communicate data with an array of storage devices;
- a processor;
- and
- a memory storing instructions which, when executed by the processor, cause the storage server to perform a set of operations, including:
- analyzing a physical arrangement of data blocks to determine a fragmentation level associated with the logical data entity;
- and
- if the fragmentation level associated with the logical data entity exceeds a fragmentation threshold assigned to the logical data entity, reallocating only those data blocks of the logical data entity that are within a predefined allocation area having a predetermined number of contiguous data blocks that are not associated with the logical data entity.
Dependencies are inferred from the claim text.