LWN.net Logo

SCALE 8x: Relational vs. non-relational

SCALE 8x: Relational vs. non-relational

Posted Mar 8, 2010 0:32 UTC (Mon) by dmag (subscriber, #17775)
In reply to: SCALE 8x: Relational vs. non-relational by iabervon
Parent article: SCALE 8x: Relational vs. non-relational

I think the "revolutionary" isn't so much a label for the technology, but the fact that people are "bucking the trend" socially. The RDBMS has been the "gold standard" for the last 30 years. But the RDBMS market has basically stopped innovating. Trust me, I LOVE postgres, but it's lacking a lot of useful features. such as:

- Ability to just "add nodes" to help performance, without massive administration overhead. This is non-trivial: You need merkel trees, vector clocks, gossip protocols, etc. See Cassandra and Riak (and the Dynamo paper).

- Ability to answer queries quickly - The RDBMS has tons of overhead, such as query parsing, index selection, query optimization, etc. Some of the Key-Value stores can answer a query before an RDBMS is finished figuring out what the query is.

- Ability to forget about the database enforcing schema -- that's the application's domain. (In the old days, the database had to enforce constraints because it was the "integration point". Now every app has an API, so the database is only used by one app.)

- Ability to forget about writing to disk. Writing to disk means you have to run disk-based recovery (fsck, special recovery code, etc.) It's slow and especially useless in the cloud (on EC2, you can instantly loose your disk and you don't get it back). Instead, if you want HA, you should do replication with fail-over (in multiple data centers.)

- Ability to forget about consistency - It's *much* easier to achieve HA if you drop consistency. Consistency isn't always a business requirement. (See Amazon, see airline overbooking policies)


(Log in to post comments)

SCALE 8x: Relational vs. non-relational

Posted Mar 12, 2010 0:54 UTC (Fri) by robert_s (subscriber, #42402) [Link]

Seems to me like you want postgres to be able to just morph into any other type of database instantly at your whim, no matter how fundamentally different some of the ideas behind them are.

SCALE 8x: Relational vs. non-relational

Posted Mar 12, 2010 19:44 UTC (Fri) by dmag (subscriber, #17775) [Link]

> Seems to me like you want postgres to be able to just morph into any other type of database

No, I didn't mean that. I wouldn't want Postgres to add all of those features, because it would be lots of extra complexity to get some "simple" features.

I was pointing out some limitations of current systems (since most people are still in the denial stage, saying "what's wrong with the RDBMS?") The fundamental concept behind the NoSQL movement is "we need new tools in the toolbox", and there are a lot of "new tools" to explore.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds