Hacker News new | ask | show | jobs
by neovintage 3292 days ago
The really important part of this post is the section articulating why not Dynamo. It uncovers a big question I ask of all of my customers when they're trying to choose data stores at any point during the life of their application.

Do you know your query patterns for your application?

If you know how your application / product need to pull data from the data store, you way more information that will allow you to pick the right data store to fit the problem at hand.

When you don't have any prior query patterns to go off of, picking a relational database to start your application is a good choice. You need the flexibility to allow your schema to change over time. The schema and query patterns will eventually reach a point where changes don't happen all that often and then you can look to other datastores if you need to scale. Plus, are you really going to have THAT much data when you start?

Disclosure: I work on Heroku Postgres. Could be a little biased....

1 comments

Similar to the article author, many just don't have experience with relational db's and have only heard that they aren't flexible and don't scale.

They don't realize just how easily performant Postgres can be - and often so easily by sticking basic indexes where they are needed. Similarly they may not realize the amount of data and load PG or MySQL can handle just fine.