I made a first pass at bindings for DynamoDB, still not in prod yet but figured I'd share:
A few caveats:
- I've only tested it on local DynamoDB for now.
- The behavior in the test suite seems a bit weird for the case where start == end when calling getOps. I made my code pass the suite but it seems wrong.
- I didn't implement a query API.
- The test suite sets up the appropriate tables, for production you'll have to set up your tables/primary keys manually for now.
- DynamoDB has a limit of 1MB on requests, so it might not be feasible to use this for large documents. A proper solution would store the snapshot data in S3 and refer to it from the dynamodb record. For now, the driver stringifies objects and then deflates them before storing them in DynamoDB.
Happy to get feedback or pull requests :)