SODA allows the Oracle Database to be used as a powerful NoSQL store, supporting key-based access to all documents, and query-based access to JSON documents, all without needing to use SQL. Because SODA is built on top of the Oracle database, you get proven Oracle enterprise-grade reliability and many features typically lacking in NoSQL stores, such as transactions. If desired, you can still access SODA documents directly with SQL.
The primary abstraction provided by SODA is a collection of documents. SODA is particularly powerful when it comes to JSON documents, though all other types of documents are supported. JSON documents in SODA can be queried using intuitive template-like queries, without needing to write SQL. These queries are also expressed in JSON, and called QBEs (query-by-example).
SODA is built on top of native JSON support in the Oracle database. Under the covers, document collections are stored in Oracle database relational tables, which can be accessed directly as well, for example by reporting tools.
The Exadata Express service provides the following implementations of SODA:
SODA Over REST
This implementation of SODA is part of Oracle REST Data Services (ORDS), and is usable from any language capable of making HTTP requests. See About SODA for REST.
SODA for Java
The Java library supports SODA for use with the Java programming language. See Using SODA for Java.
SODA for SQLcl