You expect to hear the positives of a NoSQL database when speaking to the CEO of a company that sells it, but when compared to relational databases, Wiederhold thinks it is a fundamentally different set of trade-offs that are made – it isn’t about adding a few features to make them comparable.
Wiederhold, said: “I find it somewhat humorous when they talk about how they’ve added JSON to a relational database, all they’ve done is say you’re now allowed to store JSON documents, but you can’t do what JSON documents are designed to do.”
He sees that relational databases are good at certain things, but he feels that NoSQL is much better aligned to the needs of digital economy businesses. This includes the web, mobile and IoT applications that lie under the business.
“That’s where we’re focused and we think the scalability, performance and data modelling of a NoSQL database just fundamentally is the right set of trade offs for those digital economy businesses.”
Driving down into why that is the case, he tells me that for a start you need to support a dramatically higher number of database operations per second to support your business today, than in the past.
Another reason why is because more of the important features of applications are data centric. This means that they require a lot more access to the databases for the features in the apps.
Citing a conversation he had with Amadeus, which helps businesses to connect to the travel ecosystem, he explained how five to seven years ago during a single reservation booking process, they would deal with nine accesses to its database.
Now, every single reservation demands up to 30,000 access queries to their database.
This is increasingly the case for many companies, even medium sized. “It used to be that people thought of Web Scale as only Google, Facebook or eBay or someone like that, now even medium sized digital economy businesses have to operate at significant scale.”
Looking at data modelling, he identifies how unstructured data doesn’t fit well into the rows and columns of a relational database.
“Developers want to store new information all the time, in a relational database you need to go to a database admin to ask them to change the schema to add another column into another table. That can take literally months in many companies to change the schema.
“That simply doesn’t allow you to move fast enough if you’re a developer to develop all the features you want to deliver to your digital economy business customers.”
Operating the database business means that customers don’t switch their databases every day, it’s not an easy task and so vendor lock-in can be a problem.
Wiederhold chose Oracle as a particular example, he said: “Today I think a lot of customers feel very much locked in to Oracle and they have very little ability to switch. It’s an enormous decision to switch and I think they feel that open source prevents vendor lock in.”
The freedom to move to a free edition means that Couchbase has to compete with itself; if it doesn’t offer good enough customer service or technical support then customers can switch.
At the end of the day, Wiederhold just feels that open source is a much more natural way to adopt a technology – from grassroots adoption with developers in phase one, to phase two where mission critical application problems are solved.
Wiederhold, said: “So now based on this grassroots usage and experimentation, they say we think we could use this for some really important stuff, in that case they do some evaluation, pick a winner and they deploy.”
This is where it differs from proprietary software. He describes the process of contacting the vendor to get an evaluation copy, getting it up and running, and spending time and money on it all in the early stages. This is because the vendor is pressing to get an order and to ensure a budget for it.
“Otherwise they’re not going to spend any time with you.”
Couchbase expects next year to be the start of phase three, a move away from enterprises deploying their first few mission critical applications, to broad deployment.
Wiederhold expects phase three’s broad deployment to be part of another inflexion point for NoSQL, where it will see rapid growth.
The third phase will also be where people’s issues with Oracle will really start to come into play, more so than in phase two.
Wiederhold, said: “In phase two, issues such as cost with Oracle don’t really play a role in customers switching to NoSQL. They’re switching to NoSQL because they have big technical problems with Oracle, with relational technology that they have to fix.
“They see NoSQL as a way to fix those problems and so that’s why they are making the switch.”
Wiederhold, however, expects that the biggest factor to aid in broad deployment of NoSQL will be the customers’ dislike of Oracle.
“It’s at that point I think they will be helped by the fact they don’t like Oracle at all. Before, there were technical reasons driving them to NoSQL, but now they are already making a strategic commitment to NoSQL.
“They are going to start to say, yeah Oracle is working for this application but NoSQL is 75% less expensive and I hate Oracle.
So the combination of us solving technical problems, that it’s just much cheaper or that they can’t stand Oracle as a vendor and the lock-in, I think you will see a large number of customers make a big commitment to NoSQL.”