Instant recovery of databases

US11467924B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11467924-B2
Application numberUS-201916520665-A
CountryUS
Kind codeB2
Filing dateJul 24, 2019
Priority dateJul 31, 2018
Publication dateOct 11, 2022
Grant dateOct 11, 2022

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.

An example method of restoring a database includes obtaining information about backup data of a database from a source storage separate from a compute infrastructure. The information includes a list of data blocks of a file, transferring the data blocks on the list from the source storage to a local storage on the compute infrastructure, and tracking which data blocks of the file have been transferred from the source storage to the local storage concurrently when transferring the data blocks.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method of restoring a database hosted on a virtual machine, comprising: initiating a restoration procedure for the database hosted on the virtual machine, wherein data for the database is stored at a local storage on a compute infrastructure running the virtual machine; obtaining, as part of the restoration procedure, information about backup data stored for the database on a source storage that is separate from the compute infrastructure, the information including a list of data blocks of a file of the database; activating, based at least in part on initiating the restoration procedure, a configuration for determining whether to direct read commands and write commands to the local storage or the source storage; transferring, from the source storage to the local storage and during the restoration procedure, the data blocks on the list; tracking, during the restoration procedure, which data blocks of the file have been transferred from the source storage to the local storage concurrently with transferring the data blocks; receiving, during the restoration procedure, a read command for a first data block of the data blocks and a write command for a second data block of the data blocks; determining, based on the receiving, whether the first data block has been transferred to the local storage based on the tracking; reading, in response to the read command and during the restoration procedure, the first data block from the local storage based on determining that the first data block has been transferred to the local storage in accordance with the configuration or from the source storage based on determining that the first data block has not been transferred to the local storage in accordance with the configuration; and writing, in response to the write command and during the restoration procedure, data for the second data block to the local storage regardless of whether the second data block has been transferred to the local storage in accordance with the configuration. 2. The method of claim 1 , wherein transferring the data blocks and tracking which data blocks have been transferred comprises: running a file system in kernel mode on the compute infrastructure. 3. The method of claim 1 , wherein the read command is issued by an application, the method further comprising: intercepting the read command by reading the first data block from the local storage or from the source storage. 4. The method of claim 1 , wherein data for tracking which data blocks of the file have been transferred comprises a bitmap of bits, each bit representing one of the data blocks and indicating whether that data block has been transferred. 5. The method of claim 4 , wherein a size of the data block represented by each bit is configurable. 6. The method of claim 4 , further comprising: storing the bitmap in kernel space memory. 7. The method of claim 1 , wherein the backup data is stored in a data management and storage (DMS) system including a DMS cluster of peer DMS nodes, a distributed data storage being implemented across the peer DMS nodes, and wherein the distributed data storage is the source storage. 8. A system comprising: processors; and a memory storing machine-readable instructions executable by at least one processor among the processors to cause the system to: initiate a restoration procedure for a database hosted on a virtual machine, wherein data for the database is stored at a local storage on a compute infrastructure running the virtual machine; obtain, as part of the restoration procedure, information about backup data stored for the database on a source storage that is separate from the compute infrastructure, the information including a list of data blocks of a file of the database; activate, based at least in part on initiating the restoration procedure, a configuration for determining whether to direct read commands and write commands to the local storage or the source storage; transfer, from the source storage to the local storage and during the restoration procedure, the data blocks on the list; track, during the restoration procedure, which data blocks of the file have been transferred from the source storage to the local storage concurrently with transferring the data blocks; receive, during the restoration procedure, a read command for a first data block of the data blocks and a write command for a second data block of the data blocks; determine, based on the receiving, whether the first data block has been transferred to the local storage based on the tracking; read, in response to the read command and during the restoration procedure, the first data block from the local storage based on determining that the first data block has been transferred to the local storage in accordance with the configuration or from the source storage based on determining that the first data block has not been transferred to the local storage in accordance with the configuration; and write, in response to the write command and during the restoration procedure, data for the second data block to the local storage regardless of whether the second data block has been transferred to the local storage in accordance with the configuration. 9. The system of claim 8 , wherein, to transfer the data blocks and track which data blocks have been transferred, the machine-readable instructions are further executable by the at least one processor to cause the system to: run a file system in kernel mode on the compute infrastructure. 10. The system of claim 8 , wherein the read command is issued by an application, and wherein the machine-readable instructions are further executable by the at least one processor to cause the system to: intercept the read command by reading the first data block from the local storage or from the source storage. 11. The system of claim 8 , wherein data for tracking which data blocks of the file have been transferred comprises a bitmap of bits, each bit representing one of the data blocks and indicating whether that data block has been transferred. 12. The system of claim 11 , wherein a size of the data block represented by each bit is configurable. 13. The system of claim 11 , wherein the machine-readable instructions are further executable by the at least one processor to cause the system to: store the bitmap in kernel space memory. 14. The system of claim 11 , wherein the backup data is stored in a data management and storage (DMS) system including a DMS cluster of peer DMS nodes, a distributed data storage being implemented across the peer DMS nodes, and wherein the distributed data storage is the source storage. 15. A non-transitory machine-readable medium including instructions which, when read by a machine, cause the machine to: initiate a restoration procedure for a database hosted on a virtual machine, wherein data for the database is stored at a local storage on a compute infrastructure running the virtual machine; obtain, as part of the restoration procedure, information about backup data stored for the database on a source storage that is separate from the compute infrastructure, the information including a list of data blocks of a file of the database; activate, based at least in part on initiating the restoration procedure, a configuration for determining whether to direct read commands and write commands to the local storage or the source storage; transfer, from the source storage to the local storage and during the restoration procedure, the data blocks on the list; track, during the restoration procedure, which data blocks of the file have

Assignees

Inventors

Classifications

  • Backup restoration techniques · CPC title

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

  • Database-specific techniques · CPC title

  • Backup scheduling policy · CPC title

  • Failover techniques · 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 US11467924B2 cover?
An example method of restoring a database includes obtaining information about backup data of a database from a source storage separate from a compute infrastructure. The information includes a list of data blocks of a file, transferring the data blocks on the list from the source storage to a local storage on the compute infrastructure, and tracking which data blocks of the file have been tran…
Who is the assignee on this patent?
Rubrik Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/1469. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 11 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).