Schritt 3: Datendateien im Stagingbereich bereitstellen

Snowflake unterstützt das Laden von Daten aus Dateien, die sich entweder in einem internen (Snowflake) Stagingbereich oder einem externen (Amazon S3, Google Cloud Storage oder Microsoft Azure) Stagingbereich befinden. Das Laden aus einem externen Stagingbereich ist praktisch, wenn Sie Datendateien bereits in diesen Cloudspeicherdiensten speichern.

In diesem Tutorial werden die Beispieldatendateien (heruntergeladen in Voraussetzungen) in eine interne Stagingtabelle hochgeladen (bereitgestellt). Der Befehl zum Bereitstellen von Dateien lautet PUT.

Unter diesem Thema:

Bereitstellen der Dateien im Stagingbereich

Führen Sie PUT aus, um lokale Datendateien in die Staging-Tabelle hochzuladen, die für die von Ihnen erstellte emp_basic-Tabelle vorgesehen ist. Beachten Sie, dass der Befehl OS-spezifisch ist, da er auf Dateien in Ihrer lokalen Umgebung verweist:

  • Linux oder macOS

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

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

Lassen Sie uns einen genaueren Blick auf den Befehl werfen:

  • file: gibt den vollständigen Verzeichnispfad und die Namen der Dateien auf Ihrem lokalen Rechner an, die bereitgestellt werden sollen. Beachten Sie, dass Platzhalter für Dateisysteme erlaubt sind.

  • @<Namespace>.%<Tabellenname> zeigt an, dass die angegebene Tabelle, in diesem Fall die Tabelle emp_basic, im Stagingbereich verwendet werden soll.

Der Befehl gibt die folgende Antwort zurück und zeigt die Dateien an, die bereitgestellt wurden:

+-----------------+--------------------+-------------+-------------+--------------------+--------------------+----------+---------+
| 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 |         |
+-----------------+--------------------+-------------+-------------+--------------------+--------------------+----------+---------+

Beachten Sie, dass beim PUT-Befehl Dateien standardmäßig mit gzip komprimiert werden, wie in der Spalte TARGET_COMPRESSION angegeben.

Auflisten der Stagingdateien (optional)

Sie können die Liste der erfolgreich bereitgestellten Dateien anzeigen, indem Sie einen LIST-Befehl ausführen:

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 |
+--------------------+------+----------------------------------+------------------------------+

Nächstes Thema: Schritt 4: Daten in die Zieltabelle kopieren