Vue d’ensemble du déchargement de données

Comme pour le chargement des données, Snowflake prend en charge l’exportation en masse (c’est-à-dire le déchargement) des données d’une table de base de données dans des fichiers texte plats et délimités.

Dans ce chapitre :

Processus de déchargement en masse

Le processus de déchargement de données dans des fichiers est le même que le processus de chargement, sauf qu’il s’effectue dans le sens inverse :

Étape 1

Utilisez la commande COPY INTO <emplacement> pour copier les données de la table de base de données Snowflake dans un ou plusieurs fichiers d’une zone de préparation Snowflake ou externe.

Étape 2

Téléchargez le fichier de la zone de préparation :

  • À partir d’une zone de préparation Snowflake, utilisez la commande GET pour télécharger le(s) fichier(s) de données.

  • À partir de S3, utilisez les interfaces/les outils fournis par Amazon S3 pour obtenir le(s) fichier(s) de données.

  • Depuis Azure, utilisez les interfaces/les outils fournis par Microsoft Azure pour obtenir le(s) fichier(s) de données.

Déchargement en masse à l’aide de requêtes

Snowflake prend en charge la spécification d’une instruction SELECT au lieu d’une table dans la commande COPY INTO <emplacement>. Les résultats de la requête sont écrits dans un ou plusieurs fichiers comme spécifié dans la commande et le ou les fichiers sont stockés dans l’emplacement spécifié (interne ou externe).

Les requêtes SELECT dans les instructions COPY prennent en charge la syntaxe et la sémantique complètes des requêtes SQL Snowflake, dont les clauses JOIN, ce qui permet de télécharger des données à partir de plusieurs tables.

Déchargement en masse vers un ou plusieurs fichiers

La commande COPY INTO <emplacement> fournit une option de copie (SINGLE) pour décharger des données dans un ou plusieurs fichiers. La valeur par défaut est SINGLE = FALSE (c’est-à-dire décharger dans plusieurs fichiers).

Snowflake attribue un nom unique à chaque fichier. Le chemin d’accès spécifié pour la commande peut contenir un préfixe de nom de fichier qui est attribué à tous les fichiers de données générés. Si aucun préfixe n’est spécifié, Snowflake ajoute un préfixe aux noms de fichiers générés avec data_.

Snowflake ajoute un suffixe qui assure que chaque nom de fichier est unique à travers les chemins d’exécution parallèles, par exemple data_stats_0_1_0.

Lorsque vous déchargez des données dans plusieurs fichiers, utilisez l’option de copie MAX_FILE_SIZE pour spécifier la taille maximale de chaque fichier créé.

Déchargement de données partitionnées

La commande COPY INTO <emplacement> comprend une option de copie PARTITION BY pour le déchargement partitionné de données vers des zones de préparation.

La possibilité de partitionner des données pendant l’opération de déchargement permet une variété de cas d’utilisation, comme l’utilisation de Snowflake pour transformer des données en vue de leur sortie vers un data lake. De plus, le partitionnement de données déchargées dans une structure de répertoire au sein d’un stockage dans le Cloud peut accroître l’efficacité avec laquelle des outils tiers consomment les données.

L’option de copie PARTITION BY accepte une expression par laquelle l’opération de déchargement partitionne les lignes de table en fichiers distincts déchargés dans la zone de préparation spécifiée.

Tâches pour décharger des données à l’aide de la commande COPY

Pour plus d’informations sur les tâches associées au déchargement de données, voir :