-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
bb8ec3b
commit ec8c9a6
Showing
6 changed files
with
91 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# Backup and restore types | ||
|
||
!!! admonition "Version added: 1.7.0" | ||
|
||
Percona Backup for MongoDB supports physical and logical backups and restores. This document describes each type. | ||
|
||
*Physical* backup is copying of physical files from the Percona Server for MongoDB `dbPath` data directory to the remote backup storage. These files include data files, journal, index files, etc. Starting with version 2.0, Percona backup for MongoDB also copies the WiredTiger storage options to the backup’s metadata. | ||
|
||
Physical restore is the reverse process: `pbm-agents` shut down the `mongod` nodes, clean up the `dbPath` data directory and copy the physical files from the storage to it. During this process, the ``pbm-agents`` temporarily start the ``mongod`` nodes using the the WiredTiger storage options retrieved from the backup’s metadata. The logs for these starts are saved to the ``pbm.restore.log`` file inside the ``dbPath``. Upon successful restore this file is deleted. However, it remains for debugging if the restore failed. | ||
|
||
During physical backups and restores, ``pbm-agents`` don’t export / import data from / to the database. This significantly reduces the backup / restore time compared to logical ones and is the recommended backup method for big (multi-terabyte) databases. | ||
|
||
Physical backups and restores are available for Percona Server for MongoDB starting from versions 4.2.15-16, 4.4.6-8, 5.0 and higher. Since physical backups heavily rely on the WiredTiger `$backupCursor` functionality, they are available only for WiredTiger storage engine. | ||
|
||
!!! admonition "See also" | ||
|
||
Percona Blog | ||
|
||
* [Physical Backup Support in Percona Backup for MongoDB](https://www.percona.com/blog/physical-backup-support-in-percona-backup-for-mongodb/) | ||
* [$backupCursorExtend in Percona Server for MongoDB](https://www.percona.com/blog/2021/06/07/experimental-feature-backupcursorextend-in-percona-server-for-mongodb/) | ||
|
||
*Logical* backup is the copying of the actual database data. A `pbm-agent` connects to the database, retrieves the data and writes it to the remote backup storage. During the restore, the reverse process occurs: the ``pbm-agent`` retrieves the backup data from the storage and inserts it to the ``dbPath`` data directory on every primary node in the cluster. The remaining nodes receive the data during the replication process. | ||
|
||
Logical backups allow for point in time recovery. | ||
|
||
| **Type** | **Advantages** | **Disadvantages** | **Supported deployments**| | ||
| : ---------- | ------------------- | ----------------- | --------------- | | ||
| **Physical** | - Faster backup and restore speed <br> - Recommended for big, multi-terabyte datasets <br> - No database overhead | - The backup size is bigger than for logical backups due to data fragmentation extra cost of keeping data and indexes in appropriate data structures <br> - Extra manual operations are required after the restore <br> - Point in time recovery requires manual operations | Sharded clusters and non-sharded replica sets | | ||
| **Logical** | - Easy to operate with, using a single command <br> - Support for point-in-time recovery <br> - The backup size is smaller as it includes only the data | - Much slower than physical backup / restore <br> - Adds database overhead on reading and inserting the data| Sharded clusters and non-sharded replica sets | | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
# Percona Backup for MongoDB 2.1.0 (2023-04-18) | ||
|
||
| Release date | April 18, 2023 | | ||
|------------- | ---------------| | ||
| Installation | [Installing Percona Backup for MongoDB](../installation.md) | | ||
|
||
|
||
Percona Backup for MongoDB is a distributed, low-impact solution for consistent backups of MongoDB sharded clusters and replica sets. This is a tool for creating consistent backups across a MongoDB sharded cluster (or a non-sharded replica set), and for restoring those backups to a specific point in time. | ||
|
||
## Release Highlights | ||
|
||
* [Incremental physical backups](../features/incremental-backup.md) are now generally available enabling you to use them in production environments. Note that due to the changes in metadata files required for the restore, backups made with previous PBM versions are incompatible for the restore with PBM 2.0.1. | ||
* You can now [selectively back up and restore sharded collections](../features/selective-backup.md#sharded-collections). This improves the management of a desired subset of data in sharded clusters and saves you extra costs on data storage and transfer. This is the tech preview feature due to some [known limitations](../features/selective-backup.md#known-limitations). | ||
* Benefit from up to 7.5 times faster physical restore performance with the support of parallel download of data chunks from the S3 storage. | ||
* Improved deletion of old backups and point-in-time recovery oplog chunks simplifies the automation of backup storage cleanup. | ||
* The improved handling of master keys for data at rest encryption in Percona Server for MongoDB and the retrieval of the key ID/secret path by PBM from a backup simplifies the environment preparation for the physical restore and improves the restore flow. | ||
* The support of AWS tokens for the access to the S3 storage improves the security of your infrastructure and the integration with applications that interact with AWS resources via tokens. | ||
|
||
## New Features | ||
|
||
* [PBM-1007](https://jira.percona.com/browse/PBM-1007) - Selective backup/restore for sharded collections | ||
|
||
## Improvements | ||
|
||
* [PBM-850](https://jira.percona.com/browse/PBM-850) - Add ability to delete older backups | ||
* [PBM-875](https://jira.percona.com/browse/PBM-875) - Concurrent download from S3 compatible storages | ||
* [PBM-778](https://jira.percona.com/browse/PBM-778) - Save physical restore logs on storage | ||
* [PBM-951](https://jira.percona.com/browse/PBM-951) - Get rid of redundant `pbm*.old` collections to improve resync speed | ||
* [PBM-955](https://jira.percona.com/browse/PBM-955) - Improve physical restore of data encrypted at rest | ||
* [PBM-1033](https://jira.percona.com/browse/PBM-1033) - Flush previous incremental backup history after a new base backup is made | ||
* [PBM-1034](https://jira.percona.com/browse/PBM-1034) - Restore only files listed in a target backup and remove unneeded files for incremental backups | ||
* [PBM-1035](https://jira.percona.com/browse/PBM-1035) - Indicate a base incremental backup in `pbm status` output | ||
* [PBM-1046](https://jira.percona.com/browse/PBM-1046) - Handle changes with an offset beyond the current file size for incremental backups | ||
* [PBM-1053](https://jira.percona.com/browse/PBM-1053) - Stop mongod on shards before config servers during physical restore | ||
* [PBM-1060](https://jira.percona.com/browse/PBM-1060) - Add support of AWS session tokens to access S3 storage | ||
* [PBM-1066](https://jira.percona.com/browse/PBM-1066) - Restore from logical backup made on previous major PSMDB version | ||
* [PBM-1070](https://jira.percona.com/browse/PBM-1070) - Improve handling of failed physical/incremental restores when running pbm restore with the `--wait` option | ||
* [PBM-1078](https://jira.percona.com/browse/PBM-1078) - Preserve vault options during intermediate restarts | ||
* [PBM-1085](https://jira.percona.com/browse/PBM-1085) - Add the `--yes` flag for commands where `--force` is used | ||
|
||
## Bugs Fixed | ||
|
||
* [PBM-979](https://jira.percona.com/browse/PBM-979) - Add support for delayed/arbiter nodes on physical restore | ||
* [PBM-1012](https://jira.percona.com/browse/PBM-1012) - Drop a collection during selective oplog replay on the create collection stage | ||
* [PBM-1030](https://jira.percona.com/browse/PBM-1030) - Fixed the restore from incremental backup for database with data-at-rest encryption if the data were added/removed during backup | ||
* [PBM-1052](https://jira.percona.com/browse/PBM-1052) - Fixed PBM misbehavior during physical restore on a cluster that has more shards than in a backup | ||
* [PBM-1061](https://jira.percona.com/browse/PBM-1061) - Fixed the restore with the replica set name remapping on PSMDB 4.2 | ||
* [PBM-1063](https://jira.percona.com/browse/PBM-1063) - Fixed the incremental restore failure if the `directoryPerDb` is configured in PSMDB | ||
* [PBM-1069](https://jira.percona.com/browse/PBM-1069) - Check for incompatible incremental backups and notify accordingly in `pbm status` output | ||
* [PBM-1073](https://jira.percona.com/browse/PBM-1073) - Improve performance of `pbm status` command on environments with large datasets and many backups | ||
* [PBM-1077](https://jira.percona.com/browse/PBM-1077) - Save the `storage.bson` to ensure incremental backups and restores for database with data-at-rest encryption | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
# PBM Variables set for HTML output | ||
# See also mkdocs.yml plugins.with-pdf.cover_subtitle and output_path | ||
|
||
release: '2.0.5' | ||
version: '2.0' | ||
release_date: 2023-03-23 | ||
release: '2.1.0' | ||
version: '2.1' | ||
release_date: 2023-04-18 |