Uso de documentos JSON con Autonomous Database on Dedicated Exadata Infrastructure

Autonomous Database on Dedicated Exadata Infrastructure soporta datos JavaScript Object Notation (JSON) de forma nativa con funciones de base de datos relacional, incluidas las transacciones, la indexación, la consulta declarativa y las vistas. En instancias de Autonomous Database, los documentos JSON pueden coexistir con datos relacionales.

A diferencia de los datos relacionales, los datos JSON se pueden almacenar en la base de datos, indexar y consultar sin necesidad de ningún esquema que defina los datos. En general, realizará las siguientes tareas al trabajar con datos JSON en Autonomous Database:
  1. Crear una columna JSON con una restricción de control is json format oson
  2. Insertar datos JSON en la columna, y
  3. Consultar los datos JSON
Consulte Trabajar con documentos JSON en Autonomous Database en Oracle Database 19c JSON Developer's Guide u Oracle Database 23ai JSON Developer's Guide para obtener instrucciones detalladas con ejemplos de código.

Note:

Si utiliza SODA para acceder a las recopilaciones en Oracle Database 19c, Oracle recomienda utilizar el cliente instantáneo para Oracle Database 21c o posterior, a fin de facilitar la migración al uso del tipo de dato JSON cuando se cambie la versión de la base de datos a la versión 21 o superior.

API de SQL y PL/SQL

Al utilizar una instancia de Autonomous Database para almacenar datos JSON, puede aprovechar todas las funciones disponibles en Autonomous Database. Puede combinar datos JSON con datos que no sean JSON. Puede acceder a los datos JSON almacenados en la base de datos de la misma forma que accede a otros datos de base de datos, que incluye el uso de Oracle Call Interface (OCI), Microsoft .NET Framework y Java Database Connectivity (JDBC). Consulte JSON en Oracle Database 19c u Oracle Database 23ai para obtener más información sobre el uso de las API de SQL y PL/SQL para trabajar con documentos JSON.

API de Oracle para soporte de MongoDB

La API de Oracle Database para MongoDB convierte el protocolo de transferencia MongoDB en sentencias SQL que ejecuta Oracle Database. Permite a los desarrolladores que tienen juegos de aptitudes MongoDB escribir aplicaciones de almacén de documentos JSON para Oracle Database que utilizan controladores y herramientas que entienden el protocolo MongoDB. Consulte Visión general de Oracle Database API para MongoDB en Oracle Database API para MongoDB para obtener una visión general detallada de esta API.

Consulte Uso de la API MongoDB con Oracle Autonomous Database para obtener instrucciones sobre la activación y el uso de la API MongoDB con Autonomous Database.

Simple Oracle Document Access (SODA)

Oracle también proporciona una familia de API de Simple Oracle Document Access (SODA) para acceder a los datos JSON almacenados en la base de datos. SODA se ha diseñado para el desarrollo de aplicaciones sin esquema sin un conocimiento de las funciones de base de datos relacional o de lenguajes como SQL y PL/SQL. Permite crear y almacenar recopilaciones de documentos en Oracle Database, recuperarlos y consultarlos, sin necesidad de saber cómo se almacenan los documentos en la base de datos. Para obtener más información sobre SODA, consulte la sección sobre Oracle como almacén de documentos y la sección de visión general de SODA.

Hay varias implantaciones de SODA:
  • SODA para REST: las solicitudes de transferencia de estado representativo (REST) realizan operaciones de documentos y recopilaciones mediante cualquier lenguaje capaz de realizar llamadas HTTP.
  • SODA para Java: las interfaces y las clases Java representan bases de datos, recopilaciones y documentos.
  • SODA para PL/SQL: los tipos de objetos PL/SQL representan recopilaciones y documentos.
  • SODA para C: los identificadores de Oracle Call Interface (OCI) representan recopilaciones y documentos.
  • SODA para Node.js: las API de SODA de estilo NoSQL se utilizan para insertar, consultar y recuperar documentos de SODA. Los objetos SodaDatabase, SodaCollection, SodaDocument, SodaDocumentCursor y SodaOperation representan las bases de datos, las recopilaciones, los documentos, el cursor de documento y las operaciones de lectura y escritura, respectivamente.
  • SODA para Python: los métodos cx_Oracle de estilo NoSQL se utilizan para insertar, consultar y recuperar documentos de SODA. Los objetos SodaDatabase, SodaCollection, SodaDocument, SodaDocumentCursor y SodaOperation representan las bases de datos, las recopilaciones, los documentos, el cursor de documento y las operaciones de lectura y escritura, respectivamente.
Puede descargar los controladores SODA desde la página Detalles de una instancia de Autonomous Database.

Metadatos de recopilación de SODA

Una recopilación de SODA es un juego de documentos respaldados por una tabla o una vista de Autonomous Database. Por defecto, la creación de una recopilación de documentos de SODA crea lo siguiente en Oracle Database:
  • Metadatos de recopilación persistente por defecto.
  • Tabla para almacenar la recopilación en el esquema de base de datos al que está conectado el cliente SODA.
Puede personalizar metadatos de recopilación para obtener un comportamiento diferente a los proporcionados por defecto. Los únicos metadatos que puede personalizar en Autonomous Database son el método de generación de clave-documento y el tipo de medio de contenido. En concreto, no puede cambiar el tipo de dato SQL de la columna que se utiliza para almacenar contenido JSON (la columna de contenido). Consulte Metadatos de recopilación de SODA en Autonomous Database para obtener información sobre cómo utilizar los metadatos de recopilación personalizados y por defecto.

Limitaciones sobre el uso de SODA y JSON

Autonomous Database soporta SODA y JSON, con las siguientes restricciones:
  • La indexación automática no está soportada para el código SQL y PL/SQL que utiliza la función SQL/JSON json_exists. Consulte Condición SQL/JSON JSON_EXISTS en Oracle Database 19c u Oracle Database 23ai para obtener más información.
  • La indexación automática no está soportada para la consulta mediante ejemplo (QBE) de SODA.