Utilisation de documents JSON avec Autonomous Database on Dedicated Exadata Infrastructure

Autonomous Database on Dedicated Exadata Infrastructure prend en charge de manière native les données JSON (Object Notation) JavaScript avec des fonctionnalités de base de données relationnelle, notamment les transactions, l'indexation, les requêtes déclaratives et les vues. Dans les bases de données autonomes, les documents JSON peuvent coexister avec les données relationnelles.

Contrairement aux données relationnelles, les données JSON peuvent être stockées dans la base de données, indexées et interrogées sans avoir besoin d'un schéma définissant les données. En général, vous effectuez les tâches suivantes lorsque vous utilisez des données JSON dans Autonomous Database :
  1. Créer une colonne JSON avec une contrainte de vérification is json format oson
  2. Insérer des données JSON dans la colonne
  3. Interroger les données JSON
Pour obtenir des instructions détaillées avec des exemples de code, reportez-vous à Utilisation de documents JSON dans Autonomous Database dans le guide du développeur JSON 19c Oracle Database ou le guide du développeur JSON Oracle Database 23ai.

Remarques :

Si vous utilisez SODA pour accéder aux collections dans Oracle Database 19c, Oracle recommande d'utiliser le client instantané pour Oracle Database 21c ou version ultérieure, afin de faciliter la migration vers l'utilisation du type de données JSON lors de la mise à niveau de votre base de données vers la version 21 ou ultérieure.

API SQL et PL/SQL

Lorsque vous utilisez une instance Autonomous Database pour stocker des données JSON, vous pouvez tirer parti de toutes les fonctionnalités disponibles dans votre instance Autonomous Database. Vous pouvez combiner les données JSON avec des données non JSON. Vous pouvez accéder aux données JSON stockées dans la base de données de la même façon qu'aux autres données, y compris à l'aide d'Oracle Call Interface (OCI), de Microsoft .NET Framework et de JDBC (Java Database Connectivity). Reportez-vous à JSON dans Oracle Database 19c ou Oracle Database 23ai pour apprendre à utiliser les API SQL et PL/SQL afin de travailler avec des documents JSON.

Prise en charge de l'API Oracle pour MongoDB

L'API Oracle Database pour MongoDB convertit le protocole de connexion MongoDB en instructions SQL exécutées par Oracle Database. Il permet aux développeurs disposant d'ensembles de compétences MongoDB d'écrire des applications de banque de documents JSON pour Oracle Database qui utilisent des pilotes et des outils qui comprennent le protocole MongoDB. Pour obtenir une présentation détaillée de cette API, reportez-vous à Présentation de l'API Oracle Database pour MongoDB dans API Oracle Database pour MongoDB.

Pour obtenir des instructions sur l'activation et l'utilisation de l'API MongoDB avec Autonomous Database, reportez-vous à Utilisation de l'API MongoDB avec Oracle Autonomous Database.

SODA (Simple Oracle Document Access)

Oracle fournit également une famille d'API SOA (Simple Oracle Document Access) pour l'accès aux données JSON stockées dans la base de données. SODA est conçu pour le développement d'applications sans schéma, sans connaissances sur les fonctionnalités de base de données relationnelle ou les langages tels que SQL et PL/SQL. Il permet de créer et de stocker des collections de documents dans Oracle Database, de les extraire et de les interroger sans obligatoirement savoir comment les documents sont stockés dans la base de données. Pour plus d'informations sur SODA, reportez-vous à Oracle en tant que banque de documents et à Présentation de SODA.

Il existe plusieurs implémentations de SODA :
  • SODA pour REST : les demandes de transfert d'état de représentation (REST) effectuent des opérations de collecte et de document, à l'aide de n'importe quel langage capable d'effectuer des appels HTTP.
  • SODA pour Java : les classes et interfaces Java représentent les bases de données, les collections et les documents.
  • SODA pour PL/SQL : les types d'objet PL/SQL représentent les collections et les documents.
  • SODA pour C : les descripteurs Oracle Call Interface (OCI) représentent les collections et les documents.
  • SODA pour Node.js : les API SODA de type NoSQL sont utilisées pour insérer, interroger et extraire les documents SODA. Les objets tels que SodaDatabase, SodaCollection, SodaDocument, SodaDocumentCursor et SodaOperation représentent respectivement les bases de données, les collections, les documents, le curseur de document et les opérations de lecture/écriture.
  • SODA pour Python : les méthodes cx_Oracle de type NoSQL sont utilisées pour insérer, interroger et extraire les documents SODA. Les objets tels que SodaDatabase, SodaCollection, SodaDocument, SodaDocumentCursor et SodaOperation représentent respectivement les bases de données, les collections, les documents, le curseur de document et les opérations de lecture/écriture.
Vous pouvez télécharger les pilotes SODA à partir de la page Détails d'une instance Autonomous Database.
  • Accédez à la page Détails de l'instance Autonomous Database. Reportez-vous à Affichage des détails d'une base de données autonome dédiée.
  • Ouvrez l'onglet Outils.
  • Localisez la mosaïque Inducteurs SODA, puis cliquez sur Télécharger les pilotes SODA.
  • Téléchargez les pilotes SODA de votre choix parmi la liste de pilotes affichée.

Métadonnées de collection SODA

Une collection SODA est un ensemble de documents soutenu par une table ou une vue Autonomous Database. Par défaut, la création d'une collection de documents SODA crée les éléments suivants dans Oracle Database :
  • Métadonnées de collection par défaut persistantes
  • Table permettant de stocker la collection dans le schéma de base de données auquel votre client SODA est connecté
Vous pouvez personnaliser les métadonnées de collection pour obtenir un comportement différent de celui par défaut. Les seules métadonnées que vous pouvez personnaliser dans Autonomous Database sont la méthode de génération de clé de document et le type de support de contenu. En particulier, vous ne pouvez pas modifier le type de données SQL de la colonne utilisée pour stocker le contenu JSON (colonne de contenu). Pour découvrir comment utiliser les métadonnées de collection par défaut et personnalisées, reportez-vous à Métadonnées de collecte SODA sur Autonomous Database.

Limites relatives à l'utilisation de SODA et JSON

Autonomous Database prend en charge SODA et JSON, avec les restrictions suivantes :
  • L'indexation automatique n'est pas prise en charge pour le code SQL et PL/SQL qui utilise la fonction SQL/JSON json_exists. Pour plus d'informations, reportez-vous à Condition SQL/JSON JSON_EXISTS dans Oracle Database 19c ou Oracle Database 23ai.
  • L'indexation automatique n'est pas prise en charge pour les requêtes par l'exemple SODA.