Critical as they are, developers aren’t always given first dibs to test out and tinker with a new platform or service before the enterprise rolls it out.

This means that there’s often a learning curve and adjustment period, which can slow the app development process and time-to-market.

Oracle is looking to shift this model with the release of a free developer version of Oracle Database 23c. The company made the announcement at its CloudWorld Tour in Singapore.

The new release meets growing demand from developers and enterprises to access the newest features in Oracle Database 23c “App Simple.” Developers now have access to features aimed to simplify app development, ultimately preparing them for the upcoming long-term support release of Oracle Database 23c, which was released in beta at Oracle CloudWorld in October.

“This is a strong commitment that Oracle is making to the developer community,” Gerald Venzl, Oracle’s senior director for server technologies, said in a pre-briefing with SDxCentral. “But it doesn’t just help developers — it also fundamentally helps enterprise customers.”

Unifying JSON in Oracle Database 23c

Most notably, Oracle Database 23c free unifies JavaScript Object Notation (JSON) with the relational database model. JSON is a data-exchange format with human-readable text that can be used in JavaScript programs without the need for parsing or serializing. It is particularly suitable for storing temporary data.

With Oracle’s new model, enterprise data is stored as rows in tables to provide the benefits of the relational model and SQL access. Rows can include JSON columns to store data whose schema is dynamic or evolving, and data can be read and written as JSON documents, Venzl said.

Developers can pull out documents, make changes and return them, and the database automatically detects changes and modifies underlying rows. All duality views that share the same data immediately reflect this change, so there is no data duplication or inconsistencies, said Venzl.

Relational duality means one update is enough

Previously, if an organization had to do a product recall of 20,000 orders, every single one of those would need to be updated, changes would then need to be propagated, and developers would have to check back for consistency — what Venzl ultimately described as a “heavy and long operation.”

With relational duality, by contrast, one update is enough, operation is lightweight and no changes need to be propagated, he said.

Developers benefit from the best of both JSON and relational models, including ACID compliant transactions and concurrency controls, said Venzl. This means they no longer have to make tradeoffs between complex object-relational mappings or data inconsistency issues.

“Oracle Database 23c definitively ends the long-running ‘relational vs. document’ debate with JSON relational duality delivering the best of both worlds,” said Wikibon senior analyst Marc Staimer.

Carl Olofson, research VP for data management software at IDC, also commented that “this release finally gives developers an opportunity to try out a feature that unifies and synchronizes the documents and relational worlds.”

This functionality, he said, can enable developers and data engineers to access formats for each use case without worrying about data structure, mapping, consistency or performance tuning. They can also now run graph analytics on top of both relational and JSON data.

Ultimately, he called Oracle’s JSON Relational Duality, “a truly revolutionary solution,” and “perhaps one of the most important innovations in information science in 20 years.”

Driven by developer demand

Venzl pointed out that there has been a shift in power from IT operations to developers. Historically, ITops had decision power, they dictated their technology choices to developers, and they bought and owned the hardware and software stack (and then had to run and support them).

Now, though, developers decide the technology stack, he said. Time-to-market and competitive advantage empower them to choose the most productive stack, and running the stack has been automated by the cloud.

Along with this shift, “developers have a lot of choices out there,” said Venzl, pointing out that developers tend to like multi-model, general purpose databases.

With Oracle’s Database 23c, developers can “spin up a new database with the click of a button,” he said, and they can access data in whatever “relational world” they want. Not limited by budget or licenses, they can start development now, get familiarized with the workflow, build new apps and go quickly to production.

“This vastly simplifies the development process,” said Venzl. “This is why it has gotten such huge traction with the development community.”

Both developers and enterprises benefit

Ultimately, Venzl called the developer-first rollout a “first in Oracle database history.” Typically, Oracle has first released to enterprises; but by shifting that model, developers will be up to speed when organizations adopt Oracle Database 23C, enabling updates without delays.

“By releasing the next new version of Oracle database to developers first, fully free, they can go build the apps of the future,” said Venzl.

Steve Zivanic, Oracle’s global VP for database and autonomous services, agreed that, “it’s basically giving them the opportunity to get this technology now rather than wait.”

On the enterprise side, there’s no need for multiple databases. “It enables organizations to consolidate their costs, which is particularly important at times like this,” he said.

Key features of  Oracle Database 23c

The Oracle Database 23c Free developer release is available for download as a Docker Image, VirtualBox VM, or Linux RPM installation file. A user account or login is not required. A Windows version is planned to follow shortly, according to Oracle.

In addition to JSON relational duality, the free developer release includes the following, according to Oracle:

  • JavaScript stored procedures (powered by GraalVM): JavaScript code can now be executed closer to data by writing JavaScript stored procedures or loading existing JavaScript libraries into Oracle Database.
  • JSON schema: Developers can now ensure and validate JSON document structures via industry-standard JSON schemas, enabling confident and reliable use of the JSON data format.
  • Operational property graphs: Developers can now build both transactional and analytical property graph applications with Oracle Database using its new SQL standard property graph queries support. This includes running graph analytics on top of both relational and JSON data.
  • Oracle Kafka APIs: Kafka applications can now run against Oracle Database transactional event queues with minimal code changes. This enables more robust microservices built using transactional events that perform event operations and database changes in a single atomic transaction.
  • SQL domains: The new domain construct can act as lightweight type modifiers that centrally document intended data usage, extending and improving SQL standard domains. This allows developers to better understand how data is used and improves overall data quality, without the complexity and incompatibility of usage-specific data types or user-defined types.
  • Annotations: Database metadata can now be stored directly alongside the data with the new annotation mechanism inside the Oracle database. Developers can annotate common data model attributes for tables, columns, views, indexes, and more. This provides a central, lightweight, declarative facility to register and exchange usage properties across applications. Storing the metadata along with the data helps to guarantee consistency and universal accessibility to any user or application that uses the data.