
# GeminiDB兼容DynamoDB备份概述
GeminiDB兼容DynamoDB接口支持数据库实例的备份，以保证数据可靠性。
#### 使用须知
- 备份数据不支持下载或导出操作。
- 备份操作需要在实例状态为正常时才可以进行。
- 数据备份期间，会消耗少部分CPU资源，备份文件上传到OBS占用计算节点带宽，对业务可能会产生轻微的时延抖动。
- 实例删除后，手动备份的数据会一直保存，直到用户手动删除。
- 执行实例删除操作后
  - 如果存在自动全量备份，系统会保留一个自动全量备份（若存在一天前的备份，则保留该备份；否则保留最近一次备份）到[回收站](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0063.html)。
  
  - 当实例回收站列表中的备份总条数小于100时，系统会触发生成一次新的全量备份到[回收站](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0063.html)。
  
  - 如果回收站的备份超出[回收站策略的保留天数](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0063.html#nosql_dynamodb_0063__section192725288227)，系统将自动将其清除。非回收站的自动备份会在实例删除时一并被清除。
   
 
#### 备份方案
GeminiDB兼容DynamoDB接口实例按照执行方式支持自动备份和手动备份两种方案。
表1自动备份与手动备份对比 
| 备份方案                                                                              | **说明**                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|
| [自动备份](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0083.html) | 您可以在管理控制台[设置自动备份策略](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0083.html#nosql_dynamodb_0083__section20760141313178)，系统将会按照自动备份策略中设置的备份时间段和备份周期进行自动备份，并且会按照设置的备份保留天数对备份文件进行存放。 自动备份的备份文件不支持手动删除，可通过[修改自动备份策略](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0083.html#nosql_dynamodb_0083__section20760141313178)调整备份保留天数，超出备份保留天数的已有备份文件会被自动删除。 |
| [手动备份](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0084.html) | 手动备份是由用户根据自身业务特点随时启动的数据库实例的全量备份，会一直保存，直到用户手动删除。 建议您定期对数据库进行备份，当数据库故障或数据损坏时，可以通过备份恢复数据库，从而保证数据可靠性。                                                                                                                                                                                                                                                            |
   
按照使用场景支持库表级备份。
表2使用场景 
| 备份方案                                                                                 | 使用场景                                      |
|:---|:---|
| [管理库表级备份](https://support.huaweicloud.com/dynamodbug-nosql/nosql_dynamodb_0086.html) | 当数据库或表被恶意或误删除，可依赖实例的备份保障数据安全。支持自动备份和手动备份。 |
   
支持全量备份和增量备份，以适应不同规模的数据备份需求。
表3全量备份和增量备份对比 
|    备份类型    |                                                                                                                                                                            全量备份                                                                                                                                                                            |                                                                                                                                                                                     增量备份                                                                                                                                                                                      |
|---|---|---|
| **描述**     | 全量备份是备份数据库所有数据。                                                                                                                                                                                                                                                                                                                                            | 增量备份是备份某个时间段内变化的数据。                                                                                                                                                                                                                                                                                                                                                           |
| **是否默认开启** | 是                                                                                                                                                                                                                                                                                                                                                          | 是                                                                                                                                                                                                                                                                                                                                                                             |
| **保留时长**   | - 自动备份为设置的保留天数。减少保留天数，会针对已有的备份文件生效。  - 手动备份会一直保存，不会随着GeminiDB兼容DynamoDB接口实例的删除而释放，直到用户手动删除。                                                            | 增量备份随自动全量备份一起删除。                                                                                                                                                                                                                                                                                                                                                              |
| **特点**     | - 对当前状态下的数据库实例中的所有数据进行一次完整的备份。  - 用户可在任意时刻使用全量备份恢复创建备份时的完整数据。  - 包含自动备份和手动备份。   | - 对当前状态下的数据库实例中的数据，基于上一次全量备份的增量部分进行备份  - 用户使用增量备份进行恢复时，会下载上一次全量备份数据和这期间的增量数据  - 增量备份只有自动备份   |
| **查看备份大小** | 单击实例名称，在"备份恢复"的"实例级备份"、"库表级备份"页签查看备份大小。                                                                                                                                                                                                                                                                                                                    | 单击实例名称，在"备份恢复"的"增量备份"页签查看备份大小。                                                                                                                                                                                                                                                                                                                                                |
   
#### 备份原理
GeminiDB兼容DynamoDB接口有专门负责备份管理的节点（seed节点）。如[图1]所示，GeminiDB兼容DynamoDB接口的备份在seed节点上进行，通过对数据进行秒级快照，并将生成的备份文件以压缩包的形式存储在对象存储服务（OBS）中，不会额外占据GeminiDB兼容DynamoDB接口实例的存储空间。备份上传过程中会消耗一定的CPU，因此会存在CPU上涨的现象，一般涨幅范围在5%\~15%，该现象属于正常现象。
图1备份原理   
![](https://support.huaweicloud.com/dynamodbug-nosql/zh-cn_image_0000002282650661.png "点击放大")
 #### 备份存储
GeminiDB兼容DynamoDB接口的备份数据存储至对象存储服务（Object Storage Service，简称OBS），在提高数据容灾能力的同时有效降低磁盘空间占用。
购买实例存储空间后，GeminiDB兼容DynamoDB接口将同比例赠送备份存储空间，用于存储备份数据。例如，您购买的实例存储空间为100GB时，会得到赠送的100GB备份存储空间。当备份数据没有超出100GB，将免费存储在OBS上；当备份数据超出100GB，超出部分将按需计费，具体收费请参见[价格详情](https://www.huaweicloud.com/pricing/calculator.html#/nosql)。
