Making sense in the brave new world of databases Benoit Grégoire Savoir-faire Linux [email_address]
Why am I here? The last time SQL was declared dead wasn't fun.
There is this new hype called “NoSql”
I don't want to deal with another database holy war for the next ten years of my career.  Especially if it will prevent us from using the right tool for the job.
Lots of smart people worked on new tools, but fanboys are beginning to strike...
Typical decision criteria Criteria 1:  Is it popular/hyped?
There is no criteria 2
What did I do Survey all databases that: Are OSS
Are active projects
Why are you here Nobody needs this theorical mumbo-jumbo, right?
Rumor has is Google has a few PHD on it's payroll
The problem: The typical web developer's entire Database training is: I use MySql
I overheard it has a manual, but I didn't actually check since I use an ORM for everything.
ORMs probably did more damage to database understading than any other factor. Not understanding the fundamental caracteristics of the database system prevents you from making good decisions
Relational databases aren't the only option.  If you go through the pain of using an ORMs, you need to at least want SOMETHING from relational databases: SQL
Transactions
Relational integrity and schema enforcement
Fast joins WITHOUT instanciating objects
Replication (but then you probably chose the wrong solution)
So if not NoSQL, then what High Performance Scalable Data Stores (HPSDS)
Scalable Non Relational Database (SNRD?)
The movement formerly known as NoSQL?
Databases
Internet scale It's great that it's possible
Most web applications are not
Those that are don't have all of their components « Internet scale »
Plan for it, but you probably don't need it NOW. Google didn'T start with BigTable and MapReduce...
Major problem:  Scaling Read scaling Comparatively easy Write scaling Much harder Computational scalling Not historically part of database feature lists
Major problem:  Availability and replication
Major problem:  Transactions
Traditional databases: ACID Atomicity
Consistency

Databases benoitg 2009-03-10