IP Library Granted Patent US 11,288,005
Granted Patent B2
US 11,288,005 · App. 16/994,453 · Granted Mar 29, 2022

Method and system for generating compliance and sequence aware replication in a multiple data cluster system

Inventors: Dharmesh M. Patel (Round Rock, TX); Ravikanth Chaganti (Bangalore, IN)
Assignee: Dell Products L.P.
G06F3/065G06F3/067G06F3/0619G06F3/0653G06F3/0683G06F11/1435G06F11/1451G06F11/1464G06F11/1469
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 11,288,005
App. No.
16/994,453
Granted
Mar 29, 2022
Kind
B2
Abstract

This application includes a method that is performed store data. The method includes obtaining, by a compliance aware replicator (CAR), a replication request to replicate data; and in response to the replication request: obtaining data chunks, associated with the data, using sequence identifiers of sequencing metadata; replicating the data chunks to obtain replicated data chunks; identifying, using classification metadata associated with the data, a first data cluster of data clusters to store the replicated data chunks; and sending the replicated data chunks to the first data cluster.

Claims (82)

1. A method for storing data, the method comprising:

obtaining, by a compliance aware replicator (CAR), a replication request to replicate data; and

in response to the replication request:

obtaining data chunks, associated with the data, using sequence identifiers of sequencing metadata;

replicating the data chunks to obtain replicated data chunks;

identifying, using classification metadata associated with the data, a first data cluster of data clusters to store the replicated data chunks; and

sending the replicated data chunks to the first data cluster.

2. The method of claim 1 , further comprising:

prior to obtaining, by the CAR, the replication request:

obtaining, by a data processor, a request from a host, wherein the request specifies the data;

in response to the request:

processing the data to obtain the data chunks;

associating a classification identifier with the data chunks, wherein the classification metadata comprises the classification identifier;

generating and including sequence identifiers with the data chunks;

obtaining cluster bidding counters (CBCs) associated with the data clusters;

identifying a second data cluster of the data clusters to service the request based on the CBCs;

sending the request and the data chunks to the second data cluster.

3. The method of claim 2 , wherein processing the data may comprise performing one selected from a group consisting of:

erasure coding; and

deduplication.

4. The method of claim 2 , wherein a CBC of the CBCs specifies computational resources available in the second data cluster of the data cluster to service requests.

5. The method of claim 2 , further comprising:

prior to obtaining, by the data processor, the request from the host:

obtaining, by a classification engine, compliance information from the host;

generating the classification identifier based on the compliance information; wherein the classification metadata comprises the classification identifier.

6. The method of claim 5 , wherein the classification identifier specifies the first data cluster is permitted to store the replicated data chunks.

7. The method of claim 1 , wherein the sequence identifiers specify an order associated with the data chunks.

8. A system for storing data, comprising:

a processor;

a compliance aware replicator (CAR), which when executed by the processor performs a method, the method comprising:

obtaining, by the CAR, a replication request to replicate data; and

in response to the replication request:

obtaining data chunks, associated with the data, using sequence identifiers of sequencing metadata;

replicating the data chunks to obtain replicated data chunks;

identifying, using classification metadata associated with the data, a first data cluster of data clusters to store the replicated data chunks; and

sending the replicated data chunks to the first data cluster.

9. The system of claim 8 , wherein the method further comprises:

prior to obtaining, by the CAR, the replication request:

obtaining, by a data processor, a request from a host, wherein the request specifies the data;

in response to the request:

processing the data to obtain the data chunks;

associating a classification identifier with the data chunks, wherein the classification metadata comprises the classification identifier;

generating and including sequence identifiers with the data chunks;

obtaining cluster bidding counters (CBCs) associated with the data clusters;

identifying a second data cluster of the data clusters to service the request based on the CBCs;

sending the request and the data chunks to the second data cluster.

10. The system of claim 9 , wherein processing the data may comprise performing one selected from a group consisting of:

erasure coding; and

deduplication.

11. The system of claim 9 , wherein a CBC of the CBCs specifies computational resources available in the second data cluster of the data cluster to service requests.

12. The system of claim 9 , wherein the method further comprises:

prior to obtaining, by the data processor, the request from the host:

obtaining, by a classification engine, compliance information from the host;

generating the classification identifier based on the compliance information; wherein the classification metadata comprises the classification identifier.

13. The system of claim 12 , wherein the classification identifier specifies the first data cluster is permitted to store the replicated data chunks.

14. The system of claim 8 , wherein the sequence identifiers specify an order associated with the data chunks.

15. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for storing data, the method comprising:

obtaining, by a compliance aware replicator (CAR), a replication request to replicate data; and

in response to the replication request:

obtaining data chunks, associated with the data, using sequence identifiers of sequencing metadata;

replicating the data chunks to obtain replicated data chunks;

identifying, using classification metadata associated with the data, a first data cluster of data clusters to store the replicated data chunks; and

sending the replicated data chunks to the first data cluster.

16. The non-transitory computer readable medium of claim 15 , wherein the method further comprises:

prior to obtaining, by the CAR, the replication request:

obtaining, by a data processor, a request from a host, wherein the request specifies the data;

in response to the request:

processing the data to obtain the data chunks;

associating a classification identifier with the data chunks, wherein the classification metadata comprises the classification identifier;

generating and including sequence identifiers with the data chunks;

obtaining cluster bidding counters (CBCs) associated with the data clusters;

identifying a second data cluster of the data clusters to service the request based on the CBCs;

sending the request and the data chunks to the second data cluster.

17. The non-transitory computer readable medium of claim 16 , wherein processing the data may comprise performing one selected from a group consisting of:

erasure coding; and

deduplication.

18. The non-transitory computer readable medium of claim 16 , wherein a CBC of the CBCs specifies computational resources available in the second data cluster of the data cluster to service requests.

19. The non-transitory computer readable medium of claim 16 , wherein the method further comprises:

prior to obtaining, by the data processor, the request from the host:

obtaining, by a classification engine, compliance information from the host;

generating the classification identifier based on the compliance information; wherein the classification metadata comprises the classification identifier.

20. The non-transitory computer readable medium of claim 19 , wherein the classification identifier specifies the first data cluster is permitted to store the replicated data chunks.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2020
From: PATEL, DHARMESH M.; CHAGANTI, RAVIKANTH
To: DELL PRODUCTS L.P.
Reel/Frame 053580/0584 →
Continuity (1)
Related Publication 20220050595A1 · Feb 17, 2022