Patents by Inventor R. Hugo Patterson

R. Hugo Patterson has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8612696
    Abstract: A system and method are disclosed for providing efficient data storage. A plurality of data segments is received in a data stream. The system preliminarily checks in a memory having a relatively low latency whether one of the plurality of data segments may have been stored previously in a data segment repository. The memory having the relatively low latency stores data segment information. In the event that the preliminary check determines that one of the plurality of data segments may have been stored in the data segment repository, a memory having a relatively higher latency is checked to determine whether the data segment has been stored previously in the data segment repository.
    Type: Grant
    Filed: August 23, 2012
    Date of Patent: December 17, 2013
    Assignee: EMC Corporation
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Publication number: 20130304969
    Abstract: A system for storing data comprises a performance storage unit and a performance segment storage unit. The system further comprises a determiner. The determiner determines whether a requested data is stored in the performance storage unit. The determiner determines whether the requested data is stored in the performance segment storage unit in the event that the requested data is not stored in the performance storage unit.
    Type: Application
    Filed: April 18, 2013
    Publication date: November 14, 2013
    Inventor: R. Hugo Patterson
  • Patent number: 8527455
    Abstract: Seeding replication is disclosed. One or more but not all files stored on a deduplicated storage system are selected to be replicated. One or more segments referred to by the selected one or more but not all files are determined. A data structure is created that is used to indicate that at least the one or more segments are to be replicated. In the event that an indication based at least in part on the data structure indicates that a candidate segment stored on the deduplicating storage system is to be replicated, the candidate segment is replicated.
    Type: Grant
    Filed: September 26, 2010
    Date of Patent: September 3, 2013
    Assignee: EMC Corporation
    Inventor: R. Hugo Patterson
  • Patent number: 8484356
    Abstract: A request for allocating a storage unit of a storage system is received to back up data of one or more clients. The storage system includes multiple storage units and each storage unit storing data that is deduplicated within each storage unit. In response to the request, one or more of the storage units are selected based on an amount of deduplicated data that would be stored in each of the storage units after storing the data of the one or more clients. The selected one or more storage units are allocated to the one or more clients to back up the data of the one or more clients.
    Type: Grant
    Filed: June 29, 2011
    Date of Patent: July 9, 2013
    Assignee: EMC Corporation
    Inventors: Frederick Douglis, R. Hugo Patterson, Philip N. Shilane
  • Patent number: 8447726
    Abstract: A system for storing data comprises a performance storage unit and a performance segment storage unit. The system further comprises a determiner. The determiner determines whether a requested data is stored in the performance storage unit. The determiner determines whether the requested data is stored in the performance segment storage unit in the event that the requested data is not stored in the performance storage unit.
    Type: Grant
    Filed: September 21, 2010
    Date of Patent: May 21, 2013
    Assignee: EMC Corporation
    Inventor: R. Hugo Patterson
  • Patent number: 8365043
    Abstract: A method of storing data is disclosed. A set of data blocks, including a plurality of proper subsets of data blocks, is stored. A plurality of first-level parity blocks is generated, wherein each first-level parity block is generated from a corresponding proper subset of data blocks within the plurality of proper subsets of data blocks without reference to other data blocks not in the corresponding proper subset. A second-level parity block is generated, wherein the second level parity block is generated from a plurality of data blocks included in at least two of the plurality of proper subsets of data blocks, and wherein recovery of a lost block in a given proper subset of data blocks is possible without reference to any data blocks not in the given proper subset.
    Type: Grant
    Filed: March 4, 2012
    Date of Patent: January 29, 2013
    Assignee: EMC Corporation
    Inventors: Christopher R. Lumb, R. Hugo Patterson
  • Publication number: 20120317381
    Abstract: A system and method are disclosed for providing efficient data storage. A plurality of data segments is received in a data stream. The system preliminarily checks in a memory having a relatively low latency whether one of the plurality of data segments may have been stored previously in a data segment repository. The memory having the relatively low latency stores data segment information. In the event that the preliminary check determines that one of the plurality of data segments may have been stored in the data segment repository, a memory having a relatively higher latency is checked to determine whether the data segment has been stored previously in the data segment repository.
    Type: Application
    Filed: August 23, 2012
    Publication date: December 13, 2012
    Applicant: EMC Corporation
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Patent number: 8312006
    Abstract: Storage of data segments is disclosed. For each segment, a similar segment to the segment is identified, wherein the similar segment is already managed by a cluster node. In the event the similar segment is identified, a reference to the similar segment and a delta between the similar segment and the segment are caused to be stored instead of the segment.
    Type: Grant
    Filed: April 19, 2011
    Date of Patent: November 13, 2012
    Assignee: EMC Corporation
    Inventors: R. Hugo Patterson, Kai Li, Ming Benjamin Zhu, Sazzala Venkata Reddy, Umesh Maheshwari, Edward K. Lee
  • Patent number: 8275955
    Abstract: A system and method are disclosed for providing efficient data storage. A plurality of data segments is received in a data stream. The system determines whether a data segment has been stored previously in a low latency memory. In the event that the data segment is determined to have been stored previously, an identifier for the previously stored data segment is returned.
    Type: Grant
    Filed: June 21, 2010
    Date of Patent: September 25, 2012
    Assignee: EMC Corporation
    Inventors: Ming Benjamin Zhu, R. Hugo Patterson, Kai Li
  • Publication number: 20120226961
    Abstract: A method of storing data is disclosed. A set of data blocks, including a plurality of proper subsets of data blocks, is stored. A plurality of first-level parity blocks is generated, wherein each first-level parity block is generated from a corresponding proper subset of data blocks within the plurality of proper subsets of data blocks without reference to other data blocks not in the corresponding proper subset. A second-level parity block is generated, wherein the second level parity block is generated from a plurality of data blocks included in at least two of the plurality of proper subsets of data blocks, and wherein recovery of a lost block in a given proper subset of data blocks is possible without reference to any data blocks not in the given proper subset.
    Type: Application
    Filed: March 4, 2012
    Publication date: September 6, 2012
    Applicant: EMC CORPORATION
    Inventors: Christopher R. Lumb, R. Hugo Patterson
  • Publication number: 20120209820
    Abstract: A method of identifying nonreferenced memory elements in a storage system is disclosed. A plurality of lists of referenced elements from a plurality of storage subsystems is input. A union of the lists of referenced elements is compiled. The union of the lists of referenced memory elements is compared to a list of previously referenced memory elements to determine previously referenced elements that are no longer referenced. The previously referenced elements that are no longer referenced is output.
    Type: Application
    Filed: February 9, 2012
    Publication date: August 16, 2012
    Applicant: EMC CORPORATION
    Inventor: R. Hugo Patterson
  • Patent number: 8234413
    Abstract: Selecting a segment boundary within block b is disclosed. A first anchor location j|j+1 is identified wherein a value of f(b[j?A+1 . . . j+B]) satisfies a constraint and wherein A and B are non-negative integers. A segment boundary location k|k+1 is determined wherein k is greater than minimum distance from j.
    Type: Grant
    Filed: June 2, 2011
    Date of Patent: July 31, 2012
    Assignee: EMC Corporation
    Inventors: Kai Li, Umesh Maheshwari, R. Hugo Patterson
  • Patent number: 8195614
    Abstract: A method and apparatus for different embodiments of incremental garbage collection of data in a secondary storage. In one embodiment, a method comprises locating blocks of data in a log that are referenced and within a range at a tail of the log. The method also includes copying the blocks of data that are referenced and within the range to an unallocated segment of the log.
    Type: Grant
    Filed: August 23, 2011
    Date of Patent: June 5, 2012
    Assignee: EMC Corporation
    Inventor: R. Hugo Patterson
  • Patent number: 8166012
    Abstract: Cluster storage is disclosed. A data stream or a data block is received. The data stream or the data block is broken into segments. For each segment, a cluster node is selected, and a portion of the segment smaller than the segment is identified that is a duplicate of a portion of a segment already managed by the cluster node.
    Type: Grant
    Filed: April 9, 2008
    Date of Patent: April 24, 2012
    Assignee: EMC Corporation
    Inventors: Sazzala Venkata Reddy, Umesh Maheshwari, Edward K. Lee, R. Hugo Patterson
  • Patent number: 8156405
    Abstract: A method of storing data is disclosed. A set of data blocks, including a plurality of proper subsets of data blocks, is stored. A plurality of first-level parity blocks is generated, wherein each first-level parity block is generated from a corresponding proper subset of data blocks within the plurality of proper subsets of data blocks without reference to other data blocks not in the corresponding proper subset. A second-level parity block is generated, wherein the second level parity block is generated from a plurality of data blocks included in at least two of the plurality of proper subsets of data blocks, and wherein recovery of a lost block in a given proper subset of data blocks is possible without reference to any data blocks not in the given proper subset.
    Type: Grant
    Filed: January 29, 2008
    Date of Patent: April 10, 2012
    Assignee: EMC Corporation
    Inventors: Christopher R. Lumb, R. Hugo Patterson
  • Publication number: 20120084333
    Abstract: Transmitting filesystem changes over a network is disclosed. A hash of data comprising a chunk of directory elements comprising one or more consecutive directory elements in a set of elements sorted in a canonical order is computed at a client system. One or more directory elements comprising the chunk are sent to a remote server in the event it is determined based at least in part on the computed hash that corresponding directory elements as stored on the remote server are not identical to the directory elements comprising the chunk as stored on the client system.
    Type: Application
    Filed: September 30, 2010
    Publication date: April 5, 2012
    Applicant: EMC CORPORATION
    Inventors: Mark Huang, Curtis Anderson, R. Hugo Patterson
  • Patent number: 8140599
    Abstract: A method of identifying nonreferenced memory elements in a storage system is disclosed. A plurality of lists of referenced elements from a plurality of storage subsystems is input. A union of the lists of referenced elements is compiled. The union of the lists of referenced memory elements is compared to a list of previously referenced memory elements to determine previously referenced elements that are no longer referenced. The previously referenced elements that are no longer referenced is output.
    Type: Grant
    Filed: December 1, 2008
    Date of Patent: March 20, 2012
    Assignee: EMC Corporation
    Inventor: R. Hugo Patterson
  • Patent number: 8126852
    Abstract: A method of determining whether a data segment is a duplicate using cooperating deduplicators is disclosed. The data segment is received. A first deduplicator is operated to to determine whether the incoming data segment is a duplicate based on first information available to the first deduplicator regarding stored data segments that are stored in a memory. A second deduplicator is selectively operated to determine whether the incoming data segment is a duplicate based on second information available to the second deduplicator; wherein the selective operation of the second deduplicator depends on the determination made by the first deduplicator.
    Type: Grant
    Filed: December 1, 2008
    Date of Patent: February 28, 2012
    Assignee: EMC Corporation
    Inventor: R. Hugo Patterson
  • Publication number: 20120041957
    Abstract: Techniques for efficiently indexing and searching similar data are described herein. According to one embodiment, in response to a query for one or more terms received from a client, a query index is accessed to retrieve a list of one or more super files. Each super file is associated with a group of similar files. Each super file includes terms and/or sequences of terms obtained from the associated group of similar files. Thereafter, the super files representing groups of similar files are presented to the client, where each of the super files includes at least one of the queried terms. Other methods and apparatuses are also described.
    Type: Application
    Filed: October 24, 2011
    Publication date: February 16, 2012
    Inventors: Windsor W. Hsu, R. Hugo Patterson
  • Patent number: 8099401
    Abstract: Techniques for efficiently indexing and searching similar data are described herein. According to one embodiment, in response to a query for one or more terms received from a client, a query index is accessed to retrieve a list of one or more super files. Each super file is associated with a group of similar files. Each super file includes terms and/or sequences of terms obtained from the associated group of similar files. Thereafter, the super files representing groups of similar files are presented to the client, where each of the super files includes at least one of the queried terms. Other methods and apparatuses are also described.
    Type: Grant
    Filed: July 18, 2007
    Date of Patent: January 17, 2012
    Assignee: EMC Corporation
    Inventors: Windsor W. Hsu, R. Hugo Patterson