IP Library Granted Patent US 9,325,791
Granted Patent B1
US 9,325,791 · App. 13/965,085 · Granted Apr 26, 2016

Cloud storage brokering service

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,325,791
App. No.
13/965,085
Granted
Apr 26, 2016
Kind
B1
Abstract

Systems and methods for brokering storage services are disclosed. In one embodiment, the brokering system is configured to receive, from a client device, a request indicating a desired configuration for storing target data in at least one of the plurality of cloud storage services. The system can determine a first selection comprising at least one storage service from the plurality of cloud storage services based on the request, provision storage in the plurality of cloud storage services based on the determined first selection and provide, to the client device, a temporary manifest indicating the provisioned storage, wherein the temporary manifest comprises access data that enables the client device to access the provisioned storage in the cloud storage services. The system can then store the temporary manifest and determine whether the client device completed storing the target data on the provisioned storage based on a presence of the temporary manifest.

Claims (36)

1. A system for brokering a plurality of cloud storage services, the system comprising:

memory that stores one or more storage manifests comprising access data for enabling client devices to access provisioned storage in the plurality of cloud storage services; and

one or more processors configured to:

receive, from a client device, a request indicating a desired configuration for storing target data in at least one of the plurality of cloud storage services;

determine a first selection comprising at least one storage service from the plurality of cloud storage services based on the request;

provision storage in the plurality of cloud storage services based on the determined first selection;

provide, to the client device, a temporary storage manifest indicating the provisioned storage, wherein the temporary storage manifest comprises access data enabling the client device to access the provisioned storage in the cloud storage services;

store the temporary storage manifest;

determine whether the client device completed storing the target data on the provisioned storage based on a presence of the temporary storage manifest; and

in response to determining that the client device completed storing the target data, replace the temporary storage manifest with a permanent storage manifest; and

in response to determining that the client device failed to complete storing the target data, deprovision the provisioned storage and deleting the temporary storage manifest.

2. The system of claim 1 , the one or more processors further configured to provide, to the client device, a set of pre-determined selections of storage services.

3. The system of claim 1 , wherein determining the selection of at least one storage service comprises selecting at least one storage service based at least partly on a financial cost, an amount of storage requested by the client device, or a service level agreement offered by the storage service.

4. The system of claim 1 , wherein determining the selection of at least one storage service comprises selecting at least one storage service based at least partly on data indicating an availability of the storage service or data indicating a performance of the storage service.

5. The system of claim 1 , wherein determining the selection of at least one storage service comprises updating, on a periodic basis, the selection of at least one storage service.

6. The system of claim 1 , the one or more processors further configured to auto-initiate migration of the target data from a first storage service to a newly selected second storage service.

7. The system of claim 6 , the one or more processors further configured auto-initiate updating of a permanent manifest associated with the target data to reflect the migration of the target data to the second storage service.

8. The system of claim 7 , wherein determining the selection of at least one storage service comprises updating, upon a request from the client device, the selection of at least one storage service.

9. The system of claim 8 , wherein determining the selection of at least one storage service comprises updating, in response to a change by the storage service, the selection of at least one storage service.

10. A method of brokering a plurality of cloud storage services, the method comprising:

receiving, from a client device, a request indicating a desired configuration for storing target data in at least one of the plurality of cloud storage services;

determining, by a brokering server, a first selection comprising at least one storage service from the plurality of cloud storage services based on the request;

provisioning, by a brokering server, storage in the plurality of cloud storage services based on the determined first selection;

providing, to the client device, a temporary storage manifest indicating the provisioned storage, wherein the temporary storage manifest comprises access data enabling the client device to access the provisioned storage in the cloud storage services;

storing, by the brokering server, the temporary storage manifest;

determining whether the client device completed storing the target data on the provisioned storage based on a presence of the temporary storage manifest; and

in response to determining that the client device completed storing the target data, replacing the temporary storage manifest with a permanent storage manifest; and

in response to determining that the client device failed to complete storing the target data, deprovisioning the provisioned storage and deleting the temporary storage manifest.

11. The method of claim 10 , further comprising providing, to the client device, a set of pre-determined selections of storage services.

12. The method of claim 10 , wherein determining the selection of at least one storage service comprises selecting at least one storage service based at least partly on a financial cost, an amount of storage requested by the client device, or a service level agreement offered by the storage service.

13. The method of claim 10 , wherein determining the selection of at least one storage service comprises selecting at least one storage service based at least partly on data indicating an availability of the storage service or data indicating a performance of the storage service.

14. The method of claim 10 , wherein determining the selection of at least one storage service comprises updating, on a periodic basis, the selection of at least one storage service.

15. The method of claim 14 further comprising auto-initiating migration of the target data from a first storage service to a second storage service newly selected during the updating.

16. The method of claim 15 , further comprising auto-initiating updating of a permanent manifest associated with the target data to reflect the migration of the target data to the second storage service.

17. The method of claim 10 , wherein determining the selection of at least one storage service comprises updating, upon a request from the client device, the selection of at least one storage service.

18. The method of claim 10 , wherein determining the selection of at least one storage service comprises updating, in response to a change by the storage service, the selection of at least one storage service.

Assignments (8)
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2014
From: BLAHAERATH, GRANT C.; HOOPER, GARY J.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 032038/0594 →