Multi-volume extent based file system
AssigneeEMC Corporation
InventorsPreston F. Crow, Robert S. Mason JR., Steven T. McClure, Susan C. Nagy, Richard G. Wheeler
Life of this patent
Estimating the term…
Abstract
A memory storage device has a file storage operating system which uses an inode to record and find segments of each data file. The inode includes a plurality of rows. A portion of the rows are written with direct extents pointing to data blocks storing portions of file segments. At least two of the extents point to data blocks having addresses in different logical volumes.
Claims15
A memory storage device having an operating system which uses at least one inode to record and find segments of a data file, the inode comprising:
- a plurality of rows, and
- a portion of the rows being written with direct extents pointing to data blocks storing portions of file segments, at least two of the extents pointing to data blocks having addresses in different logical volumes.
A memory storage device having an operating system which uses at least one inode for accessing file segments, the inode comprising:
- a plurality of rows;
- and
- a portion of the rows storing extents pointing to data blocks, each extent having a field to indicate whether the extent is an indirect extent or a direct extent, each direct extent of the inode further comprises a field for a logical volume pointer.
An automated method of storing data files in a memory storage system, comprising:
- assigning an inode to a data file;
- and
- writing a plurality of extents in the inode, each extent pointing to a sequence of one or more data blocks for storing a segment of the data file, at least two of the extents pointing to different logical volumes.
An automated method of storing data files in a memory storage system, comprising:
- assigning an inode to a data file to be stored;
- and
- writing a plurality of extents in the inode, each extent pointing to a string of one or more data blocks for storing a segment of the data file and having a field for indicating that the extent is one of an indirect extent and a direct extent, the act of writing includes writing an address pointer in each extent, the address pointer indicating a logical volume and an offset of a data block in the logical volume.
In a memory storage device employing an operating system comprising instructions for a method for storing data files, the method comprising:
- writing a plurality of extents to an inode assigned to a file, at least two of the extents pointing to different logical devices;
- writing data to first and second data blocks, first and second ones of the extents pointing to the first and second physical data blocks;
- inserting an indirect extent in the inode between the first and second ones of the extents, the indirect extent pointing to a third physical data block;
- and
- writing at least one extent to the third physical data block, the one extent pointing to a physical data block storing a segment of the file.
A distributed storage system, comprising:
- a global cache memory;
- a plurality of processors coupled to the global cache memory, each processor having a local memory for storing an operating system;
- and
- a plurality of data storage devices coupled to the global cache memory, the devices and processors capable of communicating by posting messages to each other in the cache memory, each of the devices including a processor and local memory storing an operating system, each operating system having an extent based file system for abstracting file names to physical data blocks in the devices by assigning an inode to each file, each inode adapted to store extents having a field to point to a logical volume.
Dependencies are inferred from the claim text.