Introduction aux tables de répertoire¶
Cette rubrique présente les concepts clés, fournit des informations complémentaires et renvoie à des instructions pour l’utilisation des tables de répertoire.
Dans ce chapitre :
Que sont les tables de répertoire ?¶
Une table de répertoire n’est pas un objet de base de données distinct ; il s’agit plutôt d’un objet implicite superposé à une zone de préparation. Les zones de préparation externes (stockage Cloud externe) et internes (c’est-à-dire Snowflake) prennent en charge les tables de répertoire. Une table de répertoire n’a pas de privilèges propres à accorder. Une table de répertoire doit être ajoutée explicitement à une zone de préparation lors de la création de la zone de préparation (à l’aide de CREATE STAGE) ou ultérieurement (à l’aide de ALTER STAGE).
Sur le plan conceptuel, les tables de répertoire sont similaires aux tables externes dans la mesure où elles stockent des métadonnées au niveau des fichiers sur les fichiers de données d’une zone de préparation. Interrogez une table de répertoire pour récupérer l’URL du fichier hébergé par Snowflake pour chaque fichier de la zone de préparation. Une URL de fichier permet un accès prolongé à un fichier spécifié. C’est-à-dire que l’URL de fichier n’expire pas. La même URL de fichier est retournée en appelant la fonction BUILD_STAGE_FILE_URL.
Actualisation automatique des métadonnées de table de répertoire¶
Les métadonnées d’une table de répertoire peuvent être actualisées automatiquement à l’aide du service de notification d’événements de votre service de stockage dans le Cloud. L’opération d’actualisation synchronise les métadonnées avec le dernier ensemble de fichiers associés dans la zone de préparation et le chemin externes, c’est-à-dire :
Les nouveaux fichiers dans le chemin sont ajoutés aux métadonnées de la table.
Les modifications apportées aux fichiers dans le chemin sont mises à jour dans les métadonnées de la table.
Les fichiers qui ne figurent plus dans le chemin sont supprimés des métadonnées de la table.
Pour plus d’informations, voir Actualisation automatique des métadonnées des tables de répertoire.
Facturation des tables de répertoire¶
Les frais de gestion des notifications d’événements pour l’actualisation automatique des métadonnées de tables de répertoire sont inclus dans vos charges. Ces frais généraux augmentent en fonction du nombre de fichiers ajoutés dans le stockage Cloud pour vos zones de préparation qui incluent des tables de répertoire. Ces frais généraux apparaissent comme des frais de Snowpipe dans votre relevé de facturation parce que Snowpipe est utilisé pour les notifications d’événements pour les rafraîchissements automatiques des tables de répertoires. Vous pouvez estimer ces frais en interrogeant la fonction PIPE_USAGE_HISTORY ou en examinant la page Vue PIPE_USAGE_HISTORY Account Usage.
En outre, une petite surcharge de maintenance est facturée pour l’actualisation manuelle des métadonnées de tables de répertoire (en utilisant ALTER STAGE … REFRESH). Ces frais généraux sont facturés conformément au modèle standard de facturation des services Cloud, comme toutes les activités similaires dans Snowflake.
Les utilisateurs ayant le rôle ACCOUNTADMIN ou un rôle avec le privilège global MONITOR USAGE peuvent interroger la fonction de table AUTO_REFRESH_REGISTRATION_HISTORY pour récupérer l’historique des fichiers de données enregistrés dans les métadonnées des objets spécifiés et les crédits facturés pour ces opérations.
Exigences en matière de contrôle d’accès pour les tables de répertoire¶
La table suivante résume les privilèges de zone de préparation dont vous avez besoin pour exécuter les commandes SQL courantes lorsque vous travaillez avec des tables de répertoire.
Fonctionnement |
Type d’objet |
Privilège requis |
---|---|---|
Récupérez les URLs de fichier d’une table de répertoire à l’aide d’une instruction SELECT FROM DIRECTORY. |
Zone de préparation |
L’un des éléments suivants, en fonction du type de zone de préparation :
|
Chargez les données à l’aide de la commande PUT. |
Zone de préparation (interne uniquement) |
Un rôle de compte ou de base de données avec le privilège WRITE sur la zone de préparation. |
Supprimez des fichiers à l’aide de la commande REMOVE. |
Zone de préparation |
L’un des éléments suivants, en fonction du type de zone de préparation :
|
Actualisez les métadonnées à l’aide de la commande ALTER STAGE. |
Zone de préparation |
Un rôle de compte ou de base de données avec le privilège OWNERSHIP sur la zone de préparation. |
Information Schema¶
Snowflake Schéma d’information de Snowflake comprend des fonctions de table que vous pouvez interroger pour récupérer des informations sur vos tables de répertoire.
Fonctions de table¶
- AUTO_REFRESH_REGISTRATION_HISTORY
Récupérez l’historique des fichiers de données enregistrés dans les métadonnées des objets spécifiés et les crédits facturés pour ces opérations.
- STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY
Récupérez des informations sur l’historique des métadonnées d’une table de répertoire, y compris les erreurs détectées lors de l’actualisation des métadonnées.