JSON-Datenpartitionierung

Es ist wichtig, die Ereignisdaten in Ihrem S3-Bucket durch sehr präzise, logische Pfade zu partitionieren. Erstellen Sie eine Partitionsstruktur, die identifizierende Details wie Anwendung oder Standort sowie das Datum, an dem die Ereignisdaten in den S3-Bucket geschrieben wurden, enthält. Sie können dann jeden Bruchteil der partitionierten Daten mit einem einzigen Befehl in Snowflake kopieren. Wenn Sie anfangs Ihre Tabellen füllen, können Sie Daten stunden-, tage-, monats- oder sogar jahresweise nach Snowflake kopieren.

Beispiel:

s3://Bucketname/Anwendung_eins/2016/07/01/11/

s3://Bucketname/Anwendung_zwei/Speicherort_eins/2016/07/01/14/

Wobei:

Bucketname

Eindeutiger S3-URI, der für den Zugriff auf Ihre Daten verwendet wird.

Anwendung_eins, Anwendung_zwei, Speicherort_eins usw.

Identifizieren von Details für die Quelle aller Daten im Pfad. Die Daten können nach dem Datum organisiert werden, an dem sie geschrieben wurden. Ein optionales 24-Stunden-Verzeichnis reduziert die Datenmenge in jedem Verzeichnis.

Bemerkung

S3 sendet eine Verzeichnisliste mit allen von Snowflake verwendeten COPY-Anweisungen, sodass die Reduzierung der Anzahl der Dateien in jedem Verzeichnis die Leistung Ihrer COPY-Anweisungen verbessert. Sie können sogar erwägen, alle 10-15 Minuten pro Stunde einen Ordner zu erstellen.

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