Hacker News new | past | comments | ask | show | jobs | submit login
How SimpleDB Differs from a RDBMS (highscalability.com)
13 points by dood on April 21, 2008 | hide | past | favorite | 6 comments



Why is everyone so concerned about people not using RDBMSs? Database management systems are not magic, they are just a query parser on top of some smart data structures. They are a generic solution, and might not be suitable for every situation, and that's why people are examining other data storage and retrieval methods.

It's kind of odd, but I've noticed that databases are a touchier subject than most things in the computer world. If someone says they're not using a RDBMS, there is always someone who immediately jumps down their throat as though SQL is God's Gift To The World.

Anyway, RDBMS aren't going to go away, so if you like them, use them. Some of us are willing to experiment with other solutions, however :)


The problem with most "traditional" RDBMSs is that they were not designed with modern web server environments in mind. In order to scale to handle the frequent and speed sensitive requests needed to serve web pages, techniques such as sharding or clusting are used to spread data across multiple DB instances. When you do this, you lose much of the traditional RDBMS functionality such as being able to join or order. Without this, how much do we really need SQL anymore?

It also makes for a scaling nightmare for startups who's #1 scaling issue is typically DB related.

In this respect traditional SQL is starting to show its age. My prediction is it will begin to become phased out for most web application purposes in favor of more easily scalable cloud-based and services such as SimpleDB and BigTable.


Let's not forget, technologies like SimpleDB and bigtable are primarily designed for "read only" environments. Rebuild a multi-terrabyte data base every week or so, then read it millions of times. Cool.

But what happens with dynamic apps, when you need to update that data base as often as you need to read it? Don't pull the plug on your RDBMS just yet.


I'm not sure what case the author is trying to make against RDBMSes, but SimpleDB doesn't seem like much of an answer. Shifting the burden of sorting and searching on to the programmer seems like a big step backwards to me.

Besides, what's so nasty about SQL?


SimpleDB shifts the burden of database scaling and maintenance from the programmer. Being free from those worries is a hugely important consideration. Even if it means having to forgo the ability to do joins or order by.

And you can still use SQL (albeit restricted) on SimpleDB with some of the new wrapper libraries such as this one: http://code.google.com/p/simplejpa/


I think most programmers would find sorting and searching to be easier than scaling a standard relational database over multiple machines.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: