IP Library Granted Patent US 11,675,520
Granted Patent B2
US 11,675,520 · App. 17/157,006 · Granted Jun 13, 2023

Application replication among storage systems synchronously replicating a dataset

Inventor: Ronald Karr (Palo Alto, CA)
Assignee: PURE STORAGE, INC.
G06F3/065G06F3/067G06F3/0617G06F16/275
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,675,520
App. No.
17/157,006
Filed
Jan 25, 2021
Granted
Jun 13, 2023
Kind
B2
Art Unit
2137
USPC
711/154
Abstract

In a particular embodiment, a dataset that is synchronously replicated across a plurality of storage systems is stored on a particular storage system. The storage system identifies input/output (I/O) requests directed to the dataset. The one or more I/O requests are initiated by an application hosted on a platform of the first storage system. The storage system services the one or more I/O requests directed to the dataset.

Claims (37)

1. A method comprising:

storing, on a first storage system, a dataset that is synchronously replicated across a plurality of storage systems;

identifying, by the first storage system, one or more input/output (I/O) requests directed to the dataset, wherein the one or more I/O requests are initiated by an application hosted on a platform of the first storage system; and

servicing, by the first storage system, the one or more I/O requests directed to the dataset.

2. The method of claim 1 , wherein the application is hosted on the platform; and wherein the platform is implemented in a storage controller of the first storage system.

3. The method of claim 1 further comprising:

deploying, on the platform, a container, wherein the application executes within the container.

4. The method of claim 3 , wherein the container is deployed by an operating system level virtualization service of the first storage system.

5. The method of claim 1 , wherein the application hosted on the platform of the first storage system and the second instance of the application coupled with the platform of the second storage system are communicatively linked.

6. The method of claim 1 further comprising migrating the application from the first storage system to a platform of a second storage system among the plurality of storage systems synchronously replicating the dataset.

7. An apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

storing, on a first storage system, a dataset that is synchronously replicated across a plurality of storage systems;

identifying, by the first storage system, one or more input/output (I/O) requests directed to the dataset, wherein the one or more I/O requests are initiated by an application hosted on a platform of the first storage system; and

servicing, by the first storage system, the one or more I/O requests directed to the dataset.

8. The apparatus of claim 7 , wherein the application is hosted on the platform; and wherein the platform is implemented in a storage controller of the first storage system.

9. The apparatus of claim 7 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of deploying, on the platform, a container, wherein the application executes with in the container.

10. The apparatus of claim 9 , wherein the container is deployed by an operating system level virtualization service of the first storage system.

11. The apparatus of claim 7 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

identifying, by a second storage system among the plurality of storage systems synchronously replicating the dataset, one or more I/O requests directed to the dataset, wherein the one or more I/O requests are initiated by a second instance of the application coupled with a platform of the second storage system; and

servicing, by the second storage system, the one or more I/O requests directed to the dataset.

12. The apparatus of claim 11 , wherein the application coupled with the platform of the first storage system and the second instance of the application coupled with the platform of the second storage system are communicatively linked.

13. The apparatus of claim 7 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of migrating the application from the first storage system to a platform of a second storage system among the plurality of storage systems synchronously replicating the dataset.

14. A non-transitory computer readable medium comprising computer program instructions that, when executed, cause a computer to carry out the steps of:

storing, on a first storage system, a dataset that is synchronously replicated across a plurality of storage systems;

identifying, by the first storage system, one or more input/output (I/O) requests directed to the dataset, wherein the one or more I/O requests are initiated by an application hosted on a platform of the first storage system; and

servicing, by the first storage system, the one or more I/O requests directed to the dataset.

15. The non-transitory computer readable medium of claim 14 , wherein the application is hosted on the platform; and wherein the platform is implemented in a storage controller of the first storage system.

16. The non-transitory computer readable medium of claim 14 further comprising computer program instructions that, when executed by the computer, cause the computer to carry out the step of deploying, on the platform, a container, wherein the application executes within the container.

17. The non-transitory computer readable medium of claim 16 , wherein the container is deployed by an operating system level virtualization service of the first storage system.

18. The non-transitory computer readable medium of claim 14 further comprising computer program instructions that, when executed by the computer, cause the computer to carry out the steps of:

identifying, by a second storage system among the plurality of storage systems synchronously replicating the dataset, one or more I/O requests directed to the dataset, wherein the one or more I/O requests are initiated by a second instance of the application coupled with a platform of the second storage system; and

servicing, by the second storage system, the one or more I/O requests directed to the dataset.

19. The non-transitory computer readable medium of claim 14 further comprising computer program instructions that, when executed by the computer, cause the computer to carry out the steps of migrating the application from the first storage system to a platform of a second storage system among the plurality of storage systems synchronously replicating the dataset.

20. An apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

storing, on a first storage system, a dataset that is synchronously replicated across a plurality of storage systems;

identifying, by a second storage system among the plurality of storage systems synchronously replicating the dataset, one or more input/output (I/O) requests directed to the dataset, wherein the one or more I/O requests are initiated by an application hosted on a platform of the second storage system; and

servicing, by the second storage system, the one or more I/O requests directed to the dataset.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2021
From: KARR, RONALD
To: PURE STORAGE, INC.
Reel/Frame 055018/0498 →
Continuity (7)
Continuation In Part 16661724 · Oct 23, 2019
Continuation 15842850 · Dec 14, 2017
Provisional Application 62598989 · Dec 14, 2017
Provisional Application 62518071 · Jun 12, 2017
Provisional Application 62502060 · May 5, 2017
Provisional Application 62470172 · Mar 10, 2017
Related Publication 20220019350A1 · Jan 20, 2022
Cited By (2)
US 12,561,247 US 12,681,774