Incremental backup in a distributed block storage environment

US10353780B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10353780-B1
Application numberUS-201514674308-A
CountryUS
Kind codeB1
Filing dateMar 31, 2015
Priority dateMar 31, 2015
Publication dateJul 16, 2019
Grant dateJul 16, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one aspect, a method includes storing data in a distributed storage environment that includes data servers and configuring each data server to mark a respective bit map for each block of data changed. In another aspect, an apparatus includes electronic hardware circuitry configured to store data in a distributed storage environment that includes data servers and to configure each data server to mark a respective bit map for each block of data changed. In a further aspect, an article includes a non-transitory computer-readable medium that stores computer-executable instructions. The instructions cause a machine to store data in a distributed storage environment that includes data servers and configure each data server to mark a respective bit map for each block of data changed. In each of the aspects above each data server is configured to handle a respective portion of a logical unit.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: storing data in a logical unit of a distributed storage system, the distributed storage system comprising a plurality of data servers, each of the data servers being configured to manage a different respective portion of the logical unit; obtaining a plurality of first bitmaps from the data servers, each of the first bitmaps being obtained from a different one of the data servers; combining the first bitmaps to generate a first combined bitmap, the first combined bitmap including a plurality of first bits, each of the first bits being associated with one or more data blocks in the logical unit, each of the first bits indicating whether the first bit's associated data blocks have changed; taking a snapshot of the logical unit after the first combined bitmap is generated; obtaining a plurality of second bitmaps from the data servers, each of the second bitmaps being obtained from a different one of the data servers; combining the second bitmaps to generate a second combined bitmap, the second combined bitmap including a plurality of second bits, each of the second bits being associated with one or more data blocks in the logical unit, each of the second bits indicating whether the second bit's associated data blocks have changed after the snapshot of the logical unit is generated; merging the first and second combined bitmaps to form a merged bitmap; providing each of the data servers with a different segment of the merged bitmap, wherein each of the data servers is arranged to identify, based on the segment that is provided to the data server, changed portions in the snapshot and copy the changed portions into an object storage; and releasing the snapshot after the data servers have copied all changed portions of the snapshot to the object storage. 2. The method of claim 1 , further comprising: receiving a write request to write data to a portion of the logical unit; determining which data server of the data servers handles the portion of the logical unit; sending the write request to the data server handling the portion of the logical unit; and marking a bitmap for each block of the logical unit changed by the write request. 3. The method of claim 1 , further comprising issuing a command to each of the data servers to start tracking dirty blocks. 4. The method of claim 1 , wherein the data servers are concurrently notified to record changes on a new bitmap and the bitmaps are obtained concurrently from the data servers. 5. An apparatus, comprising: electronic hardware circuitry configured to: store data in a logical unit of a distributed storage system, the distributed storage system comprising a plurality of data servers, each of the data servers being configured to manage a different respective portion of the logical unit; obtain a plurality of first bitmaps from the data servers, each of the first bitmaps being obtained from a different one of the data servers; combine the first bitmaps to generate a first combined bitmap, the first combined bitmap including a plurality of first bits, each of the first bits being associated with one or more data blocks in the logical unit, each of the first bits indicating whether the first bit's associated data blocks have changed; take a snapshot of the logical unit after the first combined bitmap is generated; obtain a plurality of second bitmaps from the data servers, each of the second bitmaps being obtained from a different one of the data servers; combine the second bitmaps to generate a second combined bitmap, the second combined bitmap including a plurality of second bits, each of the second bits being associated with one or more data blocks in the logical unit, each of the second bits indicating whether the second bit's associated data blocks have changed after the snapshot of the logical unit is generated; merge the first and second combined bitmaps to form a merged bitmap; provide each of the data servers with a different segment of the merged bitmap, wherein each of the data servers is arranged to identify, based on the segment that is provided to the data server, changed portions in the snapshot and copy the changed portions into an object storage; and release the snapshot after the data servers have copied all changed portions of the snapshot to the object storage. 6. The apparatus of claim 5 , wherein the circuitry comprises at least one of a processor, a memory, a programmable logic device or a logic gate. 7. The apparatus of claim 5 , further comprising circuitry configured to: receive a write request to write data to a portion of the logical unit; determine which data server of the data servers handles the portion of the logical unit; send the write request to the data server handling the portion of the logical unit; and mark a bitmap for each block of the logical unit changed by the write request. 8. The apparatus of claim 5 , further comprising circuitry configured to issue a command to each of the data servers to start tracking dirty blocks. 9. An article comprising: a non-transitory computer-readable medium that stores computer-executable instructions to perform incremental backup of a logical unit in a distributed storage system, the instructions causing a machine to: store data in a logical the distributed storage system, the distributed storage system comprising a plurality of data servers, each of the data servers being configured to manage a different respective portion of the logical unit; obtain a plurality of first bitmaps from the data servers, each of the first bitmaps being obtained from a different one of the data servers; combine the first bitmaps to generate a first combined bitmap, the first combined bitmap including a plurality of first bits, each of the first bits being associated with one or more data blocks in the logical unit, each of the first bits indicating whether the first bit's associated data blocks have changed; take a snapshot of the logical unit after the first combined bitmap is generated; obtain a plurality of second bitmaps from the data servers, each of the second bitmaps being obtained from a different one of the data servers; combine the second bitmaps to generate a second combined bitmap, the second combined bitmap including a plurality of second bits, each of the second bits being associated with one or more data blocks in the logical unit, each of the second bits indicating whether the second bit's associated data blocks have changed after the snapshot of the logical unit is generated; merge the first and second combined bitmaps to form a merged bitmap; and provide each of the data servers with a different segment of the merged bitmap, wherein each of the data servers is arranged to identify, based on the segment that is provided to the data server, changed portions in the snapshot and copy the changed portions into an object storage, and release the snapshot after the data servers have copied all changed portions of the snapshot to the object storage. 10. The article of claim 9 , further comprising instructions causing the machine to: receive a write request to write data to a portion of the logical unit; determine which data server of the data servers handles the portion of the logical unit; send the write request to the data server handling the portion of the logical unit; and mark a bitmap for each block of the logical unit changed by the write request. 11. The article of claim 9 , further comprising instructions causing the machine to issue a command to each of the data servers to start tracking dirty blocks.

Assignees

Inventors

Classifications

  • Using snapshots, i.e. a logical point-in-time copy of the data · CPC title

  • for networked environments · CPC title

  • by selection of backup contents · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10353780B1 cover?
In one aspect, a method includes storing data in a distributed storage environment that includes data servers and configuring each data server to mark a respective bit map for each block of data changed. In another aspect, an apparatus includes electronic hardware circuitry configured to store data in a distributed storage environment that includes data servers and to configure each data server…
Who is the assignee on this patent?
Emc Corp, Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/1451. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 16 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).