Patents by Inventor Hugo Patterson

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: 8677052
    Abstract: A system for storing data comprises a performance storage system for storing one or more data items. A data item of the one or more data items comprises a data file or a data block. The system further comprises a segment storage system for storing a snapshot of a stored data item of the one or more data items in the performance storage system. The taking of the snapshot of the stored data item enables recall of the stored data item as stored at the time of the snapshot. At least one newly written segment is stored as a reference to a previously stored segment.
    Type: Grant
    Filed: September 21, 2010
    Date of Patent: March 18, 2014
    Assignee: EMC Corporation
    Inventor: R. Hugo Patterson
  • Publication number: 20140040192
    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: Application
    Filed: July 31, 2013
    Publication date: February 6, 2014
    Inventor: R. Hugo Patterson
  • Patent number: 8635184
    Abstract: A system for storing files comprises a processor and a memory. The processor is configured to break a file into one or more segments; store the one or more segments in a first storage unit; and add metadata to the first storage unit so that the file can be accessed independent of a second storage unit, wherein a single namespace enables access for files stored in the first storage unit and the second storage unit. The memory is coupled to the processor and configured to provide the processor with instructions.
    Type: Grant
    Filed: June 25, 2009
    Date of Patent: January 21, 2014
    Assignee: EMC Corporation
    Inventors: Windsor W. Hsu, R. Hugo Patterson
  • 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