IP Library Granted Patent US 11,194,745
Granted Patent B1
US 11,194,745 · App. 17/082,817 · Granted Dec 7, 2021

Replication enhancement method for write-intensive IoT applications

Inventors: Mohamed Abdullah Gommaa Sohail (Giza, EG); Said Tabet (Austin, TX)
Assignee: EMC IP HOLDING COMPANY LLC
G06F13/20G06F3/061G06F3/065G06F3/0655G06F3/0679G06F16/27G06F2213/0064
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,194,745
App. No.
17/082,817
Filed
Oct 28, 2020
Granted
Dec 7, 2021
Kind
B1
Art Unit
2184
USPC
710/52
Abstract

One example method includes receiving an IO request from an application, determining if an affinity policy applies to the application that transmitted the IO request, when an affinity policy applies to the application, directing the IO request to a specified site of a replication system, when no affinity policy applies to the application, determining if a lag in replication of the IO request from a primary site to a replication site is acceptable, if a lag in replication of the IO request is acceptable, processing the IO request using performance based parameters and/or load balancing parameters, and if a lag in replication of the IO request is not acceptable, either directing the IO request to a most up to date replica site, or requesting a clone copy of a volume to which the IO request was initially directed and directing the IO request to the cloned copy.

Claims (30)

1. A method, comprising:

receiving an input/output (IO) request from an application;

determining if an affinity policy applies to the application that transmitted the IO request; when an affinity policy applies to the application, directing the IO request to a specified site of a replication system;

when no affinity policy applies to the application, determining if a lag in replication of the IO request from a primary site to a replication site is acceptable;

if a lag in replication of the IO request is acceptable, processing the IO request using performance based parameters and/or load balancing parameters; and

if a lag in replication of the IO request is not acceptable, either directing the IO request to a most up to date replica site, or requesting a clone copy of a volume to which the IO request was initially directed and directing the IO request to the cloned copy.

2. The method as recited in claim 1 , wherein when processing the IO request using performance based parameters and/or load balancing parameters results in unacceptable performance of the IO request, requesting a clone copy of a volume to which the IO request was initially directed and directing the IO request to the cloned copy.

3. The method as recited in claim 1 , wherein the IO request is a write request.

4. The method as recited in claim 1 , wherein the IO request is a read request.

5. The method as recited in claim 1 , wherein a portion of the method is performed by a Cloud Enabled Service (CES) layer at a datacenter.

6. The method as recited in claim 1 , wherein a portion of the method is performed by a Cloud Enabled Service (CES) plugin at a user host.

7. The method as recited in claim 1 , wherein the IO request is received from a write-intensive application.

8. The method as recited in claim 7 , wherein the write-intensive application is hosted by an Internet of Things (IoT) device.

9. The method as recited in claim 1 , wherein processing the IO request using performance based parameters and/or load balancing parameters comprises determining a replication site to which the IO request will be sent, and the determining is based on any one or more of: a latency associated with the replication site; a bandwidth utilization associated with the replication site; a workload of the replication site relative to respective workloads of one or more other replication sites; and an IO throughput rate associated with the replication site.

10. The method as recited in claim 1 , wherein the IO request is a write request that is written to a primary data storage and management site, and then replicated from the primary data storage and management site to a replica site.

11. A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising: receiving an input/output (IO) request from an application;

determining if an affinity policy applies to the application that transmitted the IO request;

when an affinity policy applies to the application, directing the IO request to a specified site of a replication system;

when no affinity policy applies to the application, determining if a lag in replication of the IO request from a primary site to a replication site is acceptable;

if a lag in replication of the IO request is acceptable, processing the IO request using performance based parameters and/or load balancing parameters; and

if a lag in replication of the IO request is not acceptable, either directing the IO request to a most up to date replica site, or requesting a clone copy of a volume to which the IO request was initially directed and directing the IO request to the cloned copy.

12. The non-transitory storage medium as recited in claim 11 , wherein when processing the IO request using performance based parameters and/or load balancing parameters results in unacceptable performance of the IO request, requesting a clone copy of a volume to which the IO request was initially directed and directing the IO request to the cloned copy.

13. The non-transitory storage medium as recited in claim 11 , wherein the IO request is a write request.

14. The non-transitory storage medium as recited in claim 11 , wherein the IO request is a read request.

15. The non-transitory storage medium as recited in claim 11 , wherein one or more of the operations are performed by a Cloud Enabled Service (CES) layer at a datacenter.

16. The non-transitory storage medium as recited in claim 11 , wherein one or more of the operations are performed by a Cloud Enabled Service (CES) plugin at a user host.

17. The non-transitory storage medium as recited in claim 11 , wherein the IO request is received from a write-intensive application.

18. The non-transitory storage medium as recited in claim 17 , wherein the write-intensive application is hosted by an Internet of Things (IoT) device.

19. The non-transitory storage medium as recited in claim 11 , wherein processing the IO request using performance based parameters and/or load balancing parameters comprises determining a replication site to which the IO request will be sent, and the determining is based on any one or more of: a latency associated with the replication site; a bandwidth utilization associated with the replication site; a workload of the replication site relative to respective workloads of one or more other replication sites; and an IO throughput rate associated with the replication site.

20. The non-transitory storage medium as recited in claim 11 , wherein the IO request is a write request that is written to a primary data storage and management site, and then replicated from the primary data storage and management site to a replica site.

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 Oct 28, 2020
From: SOHAIL, MOHAMED ABDULLAH GOMMAA; TABET, SAID
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 054242/0319 →
Cited By (1)
US 12,717,689