IP Library Granted Patent US 12,192,306
Granted Patent B2
US 12,192,306 · App. 17/350,203 · Granted Jan 7, 2025

Method to provide SLA based access to cloud data in backup servers with multi cloud storage

Inventors: Kalyan C. Gunda (Bangalore, IN); Jagannathdas Rath (Bangalore, IN); Santi Gopal Mondal (Bangalore, IN); Arun Vishnu Pk (Bangalore, IN); Veera Venkata Prasad Jagarlamudi (Bangalore, IN)
Assignee: EMC IP HOLDING COMPANY LLC
H04L67/61H04L41/5096H04L63/102H04L67/1023H04L67/1097H04L67/53
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 12,192,306
App. No.
17/350,203
Granted
Jan 7, 2025
Kind
B2
Abstract

The disclosure provides a system, computer readable medium, and computer-implemented method for managing data access. The method includes obtaining a data access request from a requestor for client data redundantly stored in at least two storage providers that are unknown to the requestor; identifying a service level objective for servicing the data access request; ranking the at least two storage providers based on the service level objective to identify one of the at least two storage providers to service the data access request; and providing the requestor with access to a copy of the client data using the one of the at least two storage providers.

Claims (68)

1. A computer-implemented method for managing data access, the method comprising:

receiving a data access request from a requestor for client data, wherein the client data was previously redundantly stored in a plurality of storage providers that are unknown to the requestor;

responsive to receiving the data access request:

identifying a service level objective for servicing the data access request, wherein the service level objective specifies a controlling metric and a non-controlling metric, the controlling metric comprising a minimum bandwidth to be met by a storage provider;

determining an operational performance of each of the plurality of storage providers that currently store the client data;

identifying a portion of the plurality of storage providers that meet the controlling metric based on their corresponding operational performance;

ranking, based on the non-controlling metric, only the portion of the plurality of storage providers that currently store the client data, wherein the non-controlling metric is at least based on a cost to access the client data;

identifying a first storage provider from the portion of the plurality of storage providers based on the ranking;

copying a first portion of data blocks corresponding to the client data from the first storage provider;

subsequent to copying the first portion of data blocks corresponding to the client data from the first storage provider, and prior to copying a second portion of data blocks corresponding to the client data, determining that the first storage provider has become inaccessible;

in response to the first storage provider becoming inaccessible, using the ranking of the portion of the plurality of storage providers to identify a second storage provider;

copying the second portion of data blocks corresponding to the client data from the second storage provider; and

reconstructing the client data using the first portion of data blocks and the second portion of data blocks to produce reconstructed client data; and

providing, to the requestor, access to the reconstructed client data.

2. The computer-implemented method of claim 1 , wherein the data access request is a read request.

3. The computer-implemented method of claim 1 , wherein the controlling metric specifies a minimum characteristic for accessing the client data that must be met to meet the service level objective.

4. The computer-implemented method of claim 3 , wherein the non-controlling metric specifies a characteristic for accessing the client data that impacts a quality of the data access provided to the requestor and for which each of the portion of the plurality of storage providers are relatively ranked with respect to each other.

5. The computer-implemented method of claim 1 , wherein ranking the portion of the plurality of storage providers comprises:

generating an objective function based on metrics specified by the service level objective; and

ordering the portion of the plurality of storage providers based on the objective function,

wherein the data access request is a read request.

6. The computer-implemented method of claim 5 , wherein the metrics comprise at least one of a maximum access latency for the client data, a maximum duration of time for accessing the client data, a maximum cost for accessing the client data, a relative performance ranking of the portion of the plurality of storage providers, and a relative archival performance ranking of the portion of the plurality of storage providers, and a relative cost ranking for the portion of the plurality of storage providers.

7. A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations for managing data access, the operations comprising:

receiving a data access request from a requestor for client data, wherein the client data was previously redundantly stored in a plurality of storage providers that are unknown to the requestor;

responsive to receiving the data access request:

identifying a service level objective for servicing the data access request, wherein the service level objective specifies a controlling metric and a non-controlling metric, the controlling metric comprising a minimum bandwidth to be met by a storage provider;

determining an operational performance of each of the plurality of storage providers that currently store the client data;

identifying a portion of the plurality of storage providers that meet the controlling metric based on their corresponding operational performance;

ranking, based on the non-controlling metric, only the portion of the plurality of storage providers that currently store the client data, wherein the non-controlling metric is at least based on a cost to access the client data;

identifying a first storage provider from the portion of the plurality of storage providers based on the ranking;

copying a first portion of data blocks corresponding to the client data from the first storage provider;

subsequent to copying the first portion of data blocks corresponding to the client data from the first storage provider, and prior to copying a second portion of data blocks corresponding to the client data, determining that the first storage provider has become inaccessible;

in response to the first storage provider becoming inaccessible, using the ranking of the portion of the plurality of storage providers to identify a second storage provider;

copying the second portion of data blocks corresponding to the client data from the second storage provider; and

reconstructing the client data using the first portion of data blocks and the second portion of data blocks to produce reconstructed client data; and

providing, to the requestor, access to the reconstructed client data.

8. The non-transitory machine-readable medium of claim 7 , wherein the data access request is a read request.

9. The non-transitory machine-readable medium of claim 7 , wherein the controlling metric specifies a minimum characteristic for accessing the client data that must be met to meet the service level objective.

10. The non-transitory machine-readable medium of claim 9 , wherein the non-controlling metric specifies a characteristic for accessing the client data that impacts a quality of the data access provided to the requestor and for which each of the portion of the plurality of storage providers are relatively ranked with respect to each other.

11. The non-transitory machine-readable medium of claim 7 , wherein ranking the portion of the plurality of storage providers comprises:

generating an objective function based on metrics specified by the service level objective; and

ordering the portion of the plurality of storage providers based on the objective function,

wherein the data access request is a read request.

12. The non-transitory machine-readable medium of claim 11 , wherein the metrics comprise at least one of a maximum access latency for the client data, a maximum duration of time for accessing the client data, a maximum cost for accessing the client data, a relative performance ranking of the portion of the plurality of storage providers, and a relative archival performance ranking of the portion of the plurality of storage providers, and a relative cost ranking for the portion of the plurality of storage providers.

13. A data processing system for managing data access, comprising:

a processor; and

a memory coupled to the processor to store instructions, which when executed by the processor, cause the processor to perform operations, the operations comprising:

receiving a data access request from a requestor for client data, wherein the client data was previously redundantly stored in a plurality of storage providers that are unknown to the requestor;

responsive to receiving the data access request:

identifying a service level objective for servicing the data access request, wherein the service level objective specifies a controlling metric and a non-controlling metric, the controlling metric comprising a minimum bandwidth to be met by a storage provider;

determining an operational performance of each of the plurality of storage providers that currently store the client data;

identifying a portion of the plurality of storage providers that meet the controlling metric based on their corresponding operational performance;

ranking, based on the non-controlling metric, only the portion of the plurality of storage providers that currently store the client data, wherein the non-controlling metric is at least based on a cost to access the client data;

identifying a first storage provider from the portion of the plurality of storage providers based on the ranking;

copying a first portion of data blocks corresponding to the client data from the first storage provider;

subsequent to copying the first portion of data blocks corresponding to the client data from the first storage provider, and prior to copying a second portion of data blocks corresponding to the client data, determining that the first storage provider has become inaccessible;

in response to the first storage provider becoming inaccessible, using the ranking of the portion of the plurality of storage providers to identify a second storage provider;

copying the second portion of data blocks corresponding to the client data from the second storage provider; and

reconstructing the client data using the first portion of data blocks and the second portion of data blocks to produce reconstructed client data; and

providing, to the requestor, access to the reconstructed client data.

14. The data processing system of claim 13 , wherein the data access request is a read request.

15. The data processing system of claim 13 , wherein the controlling metric specifies a minimum characteristic for accessing the client data that must be met to meet the service level objective.

16. The data processing system of claim 15 , wherein the non-controlling metric specifies a characteristic for accessing the client data that impacts a quality of the data access provided to the requestor and for which each of the portion of the plurality of storage providers are relatively ranked with respect to each other.

17. The data processing system of claim 13 , wherein ranking the portion of the plurality of storage providers comprises:

generating an objective function based on metrics specified by the service level objective; and

ordering the portion of the plurality of storage providers based on the objective function,

wherein the data access request is a read request.

18. The data processing system of claim 17 , wherein the metrics comprise at least one of a maximum access latency for the client data, a maximum duration of time for accessing the client data, a maximum cost for accessing the client data, a relative performance ranking of the portion of the plurality of storage providers, and a relative archival performance ranking of the portion of the plurality of storage providers, and a relative cost ranking for the portion of the plurality of storage providers.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2021
From: GUNDA, KALYAN C.; RATH, JAGANNATHDAS; MONDAL, SANTI GOPAL; PK, ARUN VISHNU; JAGARLAMUDI, VEERA VENKATA PRASAD
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056573/0519 →
Continuity (1)
Related Publication 20220407931A1 · Dec 22, 2022
References Cited (11)
US 10042918B2 · Kleinschnitz, Jr. · 2018 [cited by examiner]
US 10296383B2 · Singh · 2019 [cited by examiner]
US 11068162B1 · Meister · 2021 [cited by examiner]
US 20020049778A1 · Bell · 2002 [cited by examiner]
US 20020103969A1 · Koizumi · 2002 [cited by examiner]
US 20030009444A1 · Eidler · 2003 [cited by examiner]
US 20030055971A1 · Menon · 2003 [cited by examiner]
US 20110213712A1 · Hadar · 2011 [cited by examiner]
US 20130159637A1 · Forgette · 2013 [cited by examiner]
US 20150331465A1 · Slik · 2015 [cited by examiner]
US 20150331774A1 · Slik · 2015 [cited by examiner]