I’m not really going to rant against relational databases, but this is more thinking about why technologies like CouchDB and SimpleDB are useful.
Some quick reference note:
- Amazon SimpleDB and CouchDB compared
- Eventual Consistency Is Not That Scarry
- Falling Walls – VC view
Many things can be said about databases but it’s the problem space that they are trying to tackle. If you look at applications like Wikipedia you have to wonder why you need a database to manage the content. Think about the objects that wikipedia manages:
- Page content
- Page permissions
- Edit history
- Inter page links
- … yes there’s a whole bunch more tables in MediaWiki …
Lets think about this for a second here, for account creation or other user oriented activites you need a transactional database to make sure your user objects are up to date — when you create an account you really want to have a single account created and active. When you edit a page, you personally want to see the edits but if it takes 10 minutes for the world to see the edit’s it’s probably not a big deal. Though of course if somebody else attempts to edit, you want to make sure they’ve got the edits out..
..put this down for two days… posting just to mark the links for posterity…