US 11,928,085 B2
Using merkle trees in any point in time replication
Jehuda Shemer, Kfar Saba (IL); and Alex Solan, Hertzelia (IL)
Assigned to EMC IP HOLDING COMPANY LLC, Hopkinton, MA (US)
Filed by EMC IP Holding Company LLC, Hopkinton, MA (US)
Filed on Dec. 13, 2019, as Appl. No. 16/713,146.
Prior Publication US 2021/0182245 A1, Jun. 17, 2021
Int. Cl. G06F 16/00 (2019.01); G06F 11/14 (2006.01); G06F 16/13 (2019.01); G06F 16/178 (2019.01); G06F 16/182 (2019.01); G06F 16/901 (2019.01)
CPC G06F 16/1844 (2019.01) [G06F 11/1448 (2013.01); G06F 16/137 (2019.01); G06F 16/178 (2019.01); G06F 16/9027 (2019.01)] 18 Claims
OG exemplary drawing
 
1. A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors for:
performing, while a stream of Input/Output operations (IOs) is being applied to a source dataset at the same time as the source dataset is being replicated to a target dataset, operations comprising:
receiving a replicated IO that was previously applied to a source dataset tree;
applying the replicated IO to a target dataset tree by entering an updated hash value in the target dataset tree, wherein applying a timestamp to the target dataset tree comprises associating the timestamp with a root hash of the target dataset tree; and
applying a timestamp to the target dataset tree, wherein the timestamp is a single value; and
checking for consistency between the source dataset and the target dataset as of a specific Point-in Time (PiT).