|
|
|
|
|
by simondlr
5079 days ago
|
|
How are you dealing with the difference between scan and query? DynamoDB acts quite differently to other nosql databases. It seems in the find method, you are using scan? The reason why I'm asking, is that I've run into problems with DynamoDB for a small side-project. Stuff that I took for granted from a database system that I couldn't do or change! ie, with scan, although more resource expensive than query, you can add filters on any keys, but you can't sort any of the data. With query you can, but only on the range key you specify, which is 1 per table. Also: it can't be changed after the table is created. Seems like difficult problems to sort out for an ORM wrapper. |
|
In your scan vs. query example I'd want to duplicate the data to two indicies ... and running both through a query call. If I can get even a decent amount of consistency this way (the real challenge to the multi-index problem using this method) for small/medium data sizes it would work and still be cost effective. At larger data sizes an application will most likely know which queries it needs to execute consistently in an indexed fashion and which could be farmed out through elastic map reduce.
As mentioned here:
Amazon is looking into these concerns and I'd like my abstraction to stay constant throughout the transition. (while informing the user as to what its actually doing)