×

Parallel upload and download of large files using bittorrent

  • US 9,374,395 B2
  • Filed: 01/05/2012
  • Issued: 06/21/2016
  • Est. Priority Date: 03/08/2011
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method for storing large object data, comprising:

  • receiving a request to upload an object from a user device to network-accessible storage over a network;

    determining the object includes an object size exceeding a predetermined size;

    dividing the object into a plurality of object segments, wherein each object segment includes a segment size below the predetermined size, wherein the segment size for a respective object segment is equal to or less than a size of a cache of an object storage entity receiving the respective object segment, and wherein each object segment has a file name, the file name including a timestamp identifying a creation time of the respective object segment and a size of the respective object segment;

    generating a manifest file related to the object, wherein the manifest file allows the plurality of object segments to be retrieved from the network-accessible storage and provided as the object, and wherein the manifest file comprises data verification information for the object and file name information for each object segment;

    providing the manifest file to a plurality of object storage entities, wherein a total number of object storage entities in the plurality of object storage entities is equal to a total number of object segments;

    uploading the plurality of object segments to the network-accessible storage over the network, wherein each of the plurality of object storage entities stores a different uploaded object segment in the plurality of object segments, wherein each respective uploaded object segment in the plurality of object segments is uploaded to a respective object storage entity in a first zone, wherein the each respective uploaded object segment in the first zone is subject to a correlated loss of access based on a single event; and

    replicating the each respective uploaded object segment in the first zone to a respective object storage entity in a second zone,wherein the first zone and the second zone for the each respective uploaded object segment is determined based on a hash operation performed on an identifier associated with the each respective uploaded object segment.

View all claims
  • 5 Assignments
Timeline View
Assignment View
    ×
    ×