adding dynamodb store implementation#75
Conversation
|
Woow! |
bcdd174 to
0621e66
Compare
|
It's for a project using AWS Lambda. I've used Johnathan Oliver's project since it was beta so I'm really comfortable with it. The fact that there's an established test suite really made your version attractive. The TODO statements are more for polish and possible performance improvements. The current implementation is very solid - it'll run against DynamoDB with read/write capacities only at 1. It takes about 22 minutes for the test suite to run if the tests don't hit the 20 second timeout so I wouldn't recommend it. That said, I'm confident in the current implementation since I ran the tests with as few resources as you can possibly allocate and it still works great. Then I only have to bump the write capacity up to 3-5 for the events/undispatched table to avoid throttling. I have to finish some other tasks before I come around and clean it all up though. I'll leave it up to you. If you prefer to put it on a feature branch of some kind until I come back around that's fine. |
|
BTW, the reason the tests take so long when constrained is because of the I tried to delete/create table instead but it takes a while to delete and allocate a new table after each test and caused more timeouts than the scans. |
|
Ok… I think I will merge it… but I will not immediately publish a new version… Am 04.08.2016 um 21:44 schrieb Mark J Miller <notifications@github.commailto:notifications@github.com>: It's for a project using AWS Lambda. I've used Johnathan Oliver's project since it was beta so I'm really comfortable with it. The fact that there's an established test suite really made your version attractive. The TODO statements are more for polish and possible performance improvements. The current implementation is very solid - it'll run against DynamoDB with read/write capacities only at 1. It takes about 22 minutes for the test suite to run if the tests don't hit the 20 second timeout so I wouldn't recommend it. That said, I'm confident in the current implementation. I have to finish some other tasks before I come around and clean it all up though. I'll leave it up to you. If you prefer to put it on a feature branch of some kind until I come back around that's fine. — |
DynamoDB tests can be run against a local DynamoDB instance and by making sure that the following environment variables are set:
The first three values are arbitrary unless you want to connect to an existing AWS account the last one is required to point to the host:port combination of where you're running DynamoDB local.
If you want to connect to an existing AWS account, make sure the first 3 variables are properly set and the fourth one (
AWS_DYNAMODB_ENDPOINT) doesn't exist.I use DynamoDB local for development and then AWS for good measure. Running against a live account allows you to check for throttling issues (no throttling on DynamoDB local).