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