Part II of a lightly-edited partial transcript of a panel discussion titled “Making SQL Great Again (SQL is Huuuuuge)” at YesSQL Summit 2016 organized by the Northern California Oracle Users Group (NoCOUG) at Oracle Corporation’s headquarters in Redwood City, California. NoCOUG is the longest-running and most-active Oracle users group in the world. An individual membership only costs $95 and entitles the member to free admission to the four consecutive quarterly NoCOUG conferences (one-day events) that follow the membership’s start date, the winter conference being the first day of YesSQL Summit. You can become a member at http://nocoug.org/join.html.
The panelists were Andrew (Andy) Mendelsohn (Executive Vice-President, Database Server Technologies, Oracle), Graham Wood (Architect, Oracle), Bryn Llewellyn (Distinguished Product Manager, Oracle), Hermann Baer (Senior Director, Product Manager, Oracle), Steven Feuerstein (Architect, Oracle). The moderator was Kyle Hailey, an Oracle ACE Director and member of the OakTable Network. The complete video of the panel discussion has been published by Oracle Corporation on the Oracle Channel on YouTube.
Part I Part II Part III Part IV Part V Part VI Part VII
[Why are we even having this discussion? Why is it necessary to defend SQL? Are NoSQL and Hadoop temporary phenomena that will eventually fade away just like object-oriented database management systems?]
Andy Mendelsohn: The first thing to understand is SQL does not go back to the beginning of time. Before the SQL databases came out in the 80s, there were “NoSQL” databases. OK, so people think that NoSQL is something new. NoSQL is actually pre-historic; it goes back to the beginning of time of information management. When the first computer was written, somebody came up with this idea, let’s have an index, a B-tree, basically, and let’s have an API to it and those were the original key-value stores. There were things like—on the mainframe—there’s ISAM and VSAM. Informix eventually had this product called C-ISAM. Berkeley DB came out. So the idea of a key-value store is ancient. And relational databases were basically created in the 80s because developers want to write reports and get information out of their databases. And key-value stores and other related non-SQL databases were terribly unproductive in writing reports. You’d take weeks to write a report to get a simple sorted list of information out of a NoSQL database and that’s where SQL came from. SQL was a huge leap forward in programmer productivity. Couple lines of SQL was equivalent to ten pages of writing code against a NoSQL-style API , key-value-store-styl e API. So NoSQL has been around before SQL and will be around. And SQL and NoSQL systems had co-existed for 30 years now. And so this whole question is sort of only relevant only for people who don’t know their history which is all the young developers out there, of course, know nothing about what happened more than ten years ago, right. So, of course, NoSQL systems overall they’re very good at what they do—very simple applications that don’t require the equivalent of writing reports and joins and ORDER BYs and all that kind of stuff you do trivially in SQL. NoSQL is great at that. There is a use case for it and there always will be one.
The more modern NoSQL systems like the MongoDBs, and Cassandras, and all those guys, and actually Amazon DynamoDB is probably the right one to actually look at. All Amazon did is, they were using Berkeley DB in their e-commerce system and they said “You know wouldn’t it be great if we had N of these B-trees not just one and let’s add a hash distribution layer in front of Berkeley DB” and that’s where DynamoDB came from. And that’s the direct ancestor of all the more recent NoSQL systems, so it’s basically just a hashing layer on top of a B-tree. This is trivial technology and that’s why there are about 40 or 50 companies that have NoSQL databases—including Oracle.
And, again, there’s a great use case for these kind of products. They do really simple applications really well; they scale nicely. And if you have an application that fits that mold and that’s all you need, it’s great. SQL systems obviously are much more flexible. They do everything NoSQL systems do plus they make developers really productive doing really complex applications. If you look at our Fusion applications or SAP applications—real commercial business applications—if you want to write those in a NoSQL product you’d need thousands of times the number of developers to write the same code as you would with SQL.
And then the size of the market really shows you the difference between the use cases of the two products. Relational databases are over a thirty-billion-dollar market . NoSQL databases are one of these classic zero-billion dollar markets—maybe there’s a few hundred million there—but basically they’re free products; there’s not a lot of value there. MongoDB; huge downloads; everybody’s playing with it but almost nobody pays for it; there’s not really a good business model.
The business model is actually another interesting aspect of the modern NoSQL databases. They have the freemium model where you can download it for free; you play with it and then if you want support which a few people will pay for support; you pay by subscription model . Traditionally relational databases on premise have the licensing model where you pay up front and then you pay for support and it’s now that everybody is moving to cloud that that model was now becoming available for all the relational databases as well. So the business model is also something that I think was interesting around NoSQL databases and is now becoming pretty prevalent as everybody makes their software available on clouds using the same kind of subscription model .
Hadoop is a whole different beast. I don’t know if we should leave that for another question but as far as I’m concerned Hadoop is just becoming a relational database. The whole idea that MapReduce was interesting was exciting a few years ago and everybody has pretty much decided you know “MapReduce is not interesting; we’re all going to offer SQL on top of HDFS.” And there’s twenty different SQL systems. What’s really happening, Hadoop is becoming a data warehouse/relational database and beyond that it’s not clear that there’s much other use of Hadoop. But Hadoop is here to stay; HDFS is a nice distributed file system ; it’s getting embedded in all the offerings from all the vendors including Oracle; we have it on our Big Data appliance; we have it up on our cloud now; it’s a nice technology. Filesystems go back 40 years; [HDFS] is just the latest generation; cool file system technology that certainly will survive and everybody is embracing [HDFS]. MapReduce, that may survive but it’s certainly not very popular. And again at the end of the day you can always measure success by revenue and market share and all that and you can measure the decline of the Hadoop fad by looking at HortonWorks’s stock price. A year ago they were a one-and-a-half billion dollar market cap company; now they’re 500 million; that pretty much reflects the hype cycle of what’s going on with Hadoop; it’s very popular but it’s not going to be as successful as people thought a couple years ago. But I’ll let you go on to the next question.
Panelists introduce themselves and tell their stories.
The NoSQL folks claim that NoSQL is “web scale”. Are relational database management systems “web scale”? How does PL/SQL fit into the performance picture? Is PL/SQL “web scale”?
Why does Oracle Corporation sell a NoSQL DBMS?
If SQL is the best language for Big Data, what explains the rise of Hadoop?
What is the Oracle Developer Advocates team doing to defend RDBMS?
What is Oracle doing to fend of NoSQL and Hadoop?
Copyright © 2016 Iggy Fernandez