Types of Backups

The vbr utility supports several kinds of backups: 

You can refer to full or object-level backups by a user-defined descriptive name, such as FullDBSnap, Schema1Bak, or Table1Bak.

Full Backups

A full backup is a complete copy of the database catalog, its schemas, tables, and other objects. This type of backup provides a consistent image of the database at the time the backup occurred. You can use a full backup for disaster recovery to restore a damaged or incomplete database. You can also restore individual objects from a full backup.

When a full backup exists, vbr creates incremental backups as successive backups following the full-backup. Incremental backups contain new or changed data since the last full, or incremental, backup occurred.

Archives contain a collection of same-name backups. Each archive can have a different retention policy. For example, suppose that TBak is the name of an object-level backup of table T, and you create a daily backup each week. These seven backups become part of the TBak archive. Keeping a backup archive lets you revert back to any one of the saved backups.

Full and object-level backups reside on backup hosts, the computer systems on which backups and archives are stored.

Vertica saves backups in a specific backup location, the directory on a backup host. This location can contain multiple backups, including associated archives. The backups are also compatible, allowing you to restore any objects from a full database backup.

Object-Level Backups

An object-level backup consists of one or more schemas or tables or a group of such objects. The conglomerate parts of the object-level backup do not contain the entire database. When an object-level backup exists, you can restore all of its contents or individual objects.

Note: Vertica does not support object level backups on Hadoop Distributed File System (HDFS) storage.

Object-level backups contain the following object types: 

Selective objects Objects you choose to be part of an object-level backup. For example, if you specify tables T1 and T2 to include in an object-level backup, they are the selected objects.
Dependent objects

Objects that must be included as part of an object-level backup, due to dependencies. Suppose you want to create an object-level backup that includes a table with a foreign key. To do so, table constraints require that you include the primary key table, and vbr enforces this requirement. Projections anchored on a table in the selected objects are also dependent objects.

Principal objects

The objects on which both selected and dependent objects depend are called principal objects. For example, each table and projection has an owner, and each is a principal object.

Vertica 6.x and later provides support for object-level backups.

Hard Link Local Backups

A hard-link local backup can be a full- or object-level backup. It consists of a complete copy of the database catalog, and a set of hard file links to corresponding data files. You must save a hard-link local backup on the file system used by the catalog and database files.

Backup Contents

Backups contain all committed data for the backed up objects as of the start time of the backup. Backups do not contain uncommitted data or data committed during the backup. Backups do not delay mergeout or load activity.

Related Tasks