IP Library Granted Patent US 12,669,954
Granted Patent B2
US 12,669,954 · App. 18/929,044 · Granted Jun 30, 2026

Testing replica data using modifiable cloned images

Inventors: David Grunwald (San Francisco, CA); Thomas Gill (Bury St Edmunds, GB); Ronald Karr (Palo Alto, CA); John Colgrove (Los Altos, CA); Larry Touchette (Cupertino, CA); Lawrence Mertes (San Jose, CA)
Assignee: EVERPURE, INC.
G06F3/065G06F3/0614G06F3/067G06F11/1458G06F16/2379G06F16/27G06F16/383G06F2201/84
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 12,669,954
App. No.
18/929,044
Filed
Oct 28, 2024
Granted
Jun 30, 2026
Kind
B2
Examiner
GU, SHAWN X
Art Unit
2138
USPC
711/154
Abstract

Creating a modifiable cloned image of a dataset, including: generating, based on a dataset stored within a source data repository, a tracking copy of replica data on a target data repository; generating, after receiving an indication to begin accepting modifications to the tracking copy of the replica data, a cloned image of the dataset that is modifiable without modifying the tracking copy of the replica data; and responsive to a storage operation directed to the target data repository, modifying the cloned image of the dataset without modifying the tracking copy of the replica data.

Claims (26)

1 . A method comprising:

making available a clone, on a target data repository, of a tracking copy of replica data, wherein the tracking copy maintains updates to the replica data that are received from a source data repository; and

based on an instruction to modify the tracking copy, applying one or more modifications to the clone instead of applying the one or more modifications to the tracking copy.

2 . The method of claim 1 further comprising making the clone available in response to a promotion event promoting the tracking copy, wherein the promotion event includes a detected failure, an impending failure, a detected change in performance, or a user-initiated promotion event.

3 . The method of claim 1 , wherein making the clone available further comprises generating a point-in-time image of the tracking copy.

4 . The method of claim 3 , wherein the point-in-time image represents one or more updates to the replica data that are described in one or more lightweight checkpoints.

5 . The method of claim 1 , wherein metadata describing one or more updates to a dataset at the source data repository references content identifiers on the respective source data repository and target data repository, wherein the content identifiers are a basis for avoiding transfer of data based on identifying content on the target data repository that is the same as content on the source data repository, and wherein content is identified as being the same based on sharing a common definition for respective content identifiers on the source data repository and the target data repository.

6 . The method of claim 5 , wherein metadata describing one or more updates to the dataset includes one or more ordered checkpoints that specify the one or more updates to the dataset.

7 . The method of claim 6 , wherein a quantity of updates described by a given checkpoint depend on a configurable data replication setting.

8 . The method of claim 6 , further comprising receiving, at the target data repository from the source data repository and independent from receiving metadata including the one or more checkpoints describing the one or more updates to the dataset, data corresponding to the one or more updates to the dataset.

9 . The method of claim 8 , wherein generating the tracking copy of replica data on the target data repository includes applying, in order, the one or more updates corresponding to the data received from the source data repository.

10 . The method of claim 1 wherein the clone is modifiable without modifying the tracking copy of the replica data.

11 . A storage system that includes a computer memory and a computer processor, the computer memory including program instructions that, when executed by the computer processor, cause the storage system to carry out the steps of:

making available a clone, on a target data repository, of a tracking copy of replica data, wherein the tracking copy maintains updates to the replica data that are received from a source data repository; and

based on an instruction to modify the tracking copy, applying one or more modifications to the clone instead of applying the one or more modifications to the tracking copy.

12 . The storage system of claim 11 , further comprising computer program instructions that, when executed by the computer processor, carry out the step of making the clone available in response to a promotion event promoting the tracking copy, wherein the promotion event includes a detected failure, an impending failure, a detected change in performance, or a user-initiated promotion event.

13 . The storage system of claim 11 , wherein a replica link specifying a replica configuration changes direction of data replication from the target data repository to the source data repository.

14 . The storage system of claim 11 , wherein a snapshot of the clone is created that describes modifications made to the clone by one or more storage operations directed to the target data repository from a host computing device.

15 . The storage system of claim 11 , wherein metadata describing one or more updates to a dataset at the source data repository references content identifiers on the respective source data repository and target data repository, wherein the content identifiers are a basis avoiding transfer of data based on identifying content on the target data repository that is the same as content on the source data repository, and wherein content is identified as being the same based on sharing a common definition for respective content identifiers on the source data repository and the target data repository.

16 . The storage system of claim 15 , wherein the program instructions, when executed by the computer processor, further cause the storage system to carry out the steps of receiving, at the target data repository from the source data repository and independent from receiving metadata including checkpoints describing one or more updates to the dataset, data corresponding to the one or more updates to the dataset.

17 . The storage system of claim 11 , wherein generating the tracking copy of replica data on the target data repository includes applying, in order, one or more updates corresponding to data received from the source data repository.

18 . The storage system of claim 15 , wherein metadata describing one or more updates to the dataset at the source data repository includes one or more ordered checkpoints that specify the one or more updates to the dataset.

19 . The storage system of claim 18 , wherein a quantity of updates described by a given checkpoint depend on a configurable data replication setting.

20 . A computer program product disposed on a non-transitory computer readable medium, wherein the computer program product includes computer program instructions that, when executed, carry out the steps of:

making available a clone, on a target data repository, of a tracking copy of replica data, wherein the tracking copy maintains updates to the replica data that are received from a source data repository; and

based on an instruction to modify the tracking copy, applying one or more modifications to the clone instead of applying the one or more modifications to the tracking copy.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2024
From: GRUNWALD, DAVID; GILL, THOMAS; KARR, RONALD; COLGROVE, JOHN; TOUCHETTE, LARRY; MERTES, LAWRENCE
To: PURE STORAGE, INC.
Reel/Frame 069119/0387 →
Continuity (5)
Continuation 18324467 · May 26, 2023
Continuation 17825760 · May 26, 2022
Continuation 16669038 · Oct 30, 2019
Provisional Application 62900330 · Sep 13, 2019
Related Publication 20250165176A1 · May 22, 2025
References Cited (36)
US 5497483A · Beardsley et al. · 1996 [cited by applicant]
US 6959369B1 · Ashton et al. · 2005 [cited by applicant]
US 7334095B1 · Fair et al. · 2008 [cited by applicant]
US 7555620B1 · Manley · 2009 [cited by applicant]
US 8706914B2 · Duchesneau · 2014 [cited by applicant]
US 8918478B2 · Ozzie et al. · 2014 [cited by applicant]
US 9275063B1 · Natanzon · 2016 [cited by applicant]
US 9569108B2 · Benke et al. · 2017 [cited by applicant]
US 9569460B1 · Yadav et al. · 2017 [cited by applicant]
US 9910742B1 · Faibish et al. · 2018 [cited by applicant]
US 9983863B2 · Ashok et al. · 2018 [cited by applicant]
US 10185495B2 · Katsuki · 2019 [cited by applicant]
US 10860237B2 · Susairaj et al. · 2020 [cited by applicant]
US 10936208B2 · Figueroa et al. · 2021 [cited by applicant]
US 11086555B1 · Botes et al. · 2021 [cited by applicant]
US 11366593B2 · Figueroa et al. · 2022 [cited by applicant]
US 12131049B2 · Grunwald et al. · 2024 [cited by applicant]
US 20030140204A1 · Ashton et al. · 2003 [cited by applicant]
US 20040030951A1 · Armangau · 2004 [cited by applicant]
US 20060069679A1 · Percey et al. · 2006 [cited by applicant]
US 20090307450A1 · Lee · 2009 [cited by examiner]
US 20140122434A1 · Knight et al. · 2014 [cited by applicant]
US 20150100746A1 · Rychlik et al. · 2015 [cited by applicant]
US 20160142485A1 · Mitkar et al. · 2016 [cited by applicant]
US 20170155713A1 · Powell et al. · 2017 [cited by applicant]
US 20180032257A1 · Xiang et al. · 2018 [cited by applicant]
US 20180074748A1 · Makin et al. · 2018 [cited by applicant]
US 20210034265A1 · Abouelwafa · 2021 [cited by examiner]
US 20220156114A1 · Nagpal et al. · 2022 [cited by applicant]
US 20240143815A1 · Brenner et al. · 2024 [cited by applicant]
WO WO0213033A1 · 2002 [cited by applicant]
WO WO2008103569A1 · 2008 [cited by applicant]
Frakes Dan, “Up close with Mountain Lion: Power Nap (Frakes, Dan, Working Mac—Up close with Mountain Lion: Power Nap, Macworld.com,” Aug. 1, 2012, pp. 1-6. [cited by applicant]
Kim J-K., et al., “Data Access Frequency Based Data Replication Method Using Erasure Codes in Cloud Storage System,” Journal of The Institute of Electronics and Information Engineers, Feb. 2014, vol. 51, No. 2, pp. 85-9… [cited by applicant]
Schmid P., “RAID Scaling Charts, Part 3: 4-128 kB Stripes Compared,” Tom's Hardware, Nov. 27, 2007, 24 Pages, XP055363126, Retrieved from URL: http://www.tomshardware.com/reviews/RAID-SCALING-CHARTS.1735-4.html. [cited by applicant]
Wong T.M., et al., “Verifiable Secret Redistribution for Archive Systems,” Proceedings on First International IEEE Security in Storage Workshop (SISW'02), IEEE Xplore, Dec. 2002, 12 pages, DOI: 10.1109/SISW.2002.1183515. [cited by applicant]