Managing structured data in a data storage system
US-2017206221-A1 · Jul 20, 2017 · US
US9904598B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9904598-B2 |
| Application number | US-201514692357-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 21, 2015 |
| Priority date | Apr 21, 2015 |
| Publication date | Feb 27, 2018 |
| Grant date | Feb 27, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The illustrative storage management system uses snapshot technologies and performs block-level analysis thereof and to synthesize full backups of a database, regardless of the database management system (DBMS) and content of the database and without involving native DBMS utilities. Synthetic full copies are created efficiently and use network transport resources sparingly. Successive snapshots of the database may be hardware snapshots and/or software snapshots. The illustrative storage management system tracks which data blocks in the database change over time after a baseline full copy is saved to secondary storage. Only the changed blocks are subsequently moved to secondary storage as incremental backups and are indexed for future reference. A synthetic full backup of the database, at a given point in time, may be created by synthesizing the original full backup with changed blocks from any number of later incremental backups. The synthetic full backup comprises pointers to appropriate data blocks, ignoring intermediate changes, and pointing to the most current data block in secondary storage relative to the given point in time chosen for the synthetic full backup. The illustrative storage management system may restore the synthetic full backup without native DBMS utilities.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method for synthesizing a block-level backup copy of a database in a storage management system based on snapshots of the database, the method comprising executing on one or more computing devices the steps of: generating a first snapshot of the database, which includes associated metadata, wherein the first snapshot is stored to a first storage device, wherein a database management system (DBMS) that executes on a client computing device component of the storage management system performs operations that change data in the database; storing, by a media agent component of the storage management system, a copy of the first snapshot to a second storage device; after the first snapshot is generated, generating a plurality of successive snapshots of the database; after each snapshot in the plurality of successive snapshots is generated, identifying, by a data agent that is associated with the database management system, a respective set of data blocks which changed in the database relative to corresponding data blocks in an immediately preceding snapshot, which set of identified data blocks are designated changed data blocks for the respective snapshot, and maintaining, by the data agent, a respective list of the changed data blocks for the respective snapshot; extracting, by the media agent, the identified changed data blocks from the respective snapshot; storing and indexing to the second storage device, by the media agent, a plurality of incremental backups of the database corresponding to respective snapshots in the plurality of successive snapshots, wherein a respective incremental backup comprises the changed data blocks extracted from the respective snapshot; generating, based on the indexing, by the media agent, a synthetic full block-level backup of the database represented at a given point in time, wherein the synthetic full block-level backup is independent of database content and DBMS type, and comprises pointers to most-current data blocks relative to the given point in time, including pointers to changed data blocks and skipping over intermediate changed data blocks, as found by the media agent in the second storage device from: (a) the copy of the first snapshot and (b) the plurality of incremental backups, thereby resulting in the synthetic full block-level backup which represents the database at the given point in time; storing, by the media agent to the second storage device, the synthetic full backup of the database; reporting, by the media agent, completion of the synthetic full block-level backup of the database to a storage manager that maintains records thereof; and restoring the database from the synthetic full block-level backup in the second storage device without using a native restore feature of the DBMS. 2. The method of claim 1 wherein the copy of the first snapshot stored by the media agent to the second storage device comprises all data blocks in the first snapshot. 3. The method of claim 1 wherein the restored database comprises all data blocks of the database at the time the most recent snapshot was generated in the plurality of successive snapshots; and wherein the restoring of the database is performed at least in part by the media agent. 4. The method of claim 1 wherein the generating of the plurality of successive snapshots of the database is performed by the first storage device. 5. The method of claim 1 wherein the generating of the plurality of successive snapshots of the database is performed by the client computing device. 6. The method of claim 1 wherein the snapshots are hardware snapshots created by the first storage device. 7. The method of claim 1 wherein the snapshots are software snapshots created by the client computing device. 8. A data storage management system useful for synthesizing a block-level backup copy of a database based on snapshots of the database, the system comprising: a client computing device that (i) executes a database management system (DBMS), which operates upon a database that includes associated metadata, and (ii) also executes a data agent associated with the DBMS; a storage array in communication with the client computing device, wherein the storage array stores the database and a plurality of successive snapshots of the database; a secondary storage computing device that executes a media agent; a secondary storage device in communication with the media agent, wherein the secondary storage device comprises a full backup of a first snapshot of the database taken at a first time, wherein the full backup and the first snapshot each comprises a first set of data blocks; wherein the client computing device, when executing the data agent, is programmed to identify, after each snapshot is taken, data blocks that changed in the database relative to corresponding data blocks in the respective snapshot; and wherein the secondary storage computing device, when executing the media agent, is programmed to: index, into a first index, storage locations in the secondary storage device of the first set of data blocks of the full backup, store a plurality of incremental backups of the database to the secondary storage device, wherein each respective incremental backup comprises a corresponding set of changed data blocks extracted by the media agent from a respective snapshot in the plurality of successive snapshots on the storage array, wherein the extracted data blocks are data blocks that changed relative to an immediately preceding snapshot of the database, and wherein the changed data blocks are identified by the data agent into a respective list maintained by the data agent for the respective incremental backup, generate, for each incremental backup, a corresponding index of the storage locations in the secondary storage device of the data blocks of the respective incremental backup, generate, based on one or more corresponding index, a synthetic full block-level backup of the database, which represents the database at the time of the most recent snapshot in the plurality of successive snapshots, wherein the synthetic full block-level backup is independent of database content and DBMS type, and comprises pointers to most most-current data blocks relative to the time of the most recent snapshot, including pointers to changed data blocks and skipping over intermediate changed data blocks, as found by the media agent in: (a) the full backup of the database, and (b) the plurality of incremental backups; store the synthetic full backup of the database to the secondary storage device; report completion of the synthetic full block-level backup of the database to a storage manager that maintains records thereof; and restore the database from the synthetic full block-level backup in the secondary storage device without using a native restore feature of the DBMS. 9. The storage management system of claim 8 wherein the synthetic full block-level backup is based on the indexes corresponding to the incremental backups. 10. The storage management system of claim 8 wherein the restored database comprises all data blocks of the database at the time of the most recent snapshot in the plurality of successive snapshots. 11. A non-transitory computer-readable medium storing instructions that, when executed by at least one secondary storage computing device, which comprises one or more processors and computer memory, cause the secondary storage computing device to perform operations comprising: storing a copy of a first snapshot of a database, which includes associated metadata, to a secondary storage device, which copy is designated a full backup of the databa
Database-specific techniques · CPC title
Backup restoration techniques · CPC title
Management of the data involved in backup or backup restore · CPC title
by selection of backup contents · CPC title
Using snapshots, i.e. a logical point-in-time copy of the data · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.