Gestion des tables - Amazon Quantum Ledger Database (Amazon QLDB)

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gestion des tables

Cette section explique comment gérer les tables à l'aideUNDROP TABLE des instructionsDROP TABLE et d'Amazon QLDB. Il explique également comment étiqueter des tableaux pendant leur création. Les quotas relatifs au nombre de tables actives et au nombre total de tables que vous pouvez créer sont définis dansQuotas et limites d'Amazon QLDB.

Baliser les tables lors de la création

Note

Le balisage des tables lors de leur création n'est actuellement pris en charge que pour les registres en modeSTANDARD autorisations.

Vous pouvez baliser les ressources de table. Pour gérer les balises des tables existantes, utilisez les opérationsAWS Management Console ou de l'APITagResourceUntagResource, etListTagsForResource. Pour plus d'informations, veuillez consulter Balisage des ressources Amazon QLDB.

Vous pouvez également définir des balises de table lors de la création de la table à l'aide de la console QLDB ou en les spécifiant dans une instructionCREATE TABLE PartiQL. L'exemple suivant crée une table nomméeVehicle avec la baliseenvironment=production.

CREATE TABLE Vehicle WITH (aws_tags = `{'environment': 'production'}`)

En attribuant des étiquettes aux ressources au moment de la création, vous pouvez supprimer la nécessité d'exécuter des scripts d'identification personnalisés après la création de ressources. Une fois qu'un tableau a été balisé, vous pouvez contrôler l'accès au tableau à l'aide de ces balises. Par exemple, vous pouvez accorder un accès complet uniquement aux tables dotées d'une balise spécifique. Pour un exemple de politique JSON, consultezAccès complet à toutes les actions en fonction des balises du tableau.

Tables pliantes

Pour supprimer un tableau, utilisez uneDROP TABLE instruction de base. Lorsque vous déposez une table dans QLDB, vous ne faites que la désactiver.

Par exemple, l'instruction suivante désactive laVehicleRegistration table.

DROP TABLE VehicleRegistration

UneDROP TABLE instruction renvoie l'ID attribué par le système à la table. Le statut deVehicleRegistration doit désormais figurerINACTIVE dans la table du catalogue système information_schema.user_tables.

SELECT status FROM information_schema.user_tables WHERE name = 'VehicleRegistration'

Consultation de l'historique des tables inactives

En plus d'un nom de table, vous pouvez également interroger le QLDBFonction historique avec un ID de table comme premier argument d'entrée. Vous devez utiliser l'ID de table pour consulter l'historique d'une table inactive. Une fois qu'une table est désactivée, vous ne pouvez plus interroger son historique à l'aide du nom de la table.

Commencez par rechercher l'ID de la table en interrogeant la table du catalogue système. Par exemple, la requête suivante renvoie la valeurtableId de laVehicleRegistration table.

SELECT tableId FROM information_schema.user_tables WHERE name = 'VehicleRegistration'

Vous pouvez ensuite utiliser cet ID pour exécuter la même requête d'historique à partir deConsultation de l'historique des révisions. L'exemple suivant permet d'interroger l'historique de l'ID du documentADR2Ll1fGsU4Jr4EqTdnQF à partir de l'ID de table5PLf9SXwndd63lPaSIa0O6. L'ID de table est une chaîne littérale qui doit être placée entre guillemets simples.

--replace both the table and document IDs with your values SELECT * FROM history('5PLf9SXwndd63lPaSIa0O6', `2000T`, `2019-06-05T23:59:59Z`) AS h WHERE h.metadata.id = 'ADR2Ll1fGsU4Jr4EqTdnQF'

Réactivation des tables

Après avoir désactivé une table dans QLDB, vous pouvez utiliser l'TABLEAU DE DÉBALLAGEinstruction pour la réactiver.

Tout d'abord, recherchez l'identifiant de la table à partir deinformation_schema.user_tables. Par exemple, la requête suivante renvoie letableId de laVehicleRegistration table. Le statut doit êtreINACTIVE.

SELECT tableId FROM information_schema.user_tables WHERE name = 'VehicleRegistration'

Utilisez ensuite cet ID pour réactiver la table. Voici un exemple qui permet de supprimer l'ID de table5PLf9SXwndd63lPaSIa0O6. Dans ce cas, l'ID de table est un identifiant unique que vous placez entre guillemets doubles.

UNDROP TABLE "5PLf9SXwndd63lPaSIa0O6"

Le statut deVehicleRegistration devrait désormais êtreACTIVE.

Pour savoir comment créer, décrire et supprimer des index, passez àGestion des index.