IP Library Granted Patent US 11,816,129
Granted Patent B2
US 11,816,129 · App. 17/354,236 · Granted Nov 14, 2023

Generating datasets using approximate baselines

Inventors: David Grunwald (San Francisco, CA); Matthew Fay (Mountain View, CA)
Assignee: PURE STORAGE, INC.
G06F16/27G06F16/9024
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,816,129
App. No.
17/354,236
Granted
Nov 14, 2023
Kind
B2
Abstract

Generating datasets using approximate baselines including receiving, by a source storage system, an instruction to create, on a target storage system, a current snapshot for a source dataset stored on the source storage system, wherein no snapshots for the source dataset exist on the target storage system; selecting, as a baseline dataset, a similar dataset from a plurality of datasets on the source storage system with an existing snapshot on the target storage system, wherein the similar dataset comprises at least a portion of the source dataset; instructing the target storage system to generate a baseline snapshot for the source dataset using a copy of the existing snapshot of the baseline dataset; and transferring, from the source storage system to the target storage system, only a difference between the baseline dataset and the source dataset.

Claims (32)

1. A method comprising:

receiving, by a source storage system, an instruction to create, on a target storage system, a current snapshot for a source dataset stored on the source storage system, wherein no snapshots for the source dataset exist on the target storage system;

selecting, as a baseline dataset, a similar dataset to the source dataset from a plurality of datasets on the source storage system with an existing snapshot on both the source storage system and the target storage system, wherein the similar dataset comprises at least a portion of the source dataset;

instructing the target storage system to generate a baseline snapshot for the source dataset using a copy of the existing snapshot of the baseline dataset that exists at the target storage system; and

transferring, from the source storage system to the target storage system, only a difference between the baseline dataset and the source dataset, wherein the current snapshot of the source dataset is generated on the target storage system using the baseline snapshot on the target storage system and the difference between the baseline dataset and the source dataset.

2. The method of claim 1 , wherein the similar dataset is non-ancestrally related to the source dataset.

3. The method of claim 1 , wherein the similar dataset is below the source dataset in a relationship graph of datasets related to the source dataset.

4. The method of claim 1 , wherein the similar dataset has a timestamp after a timestamp for the source dataset.

5. The method of claim 1 , wherein the similar dataset is selected from the plurality of datasets based on a difference between the source dataset and each of the plurality of datasets.

6. The method of claim 1 , wherein the similar dataset is selected from the plurality of datasets based on a timestamp of each of the plurality of datasets.

7. The method of claim 1 , wherein the similar dataset is selected from the plurality of datasets based on a distance from the source dataset in a relationship graph of datasets related to the source dataset.

8. The method of claim 1 , wherein each of the plurality of datasets has a timestamp within a threshold range of a timestamp of the source dataset.

9. The method of claim 1 , wherein each of the plurality of datasets is within a threshold distance from the source dataset in a relationship graph of datasets related to the source dataset.

10. The method of claim 1 , wherein the source dataset is a volume.

11. The method of claim 1 , wherein the source dataset is a file system.

12. 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:

receiving, by a source storage system, an instruction to create, on a target storage system, a current snapshot for a source dataset stored on the source storage system, wherein no snapshots for the source dataset exist on the target storage system;

selecting, as a baseline dataset, a similar dataset to the source dataset from a plurality of datasets on the source storage system with an existing snapshot on both the source storage system and the target storage system, wherein the similar dataset comprises at least a portion of the source dataset;

instructing the target storage system to generate a baseline snapshot for the source dataset using a copy of the existing snapshot of the baseline dataset that exists at the target storage system; and

transferring, from the source storage system to the target storage system, only a difference between the baseline dataset and the source dataset, wherein the current snapshot of the source dataset is generated on the target storage system using the baseline snapshot on the target storage system and the difference between the baseline dataset and the source dataset.

13. A method comprising:

receiving, by a source storage system, an instruction to restore, on the source storage system, a source dataset from a snapshot stored on a target storage system;

selecting, as a baseline dataset, a similar dataset to the source dataset from a plurality of datasets on the source storage system, wherein the similar dataset comprises at least a portion of the source dataset;

transferring, from the target storage system to the source storage system, only a portion of the snapshot representing a difference between the baseline dataset and the source dataset; and

generating the source dataset on the source storage system using the baseline dataset on the source storage system and the transferred portion of the snapshot representing the difference between the baseline dataset and the source dataset.

14. The method of claim 13 , wherein the similar dataset is selected from the plurality of datasets using metadata for the source dataset.

15. The method of claim 14 , wherein the metadata for the source dataset is retrieved from the target storage system.

16. The method of claim 13 , wherein the similar dataset is below the source dataset in a relationship graph of datasets related to the source dataset.

17. The method of claim 13 , wherein the similar dataset has a timestamp after a timestamp for the source dataset.

18. The method of claim 13 , wherein the similar dataset is selected from the plurality of datasets based on a timestamp of each of the plurality of datasets.

19. The method of claim 13 , wherein the similar dataset is selected from the plurality of datasets based on a distance from the source dataset in a relationship graph of datasets related to the source dataset.

20. The method of claim 13 , wherein the source dataset is a volume.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2021
From: GRUNWALD, DAVID; FAY, MATTHEW
To: PURE STORAGE, INC.
Reel/Frame 056619/0942 →
Continuity (1)
Related Publication 20220405302A1 · Dec 22, 2022