IP Library › Granted Patent US 10,860,539
Granted Patent B2
US 10,860,539 · App. 15/486,536 · Granted Dec 8, 2020

De-duplication-based remote replication method, and apparatus

Inventors: Yanhui Zhong (Chengdu, CN); Chengwei Zhang (Chengdu, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06F16/1752G06F3/067G06F3/0613G06F3/0641G06F11/1453G06F16/128G06F16/14G06F16/1844
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 10,860,539
App. No.
15/486,536
Granted
Dec 8, 2020
Kind
B2
Abstract

A de-duplication-based remote replication method and an apparatus are provided in a system including a primary end device and a disaster recovery end device, and both the primary end device and the disaster recovery end device store a first snapshot; the primary end device obtains a second snapshot of the primary end device, and sends the first data block, the fingerprint of the first data block, and metadata of the added data blocks to the disaster recovery end device when a fingerprint of a first data block in the added data blocks is different from the fingerprints of the data blocks in the first snapshot.

Claims (50)

1. A method implemented by a primary end device in a remote replication system, the method comprising:

obtaining a second snapshot of the primary end device;

determining, without sending a fingerprint to a disaster recovery end device of the remote replication system, whether second fingerprints of second data blocks added in the second snapshot compared with a first snapshot are the same as first fingerprints of first data blocks in the first snapshot, wherein the first snapshot is stored in the primary end device and the disaster recovery end device, and wherein the second fingerprints comprise a selected fingerprint of a selected data block in the second data blocks;

obtaining a first transactions number of the first snapshot;

obtaining a second transaction number of the second fingerprints;

making a determination whether the second transaction number is greater than the first transaction number;

determining whether the select fingerprint is different from the first fingerprints based on the determination; and

sending, to the disaster recovery end device, the selected data block, the selected fingerprint, and metadata of the second data blocks when the selected fingerprint is different from the first fingerprints.

2. The method of claim 1 , further comprising obtaining a differentiated record.

3. The method of claim 2 , wherein the differentiated record records the second data blocks.

4. The method of claim 3 , further comprising determining whether the second fingerprints are the same as the first fingerprints.

5. The method of claim 1 , further comprising determining that the selected fingerprint is different from the first fingerprints when the second transaction number is greater than the first transaction number.

6. The method of claim 5 , further comprising determining that the selected fingerprint is not different from the first fingerprints when the second transaction number is not greater than the first transaction number.

7. The method of claim 1 , wherein the metadata comprise a storage location of the selected data block.

8. The method of claim 7 , wherein the metadata further comprise a size of the selected data block.

9. The method of claim 8 , wherein the metadata further comprise an identifier of the selected data block.

10. A method implemented by a primary end device in a remote replication system, the method comprising:

obtaining a second snapshot of the primary end device;

obtaining a differentiated record recording second data blocks added in the second snapshot compared with a first snapshot, wherein the first snapshot is stored in the primary end device and a disaster recovery end device of the remote replication system;

obtaining second fingerprints of the second data blocks;

sending, to the disaster recovery end device, the second fingerprints to prompt the disaster recovery end device to determine whether the second fingerprints already exist in the disaster recovery end device;

receiving, from the disaster recovery end device, duplicate check information comprising a selected fingerprint of a selected data block in the second data blocks, wherein the selected fingerprint is different from first fingerprints of first data blocks in the first snapshot; and

sending, to the disaster recovery end device in response to the duplicate check information, the selected data block.

11. The method of claim 10 , further comprising further obtaining the second fingerprints using a hardware accelerator card.

12. A primary end device in a remote replication system and comprising:

a memory configured to store a first snapshot comprising first fingerprints of first data blocks; and

a processor coupled to the memory and configured to:

obtain a second snapshot of the primary end device;

determine, without sending a fingerprint to a disaster recovery end device of the remote replication system, whether second fingerprints of second data blocks added in the second snapshot compared with the first snapshot are the same as the first fingerprints, wherein the first snapshot is stored in the disaster recovery end device, and wherein the second fingerprints comprise a selected fingerprint of a selected data block in the second data blocks;

obtaining a first transactions number of the first snapshot;

obtaining a second transaction number of the second fingerprints;

making a determination whether the second transaction number is greater than the first transaction number;

determining whether the select fingerprint is different from the first fingerprints based on the determination; and

send, to the disaster recovery end device, the selected data block, the selected fingerprint, and metadata of the second data blocks when the selected fingerprint is different from the first fingerprints.

13. The primary end device of claim 12 , wherein the processor is further configured to obtain a differentiated record recording the second data blocks.

14. The primary end device of claim 13 , wherein the processor is further configured to determine whether the second fingerprints are the same as the first fingerprints.

15. The primary end device of claim 12 , wherein the processor is further configured to determine that the selected fingerprint is different from the first fingerprints when the second transaction number is greater than the first transaction number.

16. The primary end device of claim 15 , wherein the processor is further configured to determine that the selected fingerprint is not different from the first fingerprints when the second transaction number is not greater than the first transaction number.

17. The primary end device of claim 12 , wherein the metadata comprise a storage location of the selected data block.

18. The primary end device of claim 17 , wherein the metadata further comprise a size of the selected data block.

19. The primary end device of claim 18 , wherein the metadata further comprise an identifier of the selected data block.

20. A primary end device in a remote replication system and comprising:

a memory configured to store instructions; and

a processor coupled to the memory and configured to execute the instructions to:

obtain a second snapshot of the primary end device;

obtain a differentiated record recording second data blocks added in the second snapshot compared with a first snapshot, wherein the first snapshot is stored in the primary end device and a disaster recovery end device of the remote replication system;

obtain second fingerprints of the second data blocks;

send, to the disaster recovery end device, the second fingerprints to prompt the disaster recovery end device to determine whether the second fingerprints already exist in the disaster recovery end device;

receive, from the disaster recovery end device, duplicate check information comprising a selected fingerprint of a selected data block in the second data blocks, wherein the selected fingerprint is different from first fingerprints of first data blocks in the first snapshot; and

send, to the disaster recovery end device in response to the duplicate check information, the selected data block.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2017
From: ZHONG, YANHUI; ZHANG, CHENGWEI
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 042004/0383 →
Priority Claims (1)
CN 2014 1 0854706 · Dec 31, 2014 · national
Continuity (2)
Continuation PCTCN2015089977 · Sep 18, 2015
Related Publication 20170235754A1 · Aug 17, 2017