Adaptive data striping and replication across multiple storage clouds for high availability and performance

US2016259802A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016259802-A1
Application numberUS-201615157043-A
CountryUS
Kind codeA1
Filing dateMay 17, 2016
Priority dateDec 14, 2012
Publication dateSep 8, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Technologies for adaptively striping data across multiple storage clouds include receiving user constraints corresponding one or more cloud storage providers, receiving a file to be striped across the cloud storage providers, splitting the received file into file blocks, allocating each of the file blocks to a different one of the cloud storage providers as a function of the user constraints and operating conditions of each of the cloud storage providers, and sending each of the file blocks to the cloud storage provider to which each file block is allocated. In some embodiments, file blocks may be re-allocated from one cloud storage provider to another cloud storage provider as a function of changing user constraints or operating conditions. In addition, each of the file blocks may be retrieved from the cloud storage providers to re-assemble the file.

First claim

Opening claim text (preview).

1 . A computing device for re-assembling a file from a plurality of file blocks striped across a plurality of storage clouds, the computing device comprising: a block location determination module to (i) determine that a first cloud storage provider of a plurality of cloud storage providers is storing a first file block of a particular file to be re-assembled, and (ii) determine that a second cloud storage provider of a plurality of cloud storage providers is storing a second file block of the particular file to be re-assembled; a file re-assembly module to (i) request the first file block from the first cloud storage provider, and (ii) request the second file block from the second cloud storage provider; and a communication module to (i) receive the first file block from the first cloud storage provider, and (ii) receive the second file block from the second cloud storage provider, wherein the file re-assembly module is further to re-assemble the particular file to be re-assembled from the received first and second file blocks. 2 . The computing device of claim 1 , wherein the file re-assembly module further to determine whether the second file block of the particular file to be re-assembled exists. 3 . The computing device of claim 1 , wherein the block location determination module further to: determine whether location metadata corresponding to the first file block is stored in a local metadata storage of the computing device; and determine whether location metadata corresponding to the second file block is stored in the local metadata storage of the computing device. 4 . The computing device of claim 3 , wherein the block location determination module further to: request the location metadata corresponding to the first file block from a cloud resource allocation server in response to determining that the location metadata corresponding to the first file block is not stored in the local metadata storage of the computing device; and request the location metadata corresponding to the second file block from the cloud resource allocation server in response to determining that the location metadata corresponding to the second file block is not stored in the local metadata storage of the computing device. 5 . The computing device of claim 4 , wherein the block location determination module further to: request the location metadata corresponding to the first file block from a second cloud resource allocation server to which the location metadata has been replicated; and request the location metadata corresponding to the second file block from the second cloud resource allocation server to which the location metadata has been replicated. 6 . The computing device of claim 4 , wherein to determine that a first cloud storage provider of a plurality of cloud storage providers is storing a first file block of a particular file to be re-assembled comprises to determine that a first cloud storage provider of a plurality of cloud storage providers is storing a first file block of a particular file to be re-assembled as a function of the location metadata corresponding to the first file block, and wherein to determine that a second cloud storage provider of a plurality of cloud storage providers is storing the second file block comprises to determine that a second cloud storage provider of a plurality of cloud storage providers is storing the second file block as a function of the location metadata corresponding to the second file block. 7 . The computing device of claim 3 , wherein the block location determination module further to: determine, in response to determining that the location metadata corresponding to the first file block is stored in the local metadata storage, whether the location metadata corresponding to the first file block stored in the local metadata storage is outdated; and request, in response to determining that the location metadata corresponding to the first file block stored in the local metadata storage is outdated, the location metadata corresponding to the first file block from a cloud resource allocation server. 8 . The computing device of claim 1 , wherein the file reassembly module further to determine whether re-assembly metadata corresponding to the particular file to be re-assembled is stored in the local metadata storage of the computing device. 9 . The computing device of claim 8 , wherein the file reassembly module further to request the re-assembly metadata corresponding to the particular file to be re-assembled from a cloud resource allocation server in response to determining that the re-assembly metadata corresponding to the particular file to be re-assembled is not stored in the local metadata storage of the computing device, wherein to re-assemble the particular file to be re-assembled from the received first and second file blocks comprises to re-assemble the particular file to be re-assembled from the received first and second file blocks as a function of the re-assembly metadata. 10 . A method for re-assembling a file from a plurality of file blocks striped across a plurality of storage clouds by a computing device, the method comprising: determining, by the computing device, that a first cloud storage provider of a plurality of cloud storage providers is storing a first file block of a particular file to be re-assembled; determining, by the computing device, that a second cloud storage provider of a plurality of cloud storage providers is storing a second file block of the particular file to be re-assembled; requesting, by the computing device, the first file block from the first cloud storage provider; requesting, by the computing device, the second file block from the second cloud storage provider; receiving, by the computing device, the first file block from the first cloud storage provider; receiving, by the computing device, the second file block from the second cloud storage provider; and re-assembling, by the computing device, the particular file to be re-assembled from the received first and second file blocks. 11 . The method of claim 10 , further comprising: determining, by the computing device, whether location metadata corresponding to the first file block is stored in a local metadata storage of the computing device; and determining, by the computing device, whether location metadata corresponding to the second file block is stored in the local metadata storage of the computing device. 12 . The method of claim 11 , further comprising: requesting, by the computing device, the location metadata corresponding to the first file block from a cloud resource allocation server in response to determining that the location metadata corresponding to the first file block is not stored in the local metadata storage of the computing device; and requesting, by the computing device, the location metadata corresponding to the second file block from the cloud resource allocation server in response to determining that the location metadata corresponding to the second file block is not stored in the local metadata storage of the computing device. 13 . The method of claim 12 , further comprising: requesting, by the computing device, the location metadata corresponding to the first file block from a second cloud resource allocation server to which the location metadata has been replicated; and requesting, by the computing device, the location metadata corresponding to the second file block from the second cloud resource allocation server to which the location metadata has been replicated. 14 . The method of claim 12 , wherein determining that a first cloud storage pr

Assignees

Inventors

Classifications

  • in relation to response time · CPC title

  • Physics · mapped topic

  • Management of files · CPC title

  • Format or protocol conversion arrangements · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016259802A1 cover?
Technologies for adaptively striping data across multiple storage clouds include receiving user constraints corresponding one or more cloud storage providers, receiving a file to be striped across the cloud storage providers, splitting the received file into file blocks, allocating each of the file blocks to a different one of the cloud storage providers as a function of the user constraints an…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F17/30117. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Sep 08 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).