À propos de la gestion des tables dynamiques¶
La gestion des tables dynamiques implique généralement les tâches suivantes :
Tâche |
Description |
---|---|
Répertorier les tables dynamiques et afficher des informations sur une table dynamique |
Énumération et vue des tables dynamiques. |
Suppression des tables dynamiques. |
|
Modifier l’entrepôt ou la latence cible pour une table dynamique |
Modification des tables dynamiques. |
Répertorier les tables dynamiques et afficher des informations sur une table dynamique¶
Pour dresser la liste des tables dynamiques d’une base de données et voir les informations relatives à ces tables dynamiques, vous pouvez utiliser les commandes Snowsight ou SQL :
Utiliser Snowsight pour afficher des tables dynamiques et voir des détails
Utiliser des commandes SQL pour afficher des tables dynamiques et voir les détails
Utiliser Snowsight pour afficher des tables dynamiques et voir des détails¶
Pour afficher les tables dynamiques d’un schéma et voir les informations relatives à une table dynamique :
Connectez-vous à Snowsight.
Sélectionnez Data » Databases.
Dans l’explorateur d’objets de base de données situé en regard du volet de navigation, sélectionnez un schéma de base de données.
Dans la page des détails du schéma, sélectionnez l’onglet Dynamic Tables.
Notez que vous pouvez également voir la liste des tables dynamiques dans l’explorateur d’objets de la base de données en développant Dynamic Tables.
Pour voir les informations sur une table dynamique spécifique, sélectionnez la table dynamique dans l’explorateur d’objets de la base de données ou dans la liste des tables dynamiques de l’onglet Dynamic Tables.
Les onglets de cette page fournissent certaines des mêmes informations que la page de détails de la table, y compris :
La définition de la table dynamique et les privilèges accordés pour travailler avec la table dynamique
Informations sur les colonnes de la table dynamique
Un aperçu de 100 lignes maximum des données de la table dynamique
En outre, la page de détails de la table dynamique comprend des onglets que vous pouvez utiliser pour voir des informations sur la table dynamique :
L’onglet Graph affiche le graphe orienté acyclique (DAG) qui comprend cette table dynamique. Voir Utiliser Snowsight pour examiner le graphique des tables dynamiques.
L’onglet Refresh History affiche l’historique des actualisations. Voir Utiliser Snowsight pour surveiller les actualisations.
Utiliser des commandes SQL pour afficher des tables dynamiques et voir les détails¶
Pour dresser la liste des tables dynamiques de la base de données actuelle (ou du compte, si aucune base de données n’est actuellement utilisée), utilisez la commande SHOW DYNAMIC TABLES.
Par exemple, pour répertorier les tables dynamiques dont les noms commencent par
product_
dans la base de donnéesmydb
et le schémamyschema
, exécutez l’instruction SQL suivante :SHOW DYNAMIC TABLES LIKE 'product_%' IN SCHEMA mydb.myschema;
Pour la syntaxe complète de la commande, voir SHOW DYNAMIC TABLES.
Pour obtenir des informations sur les colonnes d’une table dynamique, utilisez la commande DESCRIBE DYNAMIC TABLE.
Par exemple, pour dresser la liste des colonnes de la table dynamique nommée
product
:DESC DYNAMIC TABLE product;
Les tableaux dynamiques sont également inclus dans les résultats de la Vue TABLES.
Supprimer une table dynamique¶
Pour supprimer une table dynamique, vous pouvez utiliser des commandes Snowsight ou SQL.
- Snowsight:
Dans Snowsight, ouvrez la page de détails de la table dynamique (instructions).
Dans le menu More situé dans le coin supérieur droit de la page, sélectionnez Drop.
- SQL:
Utilisez la commande DROP DYNAMIC TABLE.
Par exemple, pour supprimer la table dynamique nommée
product
:
DROP DYNAMIC TABLE product;
Partage de données avec des tables dynamiques¶
Les tables dynamiques sont des objets partageables. Pour partager une table dynamique, les fournisseurs de partage de données accordent des privilèges sur une table dynamique à un partage, qui peut à son tour être utilisée par les consommateurs de partage de données.
Modifier l’entrepôt ou la latence cible pour une table dynamique¶
Pour modifier l’entrepôt ou la latence cible d’une table dynamique, utilisez la commande ALTER DYNAMIC TABLE.
Par exemple, pour modifier l’entrepôt de la table dynamique
product
enmy_other_wh
, exécutez ceci :ALTER DYNAMIC TABLE product SET WAREHOUSE = my_other_wh;
Pour connaître la syntaxe complète de la commande ALTER DYNAMIC TABLE, voir ALTER DYNAMIC TABLE.
Déterminer la latence cible optimale pour une table dynamique¶
Pour déterminer le temps de latence cible optimal pour une table dynamique, vous pouvez utiliser les commandes Snowsight ou SQL.
- Snowsight:
Sur la page de détails de la table dynamique, cliquez sur l’onglet Refresh History.
Vérifiez le temps de latence réel maximum, qui est affiché en haut de l’onglet. Cette mesure est basée sur le temps de latence réel pour chaque actualisation.
- SQL:
Utilisez la fonction de la table DYNAMIC_TABLE_REFRESH_HISTORY dans INFORMATION_SCHEMA. Cette fonction renvoie des informations sur chaque actualisation d’une table dynamique, y compris la durée de l’actualisation et les actualisations qui ont été ignorées.
Le temps de latence que vous choisissez peut affecter le calendrier d’actualisation déterminé par le processus d’actualisation automatisé. Le processus d’actualisation automatisé choisit un calendrier qui respecte au mieux les temps de latence des tables dynamiques.
Déterminer si une actualisation incrémentielle ou complète est utilisée¶
Pour déterminer si une actualisation incrémentielle ou complète est utilisée pour mettre à jour une table dynamique, vous pouvez utiliser des commandes Snowsight ou SQL.
- Snowsight:
Allez à la page de détails de la table dynamique.
Les détails de base en haut de la page indiquent si des actualisations incrémentielles ou complètes sont utilisées pour cette table.
- SQL:
Utilisez la commande SHOW DYNAMIC TABLES et vérifiez la valeur de la colonne
REFRESH_MODE
dans la sortie.Si REFRESH_MODE = FULL, REFRESH_MODE_REASON comprend des détails supplémentaires sur la raison pour laquelle une actualisation complète a été exécutée.