Application API/Terminology

From wiki.zmanda.com
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

These terms are derived from the SCSI command-set standard INCITS T10/1731-D.

A User Object is the basic unit of backup and restore, from the user perspective. Currently, a user object is a file or directory. In the future other types of data may be supported. Each user object has a hierarchical identifier and a set of associated attributes. Also, each user object is entirely contained within some set of collections, but a single collection may contain data from multiple user objects.

A Collection is the basic unit of backup and restore as it resides on the backup media. A collection is the smallest unit that can be stored or retrieved from media.

Each collection and user object may originate from only a single backup job, collection merge, or collection copy/migration.

Here are some examples of how the new Application API nomenclature would apply in the context of different application drivers.

  • Dump

User object => Filesystem object (file, directory, socket, pipe, etc.)
Collection => Entire filesystem

  • GNU tar

User object => Archive object (file, directory, etc.)
Collection => one 512-byte tar block.

Note that having such collections can be problematic; see below.

  • SQL database

User Object => Database table
Collection => Entire database

  • Alternative SQL database

User Object => Table row
Collection => Entire database

This conception is only useful if you have very large table rows; otherwise, the indices will be as big as the original database!