JSON-Dokumente mit Autonomous AI Database on Dedicated Exadata Infrastructure verwenden
Autonomous AI Database on Dedicated Exadata Infrastructure unterstützt JavaScript Object Notation-(JSON-)Daten nativ mit relationalen Datenbankfeatures, einschließlich Transaktionen, Indizierung, deklarativen Abfragen und Ansichten. In autonomen KI-Datenbanken können JSON-Dokumente zusammen mit relationalen Daten vorhanden sind.
Im Gegensatz zu relationalen Daten können JSON-Daten in der Datenbank gespeichert, indexiert und abgefragt werden, ohne dass ein Schema erforderlich ist, das die Daten definiert. Im Allgemeinen führen Sie die folgenden Aufgaben bei der Arbeit mit JSON-Daten in Autonomous AI Database aus:
-
JSON-Spalte mit einem
is json format oson-Check Constraint erstellen -
JSON-Daten in die Spalte einfügen
-
Fragen Sie die JSON-Daten ab. Ausführliche Anweisungen mit Codebeispielen finden Sie unter Mit JSON-Dokumenten inAutonomous AI Database arbeiten im Oracle Database 19c JSON Developer's Guide oder im Oracle Database 26ai JSON Developer's Guide.
Hinweis: Wenn Sie SODA auf Collections in Oracle Database 19c zugreifen, empfiehlt Oracle, dass Sie den Instant Client für Oracle Database 21c oder höher verwenden, um eine reibungslose Migration zur Verwendung des JSON-Datentyps bei einem Upgrade der Datenbank auf Release 21 oder höher zu ermöglichen.
SQL- und PL/SQL-APIs
Wenn Sie eine autonome KI-Datenbank zum Speichern von JSON-Daten verwenden, können Sie alle in Ihrer autonomen KI-Datenbank verfügbaren Features nutzen. Sie können JSON-Daten mit Nicht-JSON-Daten kombinieren. Auf JSON-Daten, die in der Datenbank gespeichert sind, können Sie genauso wie auf andere Datenbankdaten zugreifen, einschließlich Oracle Call Interface (OCI), Microsoft.NET Framework und Java Database Connectivity (JDBC). Unter JSON in Oracle Database 19c oder Oracle Database 26ai erfahren Sie, wie Sie mit SQL- und PL/SQL-APIs mit JSON-Dokumenten arbeiten.
Unterstützung für Oracle API for MongoDB
Oracle Database API for MongoDB übersetzt das MongoDB-Drahtprotokoll in SQL-Anweisungen, die von Oracle Database ausgeführt werden. Damit können Entwickler, die über MongoDB-Kenntnisse verfügen, JSON-Dokumentspeicheranwendungen für Oracle Database schreiben, die Treiber und Tools verwenden, die das MongoDB-Protokoll verstehen. Einen detaillierten Überblick über diese API finden Sie unter Überblick über Oracle Database API for MongoDB in Oracle Database API for MongoDB.
Anweisungen zum Aktivieren und Verwenden der MongoDB-API mit Autonomous AI Database finden Sie unter MongoDB-API mit Oracle Autonomous AI Database verwenden.
Simple Oracle Document Access (SODA)
Oracle stellt außerdem eine Familie von Simple Oracle Document Access-(SODA-)APIs für den Zugriff auf in der Datenbank gespeicherte JSON-Daten bereit. SODA wurde für die schemalose Anwendungsentwicklung ohne Kenntnisse über relationale Datenbankfeatures oder Sprachen wie SQL und PL/SQL entwickelt. Damit können Sie Collections von Dokumenten in Oracle Database erstellen, speichern, abrufen und abfragen, ohne zu wissen, wie die Dokumente in der Datenbank gespeichert sind. Weitere Informationen zu SODA finden Sie unter Überblick über SODA.
Es gibt mehrere Implementierungen von SODA:
-
SODA for REST: Representational State Transfer-(REST-)Anforderungen führen Collection- und Dokumentvorgänge mit einer beliebigen Sprache aus, die HTTP-Aufrufe tätigen kann.
-
SODA für Java: Java-Klassen und -Schnittstellen stellen Datenbanken, Collections und Dokumente dar.
-
SODA für PL/SQL: PL/SQL-Objekttypen stellen Collections und Dokumente dar.
-
SODA für C: Oracle Call Interface-(OCI-)Handles stellen Collections und Dokumente dar.
-
SODA für Node.js: SODA-APIs mit NoSQL-Stil werden zum Einfügen, Abfragen und Abrufen der SODA-Dokumente verwendet. Objekte wie SodaDatabase, SodaCollection, SodaDocument, SodaDocumentCursor und SodaOperation stellen die Datenbanken, Collections, Dokumente, Dokumentcursor und Lese-/Schreibvorgänge dar.
-
SODA für Python: cx_Oracle-Methoden in NoSQL-Stil werden zum Einfügen, Abfragen und Abrufen der SODA-Dokumente verwendet. Objekte wie SodaDatabase, SodaCollection, SodaDocument, SodaDocumentCursor und SodaOperation stellen die Datenbanken, Collections, Dokumente, Dokumentcursor und Lese-/Schreibvorgänge dar.
Sie können die SODA-Treiber von der Seite Details einer autonomen KI-Datenbank herunterladen.
-
Gehen Sie zur Seite Details der autonomen KI-Datenbank. Siehe Details einer dedizierten autonomen KI-Datenbank anzeigen.
-
Öffnen Sie die Registerkarte Tools.
-
Suchen sie die Kachel SODA-Treiber, und klicken Sie auf SODA-Treiber herunterladen.
-
Laden Sie die gewünschten SODA-Treiber aus der angezeigten Treiberliste herunter.
SODA-Collection-Metadaten
Eine SODA-Collection ist eine Gruppe von Dokumenten, die von einer autonomen AI-Datenbanktabelle oder -View unterstützt wird. Beim Erstellen einer SODA-Dokuments-Collection wird standardmäßig Folgendes in Oracle Database erstellt:
-
Persistente Metadaten der Standard-Collection.
-
Eine Tabelle zum Speichern der Collection im Datenbankschema, bei dem der SODA-Client verbunden ist. Sie können Collection-Metadaten anpassen, um ein anderes Verhalten zu erzielen, als das standardmäßig bereitgestellte. Die einzigen Metadaten, die Sie in Autonomous AI Database anpassen können, sind die Methode zur Dokumentschlüsselgenerierung und der Inhaltsmedientyp. Insbesondere können Sie den SQL-Datentyp der Spalte zum Speichern von JSON-Inhalten (Inhaltsspalte) nicht ändern. Unter SODA-Collection-Metadaten in autonomer KI-Datenbank wird erläutert, wie Sie die standardmäßigen und angepassten Collection-Metadaten verwenden.
Einschränkungen bei der Verwendung von SODA und JSON
Autonomous AI Database unterstützt SODA und JSON mit den folgenden Einschränkungen:
-
Die automatische Indexierung wird für SQL- und PL/SQL-Code, der die SQL/JSON-Funktion
json_existsverwendet, nicht unterstützt. Weitere Informationen finden Sie unter SQL/JSON-Bedingung JSON_EXISTS in Oracle Database 19c oder Oracle Database 26ai. -
Automatische Indexierung wird für SODA-Query-by-Example (QBE) nicht unterstützt.