A RedMonk Conversation: Developer Led Adoption and Oracle Database 23c Free

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

Get more video from Redmonk, Subscribe!

James Governor, co-founder of RedMonk talks to Gerald Venzl about Oracle Database 23c Free.

RedMonk is all about developers. As industry analysts we occasionally provide a quote for a press release and for the launch of 23c Free I described it as a “radical departure”. This video is about why.

The influence of developers on technology decision making is greater than it ever was. So we moved from a model which was the historical top down purchasing led adoption of technology into one where the engineers were the practitioners, much more influential in those choices. Oracle 23c Free is a radical departure because for the first time Oracle has given developers, rather than enterprise IT buyers, the bits first.

The model here is let’s take all of the new bits, all of the new functionality, get it in the hands of developers first and let them make the market, for example it might be — a Spring Developer needs to understand how the database is going to work with the applications they’re building. Framework support is so important in developer ecosystems. So someone in the ecosystem can really be building before they even think about any purchasing decisions.

How significant was the decision to lead with the developer edition? In the end it had to be approved by Larry Ellison, himself.

We also talk about JSON support, and Oracle’s attempts to make JSON a first class citizen in its architectures, enabling great support with common management models for both document/hierarchical and schema oriented SQL applications.

The question is will a free database that supports both document and relational models, with high performance and maintainability, turn the dial for new developer adoption? Watch the video and let us know what you think.

This was a RedMonk video, sponsored by Oracle.

Rather listen to this conversation as a podcast?



James Governor: Hi, this is James Governor, co-founder of RedMonk, and we’re here for a conversation with RedMonk. Today I have Gerald Venzl from Oracle and we’re going to be talking about Oracle Database 23c, which is a bit of a mouthful, but you know, when you’re Oracle, you’ve been around for a while and you get into those version numbers that are quite impressive. Anyway, Gerald, why don’t you introduce yourself?

Gerald Venzl: Yeah. Thank you very much for having me on the call, James. I’m Gerald. I’m a Senior Director here at Oracle and Product Management for Oracle Database. I’ve been with Oracle and Product Management for about ten years, a little bit less. And actually a long time Oracle database user as a developer before my life at Oracle. And I’m really excited to talk to you more about Oracle Database 23c.

James: Great. So, good place to start. Developers. RedMonk is all about developers. And so in the press release, we do as industry analysts occasionally provide a quote for a press release and for your launch I described 23c Free as a radical departure. And here’s why I did that. We at RedMonk have a thesis which we call The New Kingmakers. And the point there is that the influence of developers on technology decision making is greater than it ever was. So we moved from a model which was the historical top down purchasing led adoption of technology into one where the engineers were the practitioners, much more influential in those choices. This is driven by some key underpinnings. One would be open source. The other would be the cloud. Another would be sort of the social. We think about what we learn and how we can go to GitHub, we can find the best developers on the planet building a particular thing and we can start trying that thing out. So The New Kingmakers, this phenomenon, and to me, anytime you’re making it less permission required, that’s something that ties into this New Kingmaker phenomenon. So with 23c Free in particular, you know, the reason I described it as a radical departure when I saw what you’d put together was that this was the first time that the developer database was the superset.

James: And, you know, historically, Oracle would have this, you know, incredibly functional thing and would say, well, let’s have a subset of that for developers. Whereas this really felt like, let’s take all of the new bits, all of the new functionality, get it in the hands of developers first and let them make the market, let them, you know, it might be — Spring Developer needs to understand how the database is going to work with the applications they’re building. So someone in the ecosystem can really be building before we even think about purchase. And that to me was a radical departure for Oracle. I mean, obviously Oracle in the Java world, there’s some similarities here, but it’s not so much just the fact that it’s free because we’ve seen free proprietary relational databases before, but the go to market and the approach. So that’s why I think it’s radical. How did you push that through, Gerald? How did that become a thing? You know, who did you have to persuade in order to make it so?

Gerald: Yeah, well, it was certainly a journey. But basically everything what you’ve said is what we have seen as well. It’s like the good old days where somebody would buy an Oracle database and then rolls it out through the company and says, you have to use it. So we had to get it in the hands of the developers. And I think in general to some extent, the move to cloud for Oracle itself was also kind of change in the way how we approach and see things as well. You know, we kind of started this discussion, believe it or not, pretty much in 2017. So there’s certainly been a longer journey of two things, right? Like one, as you said, we had a free proprietary database or free Oracle database for quite a long time. But as you said before, it was just, you know, functionality taken out like this tiny set of database functionality. And that story in itself goes all the way back to — from what I could figure out  — until 2004. But, you know, we understood that in order for developers to be able to use the functionality of Oracle database, we had to make it as easy as possible for them to get it into their hands. And we have seen more and more that sometimes we go to our customers and say, Hey, you have all this great functionality of Oracle. It’s right there.

Gerald: And then developers tell us, well, you know, we’re not even allowed to use it or we have to go through a provisioning or procurement process internally, etcetera. And just as you’ve said before, is in the open source world, it’s like, why are developers New Kingmakers? Because they don’t have these shackles, if you like, on anymore. They can just use it, download it, write it, and don’t have to go through internal/external processes. So yeah, the conversation went all the way up, to be honest with you. In the end it had to be approved by Larry Ellison, but he was on board the moment we explained to him why we’re doing what we’re doing, which happened late last year when we told him about this and also releasing it to the developers first. I think that is also an important aspect of this that some have maybe missed or overlooked. In the past we also would release enterprise edition first to our customers because of course our customers are important.

Gerald: But now we’re putting it out first to the developers and we think that this truly helps everybody because a) developers can start getting acquainted with the new functionality, with the new version of the database. And also what we have seen often in the past years is when customers upgrade to the next version, it takes them obviously quite a while to upgrade and only when they have finished their upgrade it starts the demand for, you know, this new functionality now that they’re running on this new version. So by the time sometimes developers, you know, or even frameworks — you mentioned Spring before — get them on for supporting new functionality of the new release, we’re years past when that release actually came out. There’s literally frameworks still out there that cannot even support 12.1 functionality, which launched in 2013. So by turning this around, we’re hoping that everybody benefits, including those customers when they upgrade. They have actually frameworks and applications ready to consume that new functionality. Or at least, you know, be tested and ready to go with the new version of the Oracle database.

James: Yeah, that makes perfect sense to me. So, I guess one of the questions to my mind, obviously Oracle is known for its relational capabilities. That’s absolutely where you came from. The game has changed a little bit in terms of expectations from a developer’s perspective. What are some of the — why might a non-Oracle developer be interested or excited by what you’re bringing to market at this point?

Gerald: Yeah, that’s a great question, James. I think, you know, on the one hand, for Non-Oracle developers, developers that haven’t used Oracle yet, it’s like when you look historically, we’re still the number one database and for quite, quite a long time. So obviously there’s some merit to that. Whatever Oracle offers in terms of functionality and features is something that enterprises still after many, many years, are looking for to run their applications and mission critical workloads on, right? So I get very passionate about that part, although I don’t want to get too much into it. But you know, the Oracle database is 40 years old and yet it’s still the number one database. Not a lot of software can actually say that, right? So even if you put it in Linux terms, Linux hadn’t been a thing when Oracle database came around. But you know, functionality wise, I think, when you look at it, it’s like Oracle has always gotten a very feature rich or a rich feature set for developers to use. And as you said before, it’s like we’re known as the relational database, but actually we did object relational in the 90s and we had XML in the database and we were spatial in the database and graph etcetera. And we have JSON since almost ten years as well in the database. So we have all these capabilities as well. Specifically with 23c, one aspect that we’re trying to change in the market in general is what we see as this recurring cycle or loop from the relational to hierarchical data formats and back.

Gerald: So I just mentioned we had object relational databases in the 90s-mid 90s. We had XML databases in the 2000s. We have document stores aka JSON databases since the late 2010s and we see this trend coming back a bit also to relational for good reasons of the relational model. But one thing in particular we’ve put in 23c is this JSON Relational Duality views, which on a very, very high level for a developer, you can see as, we put the JSON to relational table mapping into the database. And while that sounds maybe in the beginning not so interesting, okay, it’s just the mapping in the database. The real nice secret sauce to it is not necessarily the JSON generation out of relational that we could do since, you know, ever since we put JSON into the database, the SQL standard has the functionality… But it’s actually the high concurrent asset guaranteed transactions or workloads that you have on top of that. So what I mean by that mouthful is basically it all becomes really interesting when you have like 200 different sessions, connections, applications coming in, trying to modify the same data, right? And this is like where, of course in the NoSQL world many people have kind of, quite frankly, omitted the problem by saying we have eventual consistency. You know, it’s not so important. The applications can worry about this, but actually it is important. And technically speaking, any developer you ask if he could have ACID without the downsides of the latency aspects to it or the locking to it, they will probably want it because if I don’t have any downsides, why wouldn’t I want to have a mechanism to say, okay, if I give up and roll back, everything will be undone for me. I don’t have to take care of it.

Gerald: Or if my application for whatever reason fails over. So that was a long, long explanation. But, you know, certainly one of the more key functionality we have is these JSON relational duality views. And people have gotten really excited by this whole notion of a set putting the mapping in the database. Or some people are even saying, putting a different style of ORM into the database, right? And, you know, being able to just define this declaratively in your database, and then many apps can use it with all the asset guarantees again, that are on top of it or in place in the Oracle database. So to kind of get you the best of both worlds, you know, it’s like if you’re a guy who develops an app that just wants to consume and send JSON data, nothing should change for you. If you start using this JSON relational duality views, you just happen to consume and send JSON data, but you still have all the backings of the relational world. So for those guys we actually want that part of it, having the relational model or the data backed by the relational model, they no longer have to have this trade off of having a hierarchical JSON data structure and having to fight with that.

James: So I mean, I think that we — much as you’ve said — we’ve sort of seen these these swings back and forth and Oracle’s had to follow those swings. We made as an industry a lot of noise about “oh schemaless, schema is bad”, you know, let developers not have to worry about a schema. But we certainly seem to be moving a bit more into an era where everybody’s saying actually, you know, even if I just started with — pure JSON wasn’t thinking at all about the schema that I needed in order to building it over time, you begin to think, hang on a second. From a maintainability perspective, maybe that needs to change. And so I think that the — actually that’s the question for me then. Do you see that duality view? Who do you see that as primarily valuable for? Is that the traditional relational person that is saying, Oh, hang on a second, I’ve got these other sorts of objects that I’m handling. I’m looking at it from that perspective. Or is it that we’ve got somebody that’s maybe a JavaScript developer, they’re used to using JSON… suddenly they’re like, okay, I’m happy to have this in a more managed fashion maybe. So do you think that it helps you appeal to a new developer set? I guess would be my question.

Gerald: Yeah, so we shall see as we progress, right? I think for the JavaScript JSON developer, technically speaking, nothing should change, you know. I said before Oracle has introduced native JSON support in in 2013 and they could do exactly the same already since then, which is send a JSON, retrieve some JSON, Where it becomes very, very interesting is this — as you approached on this schema sort of notion of schema, is: when you look at this over time — And you know, one of the most interesting things I’ve ever found is when I discovered why Codd gave us the relational model, which was to get us off IMS and which no surprise was hierarchical data format. So and you know, what is the issue with that? It’s like, so when you’re a developer and you’re building an app, a microservice or whatever, you kind of only concern yourself with, you know, the concern of your app. Makes perfect sense. So for you, it’s kind of quite easy to say, you know, I need another object in there or another attribute in there or, call it attribute ABC, right? It’s like everything of that logic is kind of put in your application. And certainly in the microservices world, we kind of have pushed a lot of this like, you know, your microservice, your own set of concerns, your own database. But realistically speaking, you know, you store data in databases because you want to hold on to that data. And, you know, unless you have the very transient use cases, of course, that hang around. But traditionally speaking, or realistically speaking, really, you know, if you put something in an enterprise database or into like your production database, it’s usually because you want to hang on to the data. And I have also always gone on quite along that as soon as applications come and go, data, you know, stays around to you know, persist forever if we actually could afford it, right?

James: Applications are like fish and data is like wine; only one of them could get better with age.

Gerald: Yes. That’s a really, really good point. Yeah. And you have to remember that. I may use that, if you don’t mind. But yeah, exactly. So the JSON schema for example itself is already a thing, right? So it’s JSON-schema.org. There’s already a movement out there, right? So why is that? Well, because the moment somebody else wants to reuse the data, they have to kind of know what it is, right? And so even if it’s a separate application, that application has to know, okay, you introduce an attribute ABC or you renamed it or you removed it, right? And you kind of have to figure that out in your application and that just causes overhead for the generic developer process. And as you move on to this, right, it’s like once you have this data stored and you come back to it three, four, five years later and maybe the application is not even around anymore, right? But you just hang on to the data, it becomes really difficult to figure out. It’s like, what did this data actually look like? And funnily enough, this is literally the opening kind of synopsis or abstract from Codd’s paper. When you read from the 70s, it’s like future users of the data have to be abstracted from how the data is organized in the machine or something like that. And so this is where this relational model basically comes in again, right? The fact that we split it out to separate tables and say, hey, you know, this is a customer table, this is the payment table, this is the delivery address table.

Gerald: And if you want any pieces of that information, you can just query that table and you don’t have to worry about it. And so coming back to your question, so for whom is this? So, you know, what we’re trying to do here is really to give you the best of both worlds. So for the JSON Developer or JavaScript Mongo developer, however you want to see it, the benefit here is practically nothing changes, right? JSON in, JSON out, great. You know, yet just another rest API somewhere or database connection somewhere for your driver. The nice thing about the guys who care about the data is they don’t have to make any trade offs. They can stick to their relational model rather than having a lot of JSON there. And this is actually something that, to give you a real world example: many, many years ago we introduced this functionality called JSON Data Guide and allowed you to actually get the structure of your JSON data.

Gerald: Literally, why we did this is because a big financial services customer in France came to us and said, our regulators just said we have to ensure that there is no credit card information, no credit card numbers specifically in the data. And we have four terabytes of JSON. And they kind of said, if you guys can help us, we’ll use Oracle instead of the other product, which cannot help us. And so this is the stuff you have to worry about many, many years after you stored the data and where the relational model has always been very powerful. And that’s why it’s still around since the last 40, 50 years. And so hopefully what we can achieve is really give everybody the best of both worlds. And that being said, we’re obviously not deprecating the pure relational storage and access mechanisms. We’re also not deprecating the pure JSON native storage access mechanisms. So you can still use them as well depending on your use case. But you know, some people internally call it like the peacemaker between the the developers and the dbas, this JSON relational duality feature to bring. But yeah, so we’ll see. And certainly very, very exciting because the possibilities, you know, to really give you both of that seem very high.

James: Yeah, I mean that balance between control and productivity, that’s what we’re trying to do. I mean, look, there’s actually a lot of database innovation going on in the market. It sort of almost surprises me how many new database companies there are, right? There’s already successful platforms. We’re clearly seeing a lot of packaging around Postgres. We’ve got some interesting innovation happening in around MySQL with things like PlanetScale. You’ve got new databases popping up all the time. And I think this is because of the issues you’re talking about. The expectations around developer experience continue to grow. But it turns out that compliance and control continue to be important. There is a reason why we’re having a relational database renaissance at the moment. That whole era of — well, I mean, people aren’t really talking about NoSQL anymore, right?

Gerald: Not anymore, yeah.

James: And we remember being quite surprised. I mean, yeah, talking to financial services organizations and they were using Mongo and they were saying, well, it doesn’t always matter if you lose a transaction. Jesus Christ. So anyway, yes, this appeal to both I think, is going to be interesting… So from everything you’ve said, what’s your call to action then? The thing is free so people don’t have to ask for permission about it. Why? Why would they gravitate to it? What have you got to tell a developer about why they should come and take a look at this new release now?

Gerald: Yeah. So, you know, although we make a lot of noise on JSON Relational Duality, there’s altogether 100 new features just for application development in this new release. And it was starting from JSON Relational Duality. We also introduced JSON Schema actually for JSON native support, again something that was requested. JavaScript Stored Procedures, domains from the pure SQL standard kind of point of view. Property graph queries, actually new functionality that’s about to come to the SQL standard, which should be out shortly. But we already stepped ahead because we worked in collaboration to standardize this and have put it in our product. So, you know, the call to action really is: developers should obviously download and get a hand on the new version for various reasons: either a) to test out all the exciting new functionality that we’ve put in, or a subset of it. And whether that’s new functionality that’s coming into SQL standard and you’re kind of a SQL guy, you already have it in Oracle or you want to give JSON Relational Duality a spin or you know, you like the JSON Schema or you know, JavaScript Stored Procedures, — which by the way is with an embedded GraalVM in the database, that’s really exciting as well — we’ve done it over the last couple of years. So we put GraalVM into the database. But also, if not any of that, if you’re an application developer or framework developer, it’s your chance now to download the new version of the Oracle database, maybe run your regression suite already against it.

Gerald: We know we have already two frameworks, very popular frameworks out there doing so, you know, so that they get this head start. They actually came back and said, Hey, fantastic. You know, none of our tests seem to break, so we know already we’re all good when this goes prime time for customers as well. Just give it a spin. No strings attached. Maybe learn a couple of database concepts as well along the way because as we know, also many, many popular Java people out there tell you — I think there’s a quote around: people who use Hibernate should only use it if they know the database really, really well. If you don’t know the database, you shouldn’t be using Hibernate or something like that. So that’s also one other use case or any of them, right? You can of course download it, get going, check out new functionality, see what’s in there, see what your apps work, educate yourself.

Gerald: It’s just out there, no strings attached. So and that’s one of the things, again, that makes me very proud and the team very proud that we’ve finally gotten to a way where — I mean, historically we know, right? It’s like, why do people not use Oracle database? I think mostly it comes down to because they’re too scared that Oracle will hunt them down and ask them for licensing. Or money or something. And here we can truly say, Look guys, the reason why we call it Oracle Database Free is because it’s free, right? And we will never, ever come to you and ask you for money for this thing. Now, obviously, it’s under these free use terms and conditions, so there’s a license included with it. So, you know, read through it. We also give warranties with it, aka support. But it’s free. When you download it, we will never, ever come to you asking you for any money. And I think that’s a very important step forward to get the developers out there — with a new developer coming out of school or, a very seasoned developer to actually give Oracle database a go and see why it still ranks number one across many, many of these rankings. And maybe see for yourself that there’s cool stuff in there that I can use to build my app or, you know, to make my app even better.

James: Well, there you go. Oracle database is a New Kingmakers case study. Who knew?

Gerald: There we go. Yeah.

James: Okay. Great stuff. And on that happy note, thanks so much, Gerald. I think that’s really interesting. Let’s wrap it up. If anyone has any questions, Gerald is very accessible. We’re keen to answer them. You know, he has to be accessible, not just the database. But, any comments, put them below, subscribe, share this video and thanks for joining us today.

Gerald: Thank you very much.


More in this series

Conversations (76)