views:

465

answers:

2

When would you use a bigtabe/simpledb database vs a Relational database?

A: 

Size, redundancy and performance are all key words that pop up in my head.

It's fairly easy to create a little database that does its job but when you need to do significant scaling and redundancy, while keeping it performing at the speed of light, it's cheaper for lots of people to ship the job off to Amazon who've been doing it for a lot longer than most of us.

Oli
+4  A: 

Relational databases give you a lot more layout and query flexibility, and are easier to use, but you also end up with more pain if you later need to partition your data if it won't fit on a single database server/cluster. BigTable and similar things scale essentially infinitely, but do so by not offering a bunch of relational database features and making the design problem a lot harder.

Given probably 0.1% of places end up needing the BigTable level of scalability, you're almost always better off going with a relational database. If your data model is simple enough that either one would work, I'd be inclined to still pick a relational database.

Nicholas Riley