×

Locality-sensitive data retrieval for redundancy coded data storage systems

  • US 10,311,020 B1
  • Filed: 06/17/2015
  • Issued: 06/04/2019
  • Est. Priority Date: 06/17/2015
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method, comprising:

  • storing a plurality of archives on a plurality of volumes by at least;

    generating a first set of shards representing the plurality of volumes, a minimum quorum quantity of the shards in the set being usable, by a first redundancy code, to generate original data of the archives, the set of shards including at least;

    identity shards that contain the original data of the plurality of archives; and

    encoded shards representing a redundancy coded form of the original data;

    generating a second set of shards for each set of the first set of shards, such that the second set of shards includes a respective shard of the first set of shards, and a second minimum quorum quantity of the second set of shards is usable, by a second redundancy code, to generate the respective shard of the first set of shards or any shard of the second set of shards;

    storing each shard of the first set of shards in a respective data storage facility of a plurality of data storage facilities associated with the one or more computer systems, such that the original data of each archive of the plurality of archives is stored, in one or more of the identity shards, in no more than one data storage facility of a plurality of data facilities; and

    storing each shard of the second set of shards, except for a respective shard also in the first set of shards, in one or more data storage devices associated with a respective data storage facility in which the respective shard of the first set of shards is stored; and

    in response to receiving a request for an archive of the plurality of archives, at least;

    determining the respective data storage facility of the plurality of data storage facilities on which the identity shard corresponding to the requested archive is stored;

    determining at least a first geographic location associated with the request;

    determining, based on at least a proximity between the first geographic location and a second geographic location associated with the respective data storage facility on which the identity shard is stored, whether the respective data storage facility has sufficient performance characteristics to service the request within a predetermined timeframe; and

    if the determined data storage facility has sufficient performance characteristics, retrieving the requested archive from the determined respective data storage facility using the identity shard.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×