IP Library Granted Patent US 11,533,364
Granted Patent B1
US 11,533,364 · App. 17/153,934 · Granted Dec 20, 2022

Maintaining metadata associated with a replicated dataset

Inventors: Aswin Karumbunathan (San Francisco, CA); Joshua Freilich (San Francisco, CA); Naveen Neelakantam (Mountain View, CA); Ronald Karr (Palo Alto, CA)
Assignee: PURE STORAGE, INC.
H04L67/1095H04L61/457H04L61/4552H04L67/1097H04L49/356
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,533,364
App. No.
17/153,934
Filed
Jan 21, 2021
Granted
Dec 20, 2022
Kind
B1
Art Unit
2181
USPC
711/154
Abstract

Symmetric storage using a cloud-based storage system, including: receiving, at a cloud-based storage system among storage systems synchronously replicating a dataset, an I/O operation directed to the dataset; determining, in dependence upon the I/O operation, a metadata update describing a mapping of segments of content to an address within a storage object, wherein the storage object includes the dataset; and synchronizing metadata on another storage system of the storage systems by sending the metadata update from the cloud-based storage system to the other storage system to update a metadata representation on the second storage system in accordance with the metadata update.

Claims (33)

1. A method comprising:

determining predicate metadata describing an ordering of an I/O operation directed to a dataset and received at a cloud-based storage system relative to one or more other I/O operations directed to the dataset;

determining, based on the I/O operation, a metadata update describing a mapping of segments of content to one or more addresses within one or more storage objects that include the dataset, wherein the metadata update includes the determined predicate metadata; and

synchronizing metadata on an other storage system by sending the metadata update from a cloud-based storage system to the other storage system to update a metadata representation on the other storage system in accordance with the metadata update.

2. The method of claim 1 , wherein the cloud-based storage system includes a plurality of cloud computing instances that respectively store a portion of the dataset.

3. The method of claim 1 , wherein the cloud-based storage system includes a cloud-based object storage that stores all portions of the dataset.

4. The method of claim 1 , wherein a metadata representation of the dataset includes one or more references to one or more storage locations within one or more of the plurality of cloud computing instances.

5. The method of claim 4 , wherein the other storage system is a hardware-based storage system, and wherein a metadata representation of the dataset on the other storage system is structured differently than the metadata representation of the dataset on the cloud-based storage system.

6. The method of claim 1 , further comprising:

responsive to successfully applying the I/O operation on the cloud-based storage system, updating, on the cloud-based storage system and in accordance with the metadata update, a version of metadata corresponding to the dataset prior to applying the I/O operation.

7. The method of claim 1 , wherein the metadata update includes a description of an update to be made to represent application of the I/O operation.

8. The method of claim 1 , further comprising:

receiving, at the cloud-based storage system among storage systems synchronously replicating the dataset, an I/O operation directed to the dataset.

9. The method of claim 1 , wherein the metadata update includes the determined predicate metadata.

10. The method of claim 1 , wherein the metadata update comprises information describing one or more snapshots of one or more volumes or storage objects of the dataset.

11. A cloud-based storage system in a cloud computing environment, the cloud-based storage system including:

one or more cloud computing instances with local block storage;

cloud-based object storage; and

one or more storage controller applications, each storage controller application executing in a cloud computing instance, wherein the one or more storage controllers are configured to:

determine predicate metadata describing an ordering of an I/O operation directed to a dataset and received at a cloud-based storage system relative to one or more other I/O operations directed to the dataset;

determine, based on the I/O operation, a metadata update describing a mapping of segments of content to one or more addresses within one or more storage objects that include the dataset, wherein the metadata update includes the determined predicate metadata; and

synchronize metadata on an other storage system by sending the metadata update from a cloud-based storage system to the other storage system to update a metadata representation on the other storage system in accordance with the metadata update.

12. The cloud-based storage system of claim 11 , wherein the one or more cloud computing instances respectively store a portion of the dataset.

13. The cloud-based storage system of claim 11 , wherein the cloud-based object storage stores all portions of the dataset.

14. The cloud-based storage system of claim 11 , wherein a metadata representation of the dataset includes one or more references to one or more storage locations within one or more of the plurality of cloud computing instances.

15. The cloud-based storage system of claim 11 , wherein the other storage system is a hardware-based storage system, and wherein a metadata representation of the dataset on the other storage system is structured differently than the metadata representation of the dataset on the cloud-based storage system.

16. The cloud-based storage system of claim 11 , wherein the one or more storage controller applications are further configured to:

responsive to successfully applying the I/O operation on the cloud-based storage system, update, on the cloud-based storage system and in accordance with the metadata update, a version of metadata corresponding to the dataset prior to applying the I/O operation.

17. The cloud-based storage system of claim 11 , wherein the metadata update includes a description of an update to be made to represent application of the I/O operation.

18. The cloud-based storage system of claim 11 , wherein the one or more storage controller applications are further configured to:

determine predicate metadata describing an ordering of the I/O operation relative to one or more other I/O operations.

19. The cloud-based storage system of claim 18 , wherein the metadata update includes the determined predicate metadata.

20. The cloud-based storage system of claim 11 , wherein the metadata update comprises information describing one or more snapshots of one or more volumes or storage objects of the dataset.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2021
From: KARUMBUNATHAN, ASWIN; FREILICH, JOSHUA; NEELAKANTAM, NAVEEN; KARR, RONALD
To: PURE STORAGE, INC.
Reel/Frame 054977/0814 →
Continuity (6)
Continuation 16433234 · Jun 6, 2019
Continuation In Part 16353775 · Mar 14, 2019
Provisional Application 62769277 · Nov 19, 2018
Provisional Application 62768952 · Nov 18, 2018
Provisional Application 62692602 · Jun 29, 2018
Provisional Application 62643641 · Mar 15, 2018