跳到主要内容

S3 Parquet 导出

要将 Parquet 文件写入 S3,需要 httpfs 扩展。可通过 INSTALL SQL 命令安装。该步骤仅需执行一次。

INSTALL httpfs;

要加载 httpfs 扩展,请执行 LOAD SQL 命令:

LOAD httpfs;

加载 httpfs 扩展后,请配置写入数据所需凭据。注意 region 参数应与目标 bucket 所在 region 一致。

CREATE SECRET (
TYPE s3,
KEY_ID '⟨AKIAIOSFODNN7EXAMPLE⟩',
SECRET '⟨wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY⟩',
REGION '⟨us-east-1⟩'
);

提示:若出现 IO Error(Connection error for HTTP HEAD),请显式配置 endpoint:ENDPOINT 's3.⟨your-region⟩.amazonaws.com'

或者,使用 aws 扩展 自动获取凭据:

CREATE SECRET (
TYPE s3,
PROVIDER credential_chain
);

httpfs 扩展就绪且 S3 凭据配置正确后,可使用以下命令将 Parquet 文件写入 S3:

COPY ⟨table_name⟩ TO 's3://⟨s3-bucket⟩/⟨filename⟩.parquet';

同样,Google Cloud Storage(GCS)也可通过 Interoperability API 使用。 你需要创建 HMAC keys 并按如下方式提供凭据:

CREATE SECRET (
TYPE gcs,
KEY_ID '⟨AKIAIOSFODNN7EXAMPLE⟩',
SECRET '⟨wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY⟩'
);

配置好 GCS 凭据后,可通过以下方式导出:

COPY ⟨table_name⟩ TO 'gs://⟨gcs_bucket⟩/⟨filename⟩.parquet';