Utilisation du SODA pour REST avec Autonomous AI Database
Autonomous AI Database prend en charge Simple Oracle Document Access (SODA) pour REST.
- Présentation de l'utilisation de SODA pour REST
SODA pour REST est un service REST prédéployé qui peut être utilisé pour stocker des documents JSON dans votre base de données. - Chargement des données échantillon de commande d'achat à l'aide de SODA pour REST
Oracle fournit un ensemble important de documents de commande d'achat JSON, dans un fichier en texte brutPOList.json, en tant que tableau JSON d'objets, où chacun de ces objets représente un document. - Utilisation de SODA pour REST avec OAuth Informations d'identification client
Vous pouvez accéder à SODA pour REST sur une base de données Autonomous AI à l'aide de l'authentification OAuth. Selon votre application, l'accès à SODA pour REST avec l'authentification OAuth peut améliorer les performances et la sécurité.
Rubrique parent : Développement de services RESTful dans la base de données Autonomous AI
Présentation de l'utilisation de SODA pour REST
SODA permet un développement d'applications flexible de type NoSQL sans avoir à utiliser SQL. Avec SODA, les documents JSON sont stockés dans des collections nommées et gérés à l'aide d'opérations CRUD simples (créer, lire, mettre à jour et supprimer). Et bien que SQL ne soit pas requis, le JSON stocké dans les collections SODA est toujours entièrement accessible à partir de SQL si nécessaire. Par exemple, une application opérationnelle peut être entièrement créée à l'aide de SODA (sans SQL), mais les données peuvent ensuite être analysées à l'aide de SQL provenant de l'extérieur de l'application. Autonomous AI Database SODA offre aux développeurs d'applications le meilleur des mondes NoSQL et SQL : un développement d'applications rapide, flexible et évolutif sans perdre la capacité à tirer parti du langage SQL pour les analyses et le reporting.
SODA pour REST est déployé dans ORDS sous le modèle d'URL suivant, où schema correspond à un schéma de base de données compatible REST.
/ords/schema/soda/latest/*Les exemples suivants utilisent l'outil de ligne de commande cURL (http://curl.haxx.se/) pour soumettre des demandes REST à la base de données. Cependant, d'autres clients et bibliothèques REST 3e partie doivent également fonctionner. Les exemples utilisent le schéma de base de données ADMIN, qui est activé pour REST. Vous pouvez utiliser SODA pour REST avec des commandes cURL à partir d'Oracle Cloud Shell.
Cette commande crée une collection nommée "fruit" dans le schéma ADMIN :
> curl -X PUT -u 'ADMIN:<password>' \
"https://example-db.adb.us-phoenix-1.oraclecloudapps.com/ords/admin/soda/latest/fruit"
Ces commandes insèrent trois documents JSON dans la collection de fruits :
> curl -X POST -u 'ADMIN:<password>' \
-H "Content-Type: application/json" --data '{"name":"orange", "count":42}' \
"https://example-db.adb.us-phoenix-1.oraclecloudapps.com/ords/admin/soda/latest/fruit"
{"items":[{"id":"6F7E5C60197E4C8A83AC7D7654F2E375"...
> curl -X POST -u 'ADMIN:<password>' \
-H "Content-Type: application/json" --data '{"name":"pear", "count":5}' \
"https://example-db.adb.us-phoenix-1.oraclecloudapps.com/ords/admin/soda/latest/fruit"
{"items":[{"id":"83714B1E2BBA41F7BA4FA93B109E1E85"...
> curl -X POST -u 'ADMIN:<password>' \
-H "Content-Type: application/json" \
--data '{"name":"apple", "count":12, "color":"red"}' \
"https://example-db.adb.us-phoenix-1.oraclecloudapps.com/ords/admin/soda/latest/fruit"
{"items":[{"id":"BAD7EFA9A2AB49359B8F5251F0B28549"...
Cet exemple extrait un document JSON stocké de la collection :
> curl -X POST -u 'ADMIN:<password>' \
-H "Content-Type: application/json" --data '{"name":"orange"}' \
"https://example-db.adb.us-phoenix-1.oraclecloudapps.com/ords/admin/soda/latest/fruit?action=query"
{
"items": [
{
"id":"6F7E5C60197E4C8A83AC7D7654F2E375",
"etag":"57215643953D7C858A7CB28E14BB48549178BE307D1247860AFAB2A958400E16",
"lastModified":"2019-07-12T19:00:28.199666Z",
"created":"2019-07-12T19:00:28.199666Z",
"value":{"name":"orange", "count":42}
}
],
"hasMore":false,
"count":1
}
Cette requête SQL accède à la collection de fruits :
SELECT
f.json_document.name,
f.json_document.count,
f.json_document.color
FROM fruit f;
L'interrogation renvoie les trois lignes suivantes :
name count color
--------- --------- -------
orange 42 null
pear 5 null
apple 12 red
Si vous utilisez une base de données d'IA autonome Toujours gratuit avec Oracle AI Database 26ai, Oracle recommande les éléments suivants :
Pour les projets qui ont été démarrés à l'aide d'une version de base de données antérieure à Oracle Database 21c, indiquez explicitement les métadonnées de la collection par défaut, comme indiqué dans l'exemple de la section Pilotes SODA. Pour les projets qui commencent à utiliser la version Oracle Database 21c ou une version ultérieure, utilisez simplement les métadonnées par défaut. Pour plus d'informations, reportez-vous à Pilotes SODA.
Ces exemples illustrent un sous-ensemble des fonctionnalités SODA et SQL/JSON. Pour plus d'informations, reportez-vous à :
-
SODA pour REST pour des informations complètes sur Simple Oracle Document Access (SODA)
-
SODA pour les opérations HTTP REST, pour plus d'informations sur SODA pour les opérations HTTP REST
Rubrique parent : Utilisation de SODA pour REST avec Autonomous AI Database
Chargement des données échantillon de commande à l'aide de SODA pour REST
Oracle fournit un ensemble substantiel de documents de commande d'achat JSON, dans le fichier en texte brut POList.json, en tant que tableau JSON d'objets, où chaque objet représente un document.
Les exemples suivants utilisent l'outil de ligne de commande cURL (http://curl.haxx.se/) pour soumettre des demandes REST à la base de données. Cependant, d'autres clients et bibliothèques REST 3e partie doivent également fonctionner. Les exemples utilisent le schéma de base de données ADMIN, qui est activé pour REST. Vous pouvez utiliser SODA pour REST avec des commandes cURL à partir d'Oracle Cloud Shell.
Vous pouvez charger cet exemple de jeu de données de commande d'achat dans une collection purchaseorder sur votre base de données Autonomous AI avec SODA pour REST, à l'aide des commandes curl suivantes :
curl -X GET "https://raw.githubusercontent.com/oracle/db-sample-schemas/master/order_entry/POList.json" -o POList.json
curl -X PUT -u 'ADMIN:password' \
"https://example-db.adb.us-phoenix-1.oraclecloudapps.com/ords/admin/soda/latest/purchaseorder"
curl -X POST -H -u 'ADMIN:password' 'Content-type: application/json' -d @POList.json \
"https://example-db.adb.us-phoenix-1.oraclecloudapps.com/ords/admin/soda/latest/purchaseorder?action=insert"
Vous pouvez ensuite utiliser ces données de commande d'achat pour essayer des exemples dans le Guide du développeur Oracle AI Database JSON.
Par exemple, la requête suivante sélectionne à la fois la valeur id d'un document JSON et les valeurs de la collection de commandes d'achat JSON stockée dans la colonne json_document de la table purchaseorder. Les valeurs sélectionnées proviennent des champs PONumber, Reference et Requestor de la colonne JSON json_document, qui sont projetés à partir du document en tant que colonnes virtuelles (pour plus d'informations, reportez-vous à Clause SQL NESTED au lieu de JSON_TABLE).
SELECT id, t.*
FROM purchaseorder
NESTED json_document COLUMNS(PONumber, Reference, Requestor) t;
Pour plus d'informations, reportez-vous à :
-
SODA pour REST pour des informations complètes sur Simple Oracle Document Access (SODA)
-
SODA pour les opérations HTTP REST, pour plus d'informations sur SODA pour les opérations HTTP REST
Rubrique parent : Utilisation de SODA pour REST avec Autonomous AI Database
Utilisation de SODA pour REST avec les informations d'identification client OAuth
Vous pouvez accéder à SODA pour REST sur une base de données Autonomous AI à l'aide de l'authentification OAuth. Selon votre application, l'accès à SODA pour REST avec l'authentification OAuth peut améliorer les performances et la sécurité.
Pour utiliser l'authentification OAuth afin de fournir un accès limité à SODA pour REST sur une base de données Autonomous AI, procédez comme suit :
Pour plus d'informations sur l'accès sécurisé aux services RESTful, reportez-vous à Configuration de l'accès sécurisé aux services RESTful.
Rubrique parent : Utilisation de SODA pour REST avec Autonomous AI Database