ITProPortal is touring California's Silicon Valley, getting the latest from up-and-coming startups.
We spoke to Dave Rosenthal, co-founder and CEO of FoundationDB, about what changes are happening in the database world, and why NoSQL has fallen behind.
A new wave of databases is directly enabling companies like Facebook, Google and Twitter to deliver better customer experiences.
Facebook's Tau database, for instance, handles millions of updates a second, and traditional SQL databases are simply inadequate for that kind of task. What a SQL database does is turn one computer into one database. But we want better scalability, lower costs and the ability to deploy on the cloud.
And a lot of databases don't just want you to buy the database, either: they want you to buy their hardware. Oracle, for instance, don't just want you to buy Oracle – they want you to buy their box, too.
So that's why we're moving on into this brave new world of NoSQL databses. There's been a huge amount of experimentation around database models. SQL databases have been relational for years – it's had a good run, and it's certainly not going anywhere - but what's happening is a trend towards putting less logic in the database itself, and moving it instead to the application.
But NoSQL so far has had problems with bad vision. It's throwing out some of the critical functions of databases, such as consistency. There are over 200 NoSQL databases, and your developers want access to all of these platforms. You simply can't run all these databases.
The problem is that instead of having one database where you can access all your data, you actually get a lot of fragmentation in the NoSQL world. And that's one of the main problems.
However, by far the largest problem for NoSQL was the CAP theorem. What it basically says is that you have to choose between consistency and availability in a distributed system. That it's impossible to have a system with both. But by 2009, Google had figured this out with Spanner. They found a way to build a practical system that had the guarantee of being consistent and available.
That's the principal FoundationDB is built on. It took us four years to build the product, and it's perfect for fast-paced companies that need to iterate quickly without sacrificing reliability or conform to a relational database format.