Utilisation de la console pour créer des tables dans Oracle NoSQL Database Cloud Service
Découvrez comment créer et gérer des tables et index Oracle NoSQL Database Cloud Service à partir de la console.
Cet article comprend les rubriques suivantes :
Création d'un compartiment
Lorsque vous vous inscrivez à Oracle Cloud Infrastructure, Oracle crée votre location avec un compartiment racine contenant toutes vos ressources cloud. Vous créez ensuite des compartiments supplémentaires dans la location (compartiment racine) et des stratégies correspondantes pour contrôler l'accès aux ressources dans chaque compartiment. avant de créer une table Oracle NoSQL Database Cloud Service, Oracle vous recommande de configurer le compartiment dont la table doit appartenir.
Vous créez des compartiments dans Oracle Cloud Infrastructure Identity and Access Management (IAM). Reportez-vous à Configuration de votre location et à Gestion des compartiments
Créer des tables uniques
Vous pouvez créer une table Oracle NoSQL Database Cloud Service à partir de la console NoSQL.
La console NoSQL vous permet de créer les tables Oracle NoSQL Database Cloud Service dans deux modes :
-
Mode d'entrée simple : vous pouvez utiliser ce mode pour créer la table de service NoSQL Database Cloud de manière déclarative, c'est-à- dire sans écrire d'instruction DDL.
-
Mode d'entrée DDL avancée : vous pouvez utiliser ce mode pour créer la table de service NoSQL Database Cloud à l'aide d'une instruction DDL.
Créer une table unique : mode d'entrée simple
Découvrez comment créer une table à partir de la console NoSQL en utilisant le mode de création de table d'entrée simple.
Crée une table:
-
Accédez de la console NoSQL à partir de la console Infrastructure. Reportez-vous à Accès au service à partir de la console Infrastructure.
-
Cliquez sur Créer une table.
-
Dans la boîte de dialogue Créer une table, sélectionnez Entrée simple pour Mode de création de table.
-
Sous Capacité réservée, vous pouvez activer la configuration Toujours gratuit ou configurer le mode Capacité. La configuration Toujours gratuit n'est actuellement disponible que dans la région Phoenix.
-
Always Free Configuration (disponible uniquement dans la région Phoenix) :
Activez le bouton à bascule pour créer une table NoSQL Toujours gratuit. La désactivation du bouton à bascule crée une table NoSQL standard. Vous pouvez créer jusqu'à trois tables NoSQL Toujours gratuit dans la location. Si la location comporte trois tables NoSQL Toujours gratuit, le bouton bascule permettant de créer une table SQL Toujours gratuit est désactivé.
Si vous activez le bouton à bascule pour créer une table NoSQL Toujours gratuit, des valeurs par défaut sont affectées aux champs Capacité de lecture, Capacité d'écriture et Stockage sur disque. Le mode Capacité devient Capacité provisionnée. Ces valeurs ne peuvent pas être modifiées.
Pour en savoir plus sur les détails, les fonctionnalités et les restrictions des tables créées avec l'option Configuration Toujours gratuit, vous pouvez voir Service Toujours gratuit.

Description de l'image crttbl_af_prov.png
Si vous souhaitez créer une table standard, désactivez le bouton à bascule. Vous pourrez saisir les valeurs de capacité appropriées pour la table.
-
Capacité de cours (ReadUnits) : saisissez le nombre d'unités de cours. Pour en savoir plus sur les unités de lecture, reportez-vous à Estimation de la capacité.
-
Capacité d'écriture (WriteUnits) : saisissez le nombre d'unités d'écriture. Pour en savoir plus sur les unités d'écriture, reportez-vous à Estimation de la capacité.
-
Stockage sur disques (Go) : indiquez l'espace disque en giga-octets (Go) à utiliser par la table. Pour en savoir plus sur la capacité de stockage, reportez-vous à Estimation de la capacité.

-
-
Mode de capacité
Vous pouvez indiquer l'option Capacité provisionnée ou Capacité à la demande pour le mode Capacité. Les modes Capacité provisionnée et Capacité à la demande s'excluent mutuellement. Si vous activez la capacité On Demand pour une table, vous n'avez pas besoin d'indiquer la capacité de lecture/écriture de la table. Vous êtes facturé pour l'utilisation réelle des unités de lecture et d'écriture, et non pour l'utilisation provisionnée.
L'activation de la capacité à la demande pour une table est une bonne option si l'une des conditions suivantes est remplie :
-
Vous créez de nouvelles tables avec des charges globales inconnues.
-
Vous avez un trafic d'application imprévisible.
-
Vous préférez la facilité de payer uniquement pour ce que vous utilisez.
Limites de l'activation de la capacité à la demande pour une table :
-
La capacité à la demande limite la capacité de la table à 5 000 écritures et 10 000 lectures.
-
Le nombre de tables avec capacité On Demand par locataire est limité à 3.
-
Vous payez plus par unité pour les unités de table de capacité à la demande que pour les unités de table provisionnées.

Description de l'image crttbl_paid_prov.png
Si vous sélectionnez Capacité à la demande, l'option Configuration Toujours gratuit est désactivée. Les zones d'entrée Read Capacity et Write Capacity sont en lecture seule et affichent le texte On Demand Capacity. Les tables de capacité à la demande affichent Capacité à la demande dans leurs colonnes de capacité de lecture et d'écriture. Si le mode Capacité est Capacité à la demande, le contrôle Toujours gratuit est désactivé. Indiquez la valeur de stockage sur disque (Go).

-
-
-
Dans le champ Nom, entrez un nom de table unique dans votre location.
Les noms de table doivent être conformes aux conventions d'appellation Oracle NoSQL Database Cloud Service. Reportez-vous à Limites d'Oracle NoSQL Database Cloud Service.
-
Dans la section Colonnes de clé primaire, saisissez les détails de cette clé primaire :
-
Nom de la colonne : saisissez le nom d'une colonne pour la clé primaire dans votre table. Pour en savoir plus sur les exigences en matière de dénomination des colonnes, reportez-vous à Limites Oracle NoSQL Database Cloud Service.
-
Type : sélectionnez le type de données de votre colonne de clé primaire.
-
Précision : cette case s'applique uniquement aux colonnes de type
TIMESTAMP. Les valeurs d'horodatage ont une précision en fractions de seconde comprise entre 0 et 9. Par example, une précision de 0 signifie qu'aucune fraction de seconde n'est stockée, 3 signifie que l'horodatage stocke des millisecondes et 9 signifie une précision de nanosecondes. 0 est la précision minimale et 9 est le maximum. -
Définir en tant que clé de shards : cliquez sur cette option pour définir cette colonne d'une clé primaire en tant que clé de shards. Le principal objectif des clés de shard est de distribuer des données dans le cluster Oracle NoSQL Database Cloud Service pour améliorer l'efficacité, et de placer des enregistrements qui partagent la clé de shart localement pour faciliter l'utilisation et l'accès. Les enregistrements partageant la clé de shard sont stockés dans le même emplacement physique, et vous pouvez y accéder de façon atomique et efficace.
-
+ Autre colonne de clé primaire : cliquez sur ce bouton pour ajouter d'autres colonnes lors de la création d'une clé primaire composite (plusieurs couleurs).
-
Utilisez les flèches vers le haut et le bas pour modifier la séquence des colonnes lors du processus de création d'une clé primaire composite.

-
-
Dans la section Colonnes, entrez les détails de la colonne secondaire :

Description de l'illustration createtable_col.png
-
Nom de colonne : entrez le nom des colonnes. Veillez à respecter les exigences relatives à la dénomination des colonnes décrites dans Limites Oracle NoSQL Database Cloud Service.
-
Type : sélectionnez le type de données de votre colonne.
-
Précision : cette case s'applique uniquement aux colonnes de type
TIMESTAMP. Les valeurs d'horodatage ont une précision en fractions de seconde comprise entre 0 et 9. Par example, une précision de 0 signifie qu'aucune fraction de seconde n'est stockée, 3 signifie que l'horodatage stocke des millisecondes et 9 signifie une précision de nanosecondes. 0 est la précision minimale et 9 est le maximum. -
Taille : ce champ s'applique uniquement aux colonnes de type
BINARY. Indiquez la taille en octets pour rendre le fichier binaire fixe. -
Valeur par défaut : (facultatif) indiquez une valeur par défaut pour la colonne.
Remarque : Les valeurs par défaut ne peuvent être indiquées pour les colonnes d'un type de données binaire et JSON.
-
La valeur n'est pas NULL : cliquez sur cette option pour indiquer qu'une colonne doit toujours comporter une valeur.
-
+ Autre colonne : cliquez sur ce bouton pour ajouter d'autres colonnes.
-
Cliquez sur l'icône de suppression pour supprimer une colonne.
-
-
(Facultatif) Indiquez la durée d'expiration (nombre de jours) des lignes de la table dans le champ Durée de vie de la table (jours). Après le nombre de jours, les lignes expirent automatiquement et ne sont plus disponibles. La valeur par défaut est zéro, ce qui indique l'absence de délai d'expiration.
Remarque : la mise à jour de l'heure de la Table sur la durée de validité ne modifie pas la valeur de la durée de validité des données existantes dans la table. La nouvelle valeur de durée de vie ne s'applique qu'aux lignes ajoutées à la table après la modification de cette valeur et aux lignes pour lesquelles aucune valeur spécifique de ligne de remplacement n'a été fournie.
-
(Facultatif) Pour spécifier des options avancées, sélectionnez Afficher l'option avancée et saisissez les détails avancés :
Dans la section Balises, entrez les informations suivantes :
-
Espace de noms de la balise : sélectionnez un espace de noms de la balise dans la liste. Un espace de noms de balise est comme un conteneur pour vos clés de balise. Aucune distinction n'est faite entre les majuscules et les minuscules, et le nom doit être unique dans la location.
-
Clé de Balise : entrez le nom à utiliser pour faire référence à la balise. Pour les clés de balise, la distinction n'est pas faite entre les majuscules et les minuscules. Leur nom doit être unique dans un espace de noms.
-
Valeur de balise : entrez la valeur à attribuer à la balise.
-
Ajouter une balise : cliquez ici pour ajouter d'autres balises.

-
-
Sélectionnez Créer une table.
La table est créée et répertoriée dans la console NoSQL.
Pour afficher l'aide de la page en cours, cliquez sur le lien d'aide en haut de la page.
Créer une table unique : mode d'entrée LDD avancé
Découvrez comment créer une table à partir de la console NoSQL en utilisant le mode de création de table d'entrée DDL avancée.
Crée une table:
-
Accédez à la console NoSQL à partir de la console Infrastructure. Reportez-vous à Accès au service à partir de la console d'infrastructure.
-
Sélectionnez Créer une table.
-
Dans la fenêtre Créer une table, sélectionnez Entrée DDL avancée pour Mode de création de table.
-
Sous Capacité réservée, vous pouvez activer la configuration Toujours gratuit ou configurer le mode Capacité.
-
Always Free Configuration (disponible uniquement dans la région Phoenix) :
Activez le bouton à bascule pour créer une table NoSQL Toujours gratuit. La désactivation du bouton à bascule crée une table NoSQL standard. Vous pouvez créer jusqu'à trois tables NoSQL Toujours gratuit dans la location. Si la location comporte trois tables NoSQL Toujours gratuit, le bouton bascule permettant de créer une table SQL Toujours gratuit est désactivé.
Si vous activez le bouton à bascule pour créer une table NoSQL Toujours gratuit, des valeurs par défaut sont affectées aux champs Capacité de lecture, Capacité d'écriture et Stockage sur disque. Le mode Capacité devient Capacité provisionnée. Ces valeurs ne peuvent pas être modifiées.
Pour en savoir plus sur les détails, les fonctionnalités et les restrictions des tables créées avec l'option Configuration Toujours gratuit, vous pouvez voir Service Toujours gratuit.

Description de l'image crttbladv_af_prov.png
Si vous souhaitez créer une table standard, désactivez le bouton à bascule. Vous pourrez saisir les valeurs de capacité appropriées pour la table.
-
Capacité de cours (ReadUnits) : saisissez le nombre d'unités de cours. Pour en savoir plus sur les unités de lecture, reportez-vous à Estimation de la capacité.
-
Capacité d'écriture (WriteUnits) : saisissez le nombre d'unités d'écriture. Pour en savoir plus sur les unités d'écriture, reportez-vous à Estimation de la capacité.
-
Stockage sur disques (Go) : indiquez l'espace disque en giga-octets (Go) à utiliser par la table. Pour en savoir plus sur la capacité de stockage, reportez-vous à Estimation de la capacité.

-
-
Mode de capacité
Vous pouvez indiquer l'option Capacité provisionnée ou Capacité à la demande pour le mode Capacité. Les modes Capacité provisionnée et Capacité à la demande s'excluent mutuellement. Si vous activez la capacité On Demand pour une table, vous n'avez pas besoin d'indiquer la capacité de lecture/écriture de la table. Vous êtes facturé pour l'utilisation réelle des unités de lecture et d'écriture, et non pour l'utilisation provisionnée.
L'activation de la capacité à la demande pour une table est une bonne option si l'une des conditions suivantes est remplie :
-
Vous créez de nouvelles tables avec des charges globales inconnues.
-
Vous avez un trafic d'application imprévisible.
-
Vous préférez la facilité de payer uniquement pour ce que vous utilisez.
Limites de l'activation de la capacité à la demande pour une table :
-
La capacité à la demande limite la capacité de la table à 5 000 écritures et 10 000 lectures.
-
Le nombre de tables avec capacité On Demand par locataire est limité à 3.
-
Vous payez plus par unité pour les unités de table de capacité à la demande que pour les unités de table provisionnées.

Description de l'image crttbladv_paid_prov.png
Si vous sélectionnez Capacité à la demande, l'option Configuration Toujours gratuit est désactivée. Les zones d'entrée Read Capacity et Write Capacity sont en lecture seule et affichent le texte On Demand Capacity. Les tables de capacité à la demande affichent Capacité à la demande dans leurs colonnes de capacité de lecture et d'écriture. Si le mode Capacité est Capacité à la demande, le contrôle Toujours gratuit est désactivé. Indiquez la valeur de stockage sur disque (Go).

-
-
-
Dans la section Entrée DDL, entrez l'instruction de création de table DDL pour Requête. Vous pouvez obtenir une erreur indiquant que votre instruction est incomplète ou erronée. Reportez-vous à Débogage des erreurs d'instruction SQL dans la console OCI pour en savoir plus sur les erreurs possibles dans la console OCI et sur la façon de les corriger. Pour obtenir des exemples d'instruction de création de table, reportez-vous au Guide des développeurs.
-
(Facultatif) Pour spécifier des options avancées, sélectionnez Afficher l'option avancée et saisissez les détails avancés :
- Espace de noms de la balise : sélectionnez un espace de noms de la balise dans la liste. Un espace de noms de balise est comme un conteneur pour vos clés de balise. Aucune distinction n'est faite entre les majuscules et les minuscules, et le nom doit être unique dans la location.
- Clé de Balise : entrez le nom à utiliser pour faire référence à la balise. Pour les clés de balise, la distinction n'est pas faite entre les majuscules et les minuscules. Leur nom doit être unique dans un espace de noms.
- Valeur de balise : entrez la valeur à attribuer à la balise.
-
Ajouter une balise : cliquez ici pour ajouter d'autres balises.

-
Cliquez sur Créer une table.
La table est créée et répertoriée dans la console NoSQL.
Pour afficher l'aide de la page en cours, cliquez sur le lien d'aide en haut de la page.
Créer une table enfant
Avec Oracle NoSQL Database, vous pouvez créer des tables dans une structure hiérarchique (en tant que tables parent-enfant).
Hiérarchies de table
Vous pouvez utiliser l'instruction create table pour créer une table en tant que table enfant d'une autre table, qui devient alors le parent de la nouvelle table. Pour ce faire, utilisez un nom de composite (nom_chemin) pour la table enfant. Un nom composite est constitué d'un nombre N (N > 1) d'identificateurs séparés par des points. Le dernier identificateur est le nom local de la table enfant et les N-1 premiers identificateurs sont le nom du parent.
A
/ \
A.B A.G
/
A.B.C
/
A.B.C.D
La table parent la plus élevée est A. La table enfant B obtient le nom composite A.B. Le niveau suivant de la table enfant C obtient le nom composite A.B.C, etc.
Propriétés des tables enfant :
-
Vous ne pouvez pas spécifier la capacité de lecture, la capacité d'écriture ou les limites de stockage sur disque lors de la création d'une table enfant. La table enfant partage les valeurs correspondantes de la table parent.
-
Une table enfant est comptabilisée dans le nombre total de tables d'une location.
-
Une table parent et ses tables enfant se trouvent toujours dans le même compartiment.
-
Les informations de mesure sont collectées et agrégées au niveau parent. Aucune mesure n'est visible au niveau des tables enfant.
-
Une table enfant possède ses propres balises, indépendamment de la table parent.
-
Une table enfant hérite également du modèle de tarification de la capacité de la table parent. Par exemple, si la table parent est configurée avec la capacité On Demand, la table enfant peut également être configurée avec le même modèle de tarification de la capacité.
Transactions dans les tables parent-enfant
Une table parent et une table enfant partagent la même clé de shard. A l'aide de tables enfant, vous pouvez réaliser des transactions ACID sur plusieurs objets en procédant comme suit :
-
Déclarez une table comme enfant d'une autre table.
-
Utilisez l'API
writeMutliplepour ajouter des opérations aux tables parent et enfant.
En l'absence de tables enfant, la réalisation de transactions ACID sur plusieurs objets est une procédure fastidieuse. Sans tables enfant, vous effectuez les opérations suivantes :
-
Recherchez les valeurs de clé de shard pour tous les objets à inclure dans une transaction.
-
Assurez-vous que les clés de shard pour tous les objets sont égales.
-
Utilisez l'API
writeMutliplepour ajouter chaque objet à une collection.
Utiliser des tables enfant pour réaliser facilement des transactions ACID sur plusieurs objets.
Autorisation dans une table enfant :
Si vous ne possédez pas de table et que vous souhaitez lire, supprimer ou insérer dans cette table, deux conditions doivent être remplies :
-
Vous disposez du privilège spécifique (READ/INSERT/DELETE) pour la table enfant.
-
Vous disposez des mêmes privilèges, ou du moins du même privilège de lecture, pour la table parent de la table enfant spécifique dans la hiérarchie.
Pour plus de détails, reportez-vous à Stratégies IAM pour l'autorisation.
Par exemple, si vous souhaitez insérer des données dans la table enfant myTable.child1 dont vous n'êtes pas propriétaire, vous devez disposer du privilège INSERT sur la table enfant et des privilèges READ et/ou INSERT sur myTable. L'octroi de privilèges à des tables enfant est indépendant de l'octroi de privilèges à la table parent. Cela signifie que vous pouvez accorder des privilèges spécifiques à la table enfant sans accorder le même privilège à sa table parent. Toutes les requêtes de jointure parent/enfant requièrent les privilèges appropriés sur toutes les tables utilisées dans la requête. Pour plus d'informations, reportez-vous à Utilisation de jointures extérieures gauches avec des tables parent-enfant.
Créer une table enfant
-
Cliquez sur la table parent pour afficher ses détails. La liste des tables enfant déjà présentes pour le parent s'affiche.
-
Dans le menu de navigation de gauche, sous Ressources, sélectionnez Tables enfant.

-
La liste des tables enfant de la table parent s'affiche. Pour créer une table enfant, sélectionnez Créer une table enfant.

-
Vous pouvez sélectionner la méthode d'entrée simple ou la méthode d'entrée LDD avancée pour créer la table enfant.
-
Indiquez le nom de la table enfant. Le préfixe est automatiquement ajouté au nom de la table parent, suivi d'un point. Indiquez la liste des colonnes et des colonnes de clé primaire.

Description de l'illustration createtable_col.png

-
La case à cocher Définir comme clé de shard n'est pas affichée lors de la création d'une table enfant, car les tables enfant héritent de leur clé de shard de leur table parent de niveau supérieur.
Remarque : les champs Capacité de lecture, Capacité d'écriture et Stockage sur disque ne sont pas spécifiés car une table enfant hérite de ces limites de la table de niveau supérieur. Les limites définies pour la table de niveau supérieur sont automatiquement appliquées à la table enfant.
Affichage des détails d'une table enfant
Vous pouvez afficher les détails d'une table enfant après sa création.

Description de l'image viewtbl-childtbl.png