https://github.com/pepperize/cdk-dynamodb-backup
Backup and restore AWS DynamoDB Table to AWS S3 Bucket with AWS Data Pipeline.
https://github.com/pepperize/cdk-dynamodb-backup
Last synced: 12 months ago
JSON representation
Backup and restore AWS DynamoDB Table to AWS S3 Bucket with AWS Data Pipeline.
- Host: GitHub
- URL: https://github.com/pepperize/cdk-dynamodb-backup
- Owner: pepperize
- License: mit
- Created: 2022-06-16T13:44:44.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2025-06-17T14:06:21.000Z (about 1 year ago)
- Last Synced: 2025-06-17T14:46:18.417Z (about 1 year ago)
- Language: TypeScript
- Size: 3.76 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/pepperize/cdk-dynamodb-backup/blob/main/LICENSE)
[](https://www.npmjs.com/package/@pepperize/cdk-dynamodb-backup)
[](https://pypi.org/project/pepperize.cdk-dynamodb-backup/)
[](https://www.nuget.org/packages/Pepperize.CDK.DynamodbBackup/)
[](https://s01.oss.sonatype.org/content/repositories/releases/com/pepperize/cdk-dynamodb-backup/)
[](https://github.com/pepperize/cdk-dynamodb-backup/actions/workflows/release.yml)
[](https://github.com/pepperize/cdk-dynamodb-backup/releases)
[](https://gitpod.io/#https://github.com/pepperize/cdk-dynamodb-backup)
# CDK DynamoDB Backup & Restore
Backup and restore AWS DynamoDB Table with AWS Data Pipeline.
## Install
### TypeScript
```shell
npm install @pepperize/cdk-dynamodb-backup
```
or
```shell
yarn add @pepperize/cdk-dynamodb-backup
```
### Python
```shell
pip install pepperize.cdk-dynamodb-backup
```
### C\# / .Net
```
dotnet add package Pepperize.CDK.DynamodbBackup
```
### Java
```xml
com.pepperize
cdk-dynamodb-backup
${cdkDynamodbBackup.version}
```
## Usage
See [API.md](https://github.com/pepperize/cdk-dynamodb-backup/blob/main/API.md).
### Backup
Export data from AWS DynamoDB to AWS S3
```typescript
const table = new aws_dynamodb.Table(stack, "Table", {
partitionKey: { name: "id", type: dynamodb.AttributeType.STRING },
});
const bucket = new aws_s3.Bucket(stack, "Bucket", {});
// When
new DataPipelineBackup(stack, "Account", {
table: table,
backupBucket: bucket,
});
```
See [Exporting Data From DynamoDB to Amazon S3](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBPipeline.html#DataPipelineExportImport.Exporting)
### Restore
Import data from AWS S3 into AWS DynamoDB
```typescript
const table = new aws_dynamodb.Table(stack, "Table", {
partitionKey: { name: "id", type: dynamodb.AttributeType.STRING },
});
const bucket = new aws_s3.Bucket(stack, "Bucket", {});
// When
new DataPipelineRestore(stack, "Restore", {
table: table,
restoreBucket: bucket,
restoreFolder: "/prefix/to/folder/with/manifest",
});
```
See [Importing Data From Amazon S3 to DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBPipeline.html#DataPipelineExportImport.Importing)