IP Library › Granted Patent US 10,884,868
Granted Patent B2
US 10,884,868 · App. 15/726,205 · Granted Jan 5, 2021

Dedupe as an infrastructure to avoid data movement for snapshot copy-on-writes

Inventors: Alex Lyakas (Haifa, IL); Shyam Kaushik V. (Bangalore, IN)
Assignee: Zadara Storage, Inc.
G06F11/1453G06F3/065G06F3/0613G06F3/0641G06F3/0674G06F11/1458G06F16/1752G06F3/0652G06F2201/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 10,884,868
App. No.
15/726,205
Granted
Jan 5, 2021
Kind
B2
Abstract

A method for a storage system reduces data movement for snapshot copy-on-write operations. The method includes providing a live volume having snapshot chunks. Each snapshot chunk includes a number of deduplication chunks. Each deduplication chunk is mapped to a disk chunk on a disk. The method includes creating a snapshot of the live volume and, for each host write to a snapshot chunk of the live volume that shares a set of disk chunks with a snapshot, performing a snapshot copy-on-write operation by a using a deduplication operation.

Claims (31)

1. A method for a storage system to reduce data movement for snapshot copy-on-write operations, comprising:

providing a live virtual volume comprising a plurality of snapshot chunks, each snapshot chunk of said plurality of snapshot chunks comprising a plurality of deduplication chunks, wherein each one of said plurality of deduplication chunks is mapped to a disk chunk on a disk;

creating a snapshot of the virtual live volume without copying any of the live volume's underlying data in the disk, by mapping each of a plurality of deduplication chunks of each of a plurality of snapshot chunks composing said snapshot, to a respective disk chunk on said disk; and

in response to a host write operation to a snapshot chunk of the virtual live volume that includes a set of deduplication chunks mapped to disk chunks also mapped from a snapshot, performing a snapshot copy-on-write operation using a deduplication operation by:

determining for each deduplication chunk of the snapshot chunk being written by said host write operation to the virtual live volume, when data is changed in a certain deduplication chunk;

mapping the changed deduplication chunk of the snapshot chunk of the virtual live volume to a different disk chunk or to a new disk chunk;

wherein a disk chunk mapped from said certain deduplication chunk of said snapshot chunk of said virtual live volume before said host write operation and mapped from said snapshot, is kept mapped from said snapshot after said host write operation.

2. The method of claim 1 , wherein the deduplication operation further comprises incrementing a reference count for a data pattern being written by the host write.

3. The method of claim 2 , wherein the deduplication operation further comprises decrementing a reference count for a data pattern being overwritten by the host write.

4. A storage system, comprising:

a processor executing a snapshot layer and a deduplication layer below the snapshot layer,

the snapshot layer being configured to:

create a snapshot of a live virtual volume without copying any of the live virtual volume's underlying data in a disk, the live virtual volume comprising snapshot chunks mapped to disk locations on the disk; and

perform a snapshot copy-on-write operation for each host write to a snapshot chunk of the live virtual volume that includes a set of deduplication chunks mapped to disk chunks also mapped from a snapshot;

the deduplication layer being configured to:

divide each snapshot chunk into a plurality of deduplication chunks, each of said plurality of deduplication chunks is mapped to disk chunk on the disk; and

perform a deduplication operation for each snapshot copy-on write operation by:

determining for each deduplication chunk of the snapshot chunk being written by said host write operation to the live virtual volume, when data is changed in a certain deduplication chunk;

mapping the changed deduplication chunk of the snapshot chunk of the live virtual volume to a different disk chunk or to a new disk chunk;

wherein a disk chunk mapped from said certain deduplication chunk of said snapshot chunk of said live virtual volume before said host write operation and mapped from said snapshot, is kept mapped from said snapshot after said host write operation.

5. The system of claim 4 , wherein the deduplication operation further comprises incrementing a reference count for a data pattern being written by the host write.

6. The system of claim 5 , wherein the deduplication operation further comprises decrementing a reference count for a data pattern being overwritten by the host write.

7. A non-transitory, computer-readable storage medium encoded with instructions executable by a processor to implement a storage system to reduce data movement for snapshot copy-on-write operations, the instructions comprising:

provide a live virtual volume comprising a plurality of snapshot chunks, each snapshot chunk of said plurality of snapshot chunks comprising a plurality of deduplication chunks, wherein each one of said plurality of deduplication chunks is mapped to a disk chunk on a disk;

create a snapshot of the live virtual volume without copying any of the live volume's underlying data in the disk, by mapping each of a plurality of deduplication chunks of each of a plurality of snapshot chunks composing said snapshot, to a respective disk chunk on said disk; and

in response to a host write operation to a snapshot chunk of the live virtual volume that includes a set of deduplication chunks mapped to disk chunks also mapped from a snapshot, perform a snapshot copy-on-write operation using a deduplication operation by;

determining for each deduplication chunk of the snapshot chunk being written by said host write operation to the virtual live volume, when data is changed in a certain deduplication chunk;

mapping the changed deduplication chunk of the snapshot chunk of the virtual live volume to a different disk chunk or to a new disk chunk;

wherein a disk chunk mapped from said certain deduplication chunk of said snapshot chunk of said virtual live volume before said host write operation and mapped from said snapshot, is kept mapped from said snapshot after said host write operation.

8. The storage medium of claim 7 , wherein the deduplication operation further comprises incrementing a reference count for a data pattern being written by the host write.

9. The storage medium of claim 8 , wherein the deduplication operation further comprises decrementing a reference count for a data pattern being overwritten by the host write.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2017
From: LYAKAS, ALEX; KAUSHIK V., SHYAM
To: ZADARA STORAGE, INC.
Reel/Frame 043800/0667 →
Continuity (1)
Related Publication 20190108100A1 · Apr 11, 2019