簡體   English   中英

如何為每個分區生成一個文件 - Snowflake COPY into location

[英]How to generate a single file per partition - Snowflake COPY into location

我已經設法將我的數據卸載到一個分區中,但每個分區也被分區為多個文件。 有沒有辦法強制 Snowflake 為每個分區生成一個文件?

如果我可以 zip 所有文件也很好。

這是我到目前為止得到的:

COPY INTO 'gcs_bucket'
  FROM test
  PARTITION BY TRUNC(number_of_rows/500000)
  STORAGE_INTEGRATION = gcs_int
  FILE_FORMAT = (TYPE = CSV, COMPRESSION = gzip, NULL_IF = ('NULL','null'), RECORD_DELIMITER= '\r\n', FIELD_OPTIONALLY_ENCLOSED_BY = "'")
  HEADER = TRUE

附言。 我正在使用 csv 格式(無法更改)

可以使用MAX_FILE_SIZE選項更改每個文件的大小上限。 默認為 16MB。

COPY INTO 'gcs_bucket'
  FROM test
  PARTITION BY TRUNC(number_of_rows/500000)
  STORAGE_INTEGRATION = gcs_int
  ...
  MAX_FILE_SIZE = 167772160 -- (160MB)

MAX_FILE_SIZE = 數量

定義

指定每個線程並行生成的每個文件的大小上限(以字節為單位)的數字(> 0)。 請注意,實際文件大小和卸載的文件數由可用於並行處理的數據總量和節點數決定。

Snowflake 利用並行執行來優化性能。 無法修改線程數。**

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM