Patent ID: 7689633
Filing Date: 2010-03-30
Classification: G06F

Abstract:
1. A file system comprising: a network file system interface to be coupled to a network to provide multiple-client access and to receive in a random order data blocks of files to be written, wherein each of the data blocks is part of a write I/O request for a given file; a segment file system, coupled to the network file system interface to convert the randomly ordered data blocks of the write I/O requests into a piecewise sequential data structure for each file by putting the data blocks in order to form a sequential stream for each file; a segment store, coupled to the segment file system, to segment each of the piecewise sequential data structures into one or more variable-length data segments; a storage unit, coupled to the segment store unit, implemented in computer hardware to store at least one copy of each unique variable-length data segment; and a redundant segment unit to identify one or more variable length data segments identical to a stored variable length data segment, create a reference to the stored variable length data segment for each variable length data segment identical to a stored variable length data segment, and store each reference to the storage unit, wherein the redundant segment unit deletes each of the one or more variable length data segments identical to a stored variable length data segment, subsequent to creating the reference to the stored variable length data segment for each variable length data segment identical to a stored variable length data segment.