The world of application development is about to be transformed. An Oracle innovation, a standard feature in Oracle Database 23ai, bridges a long-standing gap between relational databases and object-oriented programming.
Developers, for the first time, are able to build applications with their favorite object-oriented tools, while automatically and transparently benefiting from the relational database’s underlying capabilities, such as concurrency controls and ACID (atomicity, consistency, isolation, and durability) transactions.
It’s a major advance, yet one with no learning curve.
This stroke of database genius is called JSON Relational Duality Views. That name should warm the hearts of database administrators and development teams alike because it unites JSON and relational—two of the most widely used technologies—in a singular way. But it’s also a technical term that may need to be unpacked for business managers. So let’s start with a short and simple explanation.
JSON, which stands for JavaScript Object Notation, is a 20-year-old data transfer format and industry standard. JSON is nearly synonymous with document databases, but it’s not exclusive to them. Oracle has supported JSON natively in Oracle Database since 2014. (For more on JSON and how it is used, check out the article “What Is JSON?”)
So what’s new? The breakthrough with JSON Relational Duality Views is that developers can take advantage of both the JSON and relational models in one fell swoop. Using object-oriented programming, they can think and act in familiar ways with JSON documents for data access when building applications. At the same time, the system retains the relational structure for data storage.
That’s huge because it combines the goodness of the relational model—data is “normalized” in rows and columns for consistency and integrity—with the look, feel, and useability of JSON documents. Put simply, data is stored in relational format and accessed in document format.
It’s JSON in, JSON out.Gerald Venzl Senior Director of Product Management, Oracle
This unified experience is key because enterprise data management has long been bifurcated. On one hand, CIOs and CTOs have put their faith—and years of investment—in relational database management systems such as Oracle Database to help ensure the highest levels of performance and reliability. On the other, developers have gravitated to the object-oriented paradigm because it’s a more intuitive way to build applications.
As a result, many IT departments use relational databases for mission-critical workloads and document databases with object-oriented programming for others. That makes sense for some use cases, but it’s inefficient. With JSON Relational Duality Views, this kind of multipronged approach is no longer necessary.
Why is that so beneficial?
One issue with document databases is that information is stored redundantly due to the hierarchical nature of JSON documents. That can lead to inconsistencies as data must be updated in multiple places. With JSON Relational Duality Views, data is stored once—in relational tables, where it is accessed, written, and modified. This helps bring consistency even when multiple apps use the same data, such as name, address, or payment information.
Oracle customers will appreciate that JSON Relational Duality Views benefits from the other capabilities of Oracle Database 23ai, such as replication, integration with database queries, and ACID transactions. And, in practice, it does that without a trade-off in performance compared with document databases.
As someone who covers the full tech stack, from microprocessors to enterprise applications, I tend to view new technologies through the lens of relative complexity. Does a new capability further complicate today’s already-complex IT environment? Or does it automate and simplify?
JSON Relational Duality Views can reduce complexity by streamlining data infrastructure and making life easier for DBAs and developers. Here’s a detailed view of how it works: It transforms incoming JSON documents into rows and columns in the relational database. Then, when queried, the database composes and returns a JSON document.
“It’s JSON in, JSON out,” says Gerald Venzl, Oracle senior director of product management, who briefed me on the new technology.
When a document is updated, Oracle Database 23ai will detect the changes and automatically modify the rows that have changed. Data isn’t duplicated.
“You get the power of consistency,” says Venzl.
These capabilities can be used for any data types—spatial, graph, or relational—and by any app, written in any language. In other words, JSON Relational Duality Views is easy to implement.
As you can see, there are many ways that it can improve your organization’s database and development environment.
JSON Relational Duality Views promises to be a transformational new capability for the following reasons:
Oracle demonstrated JSON Relational Duality Views for the first time at Oracle CloudWorld 2023.
“You get the best of everything—the consistency and query-ability of relational, with the power and simplicity of JSON,” explained Juan Loaiza, Oracle executive vice president of mission-critical database technologies. “This is going to be an industry-wide transition. It’s the next generation of data management and data science.”
For business and technology leaders and their teams, it’s a welcome new way of working. They no longer must choose between the object-oriented programming they love and the relational databases they trust. It’s the best of both worlds—or multiple worlds—as developers combine data types in Oracle’s converged database.
John Foley is editor of the Cloud Database Report and a vice president with Method Communications.
This article was updated on May 8 to account for an Oracle Database 23c name change to Oracle Database 23ai.
Vectors enable businesses to augment the LLMs used for generative AI. Here’s why the new vector data type should live in your existing database.
JSON Relational Duality is a landmark capability in Oracle Database 23c providing game-changing flexibility and simplicity for Oracle Database developers.