Lightweight SDK for cross-region data replication in AWS
Project description
AWS Replicate
A lightweight Python SDK for cross-region data replication in AWS.
Features
- Async S3 bucket replication using
aioboto3 - DynamoDB table replication between regions
- Concurrent operations with configurable limits
- Automatic retry logic with exponential backoff
- Structured logging with
structlog - Comprehensive test coverage with
moto
Installation
pip install awsreplicate
For development:
pip install awsreplicate[dev]
Quick Start
import asyncio
from awsreplicate import AWSConfig, S3Replicator
async def main():
# Configure AWS
config = AWSConfig()
# Create replicator
replicator = S3Replicator(
config=config,
source_region="us-east-1",
target_region="us-west-1",
max_concurrent=20
)
# Replicate bucket
result = await replicator.replicate_bucket(
source_bucket="my-source-bucket",
target_bucket="my-target-bucket"
)
print(f"Replicated {result['successful']} objects")
asyncio.run(main())
Development
# Install in development mode
pip install -e .[dev]
# Run tests
pytest
# Format code
black awsreplicate tests
# Lint
ruff check awsreplicate tests
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
awsreplicate-0.1.0.tar.gz
(8.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file awsreplicate-0.1.0.tar.gz.
File metadata
- Download URL: awsreplicate-0.1.0.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c075251ac139c8ff76b7b705a2383d85cab29851425793b434172e0f2feec2a
|
|
| MD5 |
971714f54020c23d6644161da08bff7f
|
|
| BLAKE2b-256 |
723d32a25fcf14e46b39898df08847d412dd25d8f76cf6c740b5298053f6ba26
|
File details
Details for the file awsreplicate-0.1.0-py3-none-any.whl.
File metadata
- Download URL: awsreplicate-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ba5ff155b86b57bc831cbc45c420bc86d8d30a6df418beabe556192728343dd
|
|
| MD5 |
9f45206294ee68596b49bcb6e70d9e6f
|
|
| BLAKE2b-256 |
86664efafeb84a11e0713ae627805b736b4f6e3e5a89b6f01cbca8958f6596ba
|