Étape 3. Préparez des fichiers de données

Snowflake prend en charge le chargement des données à partir de fichiers qui ont été préparés dans une zone de préparation interne (Snowflake) ou externe (Amazon S3, Google Cloud Storage ou Microsoft Azure). Le chargement à partir d’une zone de préparation externe est pratique si vous stockez déjà des fichiers de données dans ces services de stockage sur le Cloud.

Dans ce tutoriel, nous allons télécharger (préparer) les fichiers de données d’échantillon (téléchargés dans Conditions préalables) vers une zone de préparation de table interne. La commande utilisée pour préparer les fichiers est PUT.

Dans ce chapitre :

Mise en zone de préparation des fichiers

Exécutez PUT pour télécharger les fichiers de données locaux vers la zone de préparation de table fournie pour la table emp_basic que vous avez créée. Notez que la commande est spécifique à l’OS, car elle fait référence à des fichiers situés dans votre environnement local :

  • Linux ou macOS

    PUT file:///tmp/employees0*.csv @sf_tuts.public.%emp_basic;
    
  • Windows

    PUT file://C:\temp\employees0*.csv @sf_tuts.public.%emp_basic;
    

Regardons la commande de plus près :

  • file: spécifie le chemin complet du répertoire et les noms des fichiers sur votre machine locale vers la zone de préparation. Notez que les caractères génériques du système de fichiers sont autorisés.

  • @<espace_noms>.%<nom_table> indique d’utiliser la zone de préparation pour la table spécifiée, dans ce cas la table emp_basic .

La commande renvoie la réponse suivante, montrant les fichiers qui ont été préparés :

+-----------------+--------------------+-------------+-------------+--------------------+--------------------+----------+---------+
| source          | target             | source_size | target_size | source_compression | target_compression | status   | message |
|-----------------+--------------------+-------------+-------------+--------------------+--------------------+----------+---------|
| employees01.csv | employees01.csv.gz |         360 |         287 | NONE               | GZIP               | UPLOADED |         |
| employees02.csv | employees02.csv.gz |         355 |         274 | NONE               | GZIP               | UPLOADED |         |
| employees03.csv | employees03.csv.gz |         397 |         295 | NONE               | GZIP               | UPLOADED |         |
| employees04.csv | employees04.csv.gz |         366 |         288 | NONE               | GZIP               | UPLOADED |         |
| employees05.csv | employees05.csv.gz |         394 |         299 | NONE               | GZIP               | UPLOADED |         |
+-----------------+--------------------+-------------+-------------+--------------------+--------------------+----------+---------+

Notez que la commande PUT compresse les fichiers par défaut en utilisant gzip comme indiqué dans la colonne TARGET_COMPRESSION.

Création d’une liste de fichiers préparés (facultatif)

Vous pouvez obtenir une liste des fichiers préparés avec succès en exécutant une commande LIST :

LIST @sf_tuts.public.%emp_basic;

+--------------------+------+----------------------------------+------------------------------+
| name               | size | md5                              | last_modified                |
|--------------------+------+----------------------------------+------------------------------|
| employees01.csv.gz |  288 | a851f2cc56138b0cd16cb603a97e74b1 | Tue, 9 Jan 2018 15:31:44 GMT |
| employees02.csv.gz |  288 | 125f5645ea500b0fde0cdd5f54029db9 | Tue, 9 Jan 2018 15:31:44 GMT |
| employees03.csv.gz |  304 | eafee33d3e62f079a054260503ddb921 | Tue, 9 Jan 2018 15:31:45 GMT |
| employees04.csv.gz |  304 | 9984ab077684fbcec93ae37479fa2f4d | Tue, 9 Jan 2018 15:31:44 GMT |
| employees05.csv.gz |  304 | 8ad4dc63a095332e158786cb6e8532d0 | Tue, 9 Jan 2018 15:31:44 GMT |
+--------------------+------+----------------------------------+------------------------------+

Suivant : Étape 4. Copie de données dans la table cible