数据卸载功能摘要

本主题助力您快速了解以下受支持的功能:使用 COPY INTO <location> 命令将数据从 Snowflake 表卸载到平面文件。

请注意,某些受支持的功能(尤其是压缩和加密)取决于您是卸载到 Snowflake 内部位置还是外部位置(Amazon S3、Google Cloud Storage或 Microsoft Azure)。

本主题内容:

输出数据文件详细信息

下表描述了 Snowflake 在卸载数据时生成的输出文件的一般详细信息:

功能

支持

备注

文件位置

本地文件

文件首先卸载到 Snowflake 内部位置,然后可以使用 GET 命令下载到本地。

Amazon S3 中的文件

文件可直接卸载到 S3 中用户提供的任何桶,然后可以使用 AWS 实用程序下载到本地。

Google Cloud Storage 中的文件

文件可以直接卸载到 Cloud Storage 中用户提供的任何容器,然后可以使用 Cloud Storage 实用程序下载到本地。

Microsoft Azure 中的文件

文件可以直接卸载到 Azure 中用户提供的任何容器,然后可以使用 Azure 实用程序下载到本地。

文件格式

分隔文件(CSV、TSV 等)

支持任何有效的分隔符;默认为逗号(即 CSV)。

JSON

Parquet

文件编码

UTF-8

无论文件格式如何,输出文件始终使用 UTF-8 编码;不支持其他字符集。

备注

在内存压力较大的机器上运行卸载可能会导致文件大小变小。

输出数据文件的压缩

下表描述了 Snowflake 在卸载数据时如何处理 Snowflake 生成的输出文件的压缩:

文件位置

支持

备注

内部或外部位置

gzip

默认情况下,所有卸载的数据文件都使用 gzip 进行压缩,除非明确禁用压缩或明确指定其他支持的压缩方法。

bzip2

Brotli

Zstandard

备注

这是一个已知问题,我们目前不支持 compression=gzip 时为 Azure 和 Google Cloud Platform 设置 CONTENT-ENCODING。

输出数据文件的加密

下表描述了 Snowflake 在卸载数据时如何处理 Snowflake 生成的输出文件的加密。根据文件是否卸载到内部位置(即 Snowflake 暂存区)还是外部位置(Amazon S3、Google Cloud Storage 或 Microsoft Azure),选项会有所不同:

文件位置

支持

备注

内部位置

128 位或 256 位密钥

卸载到 Snowflake 内部位置的所有数据文件都会使用 128 位密钥自动加密。文件下载到本地目录时将取消加密。

可启用 256 位密钥(更强的加密);但是,需要额外配置。

外部位置

用户提供的密钥

如果向 Snowflake 提供安全密钥(用于加密文件),则可对卸载到云存储的数据文件进行加密。

语言: 中文