Great read, Kevin! I understand you’ve since moved to Aurora, but i’d like to understand a little bit more on your DynamoDB key structure and querying patterns as we are facing similar problems right now; specifically Mistake #2 and #3 :)
- You mentioned your hash key was “<date>:<user_id>”. Did you also still use a range key (date) as well?
- We have a case where (in Timehop terms perhaps) may need to query for all content for a user — in our case a device given a broad time period. How did you go about querying for that given the composite hash key? Did you break it down into multiple queries for each date? But if the user is a long standing user, thats an enormous amount of queries.
Any advise is welcome.