数据加载功能摘要

本主题助力您快速了解支持的功能,使用 COPY INTO <table> 命令将数据从文件加载到 Snowflake 表。

本主题内容:

数据文件详细信息

下表描述了用于加载数据的文件的常规详细信息:

功能

支持

备注

文件位置

本地环境

文件首先复制(“暂存”)到内部 (Snowflake) 暂存区,然后再加载到表中。

Amazon S3

文件可以直接从任何用户提供的桶加载。

Google Cloud Storage

文件可以直接从任何用户提供的桶加载。

Microsoft Azure 云存储

  • Blob 存储

  • Data Lake Storage Gen2

  • 常规用途 v1

  • General-purpose v2

文件可以直接从任何用户提供的容器加载。

文件格式

分隔文件(CSV、TSV 等)

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

半结构化格式

非结构化格式

文件编码

特定于文件格式

对于分隔文件(CSV、TSV 等),默认字符集为 UTF-8。要使用任何其他字符集,必须显式指定要用于加载的编码。有关支持的字符集列表,请参阅 分隔文件支持的字符集 (本主题内容)。

对于半结构化文件格式(JSON、Avro 等),唯一支持的字符集是 UTF-8。

分隔文件支持的字符集

下表列出了支持从分隔文件(CSV、TSV 等)加载数据的编码字符集:

字符 集

ENCODING 值

支持的语言

备注

Big5

BIG5

繁体中文

EUC-JP

EUCJP

日语

EUC-KR

EUCKR

韩语

GB18030

GB18030

中文

IBM420

IBM420

阿拉伯语

IBM424

IBM424

希伯来语

IBM949

IBM949

韩语

ISO-2022-CN

ISO2022CN

简体中文

ISO-2022-JP

ISO2022JP

日语

ISO-2022-KR

ISO2022KR

韩语

ISO-8859-1

ISO88591

丹麦语、荷兰语、英语、法语、德语、意大利语、挪威语、葡萄牙语、瑞典语

ISO-8859-2

ISO88592

捷克语、匈牙利语、波兰语、罗马尼亚语

ISO-8859-5

ISO88595

俄语

ISO-8859-6

ISO88596

阿拉伯语

ISO-8859-7

ISO88597

希腊语

ISO-8859-8

ISO88598

希伯来语

ISO-8859-9

ISO88599

土耳其语

ISO-8859-15

ISO885915

丹麦语、荷兰语、英语、法语、德语、意大利语、挪威语、葡萄牙语、瑞典语

与 ISO-8859-1 相同,但 8 个字符除外,包括欧元货币符号。

KOI8-R

KOI8R

俄语

Shift_JIS

SHIFTJIS

日语

UTF-8

UTF8

所有语言

要从分隔文件(CSV、TSV 等)加载数据,默认为 UTF-8。. . 要从所有其他支持的文件格式(JSON、Avro 等)加载数据以及卸载数据,UTF-8 是唯一支持的字符集。

UTF-16

UTF16

所有语言

UTF-16BE

UTF16BE

所有语言

UTF-16LE

UTF16LE

所有语言

UTF-32

UTF32

所有语言

UTF-32BE

UTF32BE

所有语言

UTF-32LE

UTF32LE

所有语言

windows-949

WINDOWS949

韩语

windows-1250

WINDOWS1250

捷克语、匈牙利语、波兰语、罗马尼亚语

windows-1251

WINDOWS1251

俄语

windows-1252

WINDOWS1252

丹麦语、荷兰语、英语、法语、德语、意大利语、挪威语、葡萄牙语、瑞典语

windows-1253

WINDOWS1253

希腊语

windows-1254

WINDOWS1254

土耳其语

windows-1255

WINDOWS1255

希伯来语

windows-1256

WINDOWS1256

阿拉伯语

压缩暂存文件

下表描述了 Snowflake 如何压缩要加载的数据文件。根据文件是暂存、未压缩还是已压缩,这些选项会有所不同:

功能

支持

备注

未压缩的文件

gzip

在 Snowflake 暂存区暂存未压缩的文件时,除非显式禁用压缩,否则将使用 gzip 自动压缩文件。

已压缩的文件

gzip

bzip2

deflate

raw_deflate

Snowflake 可以自动检测这些压缩方法,您也可以显式指定用于压缩文件的方法。

Brotli

Zstandard

Brotli 压缩文件 尚不 支持自动检测;在暂存或加载 Brotli 压缩文件时,您必须显式指定使用的压缩方法。

加密暂存文件

下表描述了 Snowflake 如何加密要加载的数据文件。根据文件是暂存、未加密还是已加密,选项会有所不同:

功能

支持

备注

未加密的文件

128 位或 256 位密钥

内部暂存区中用于数据加载和卸载操作的所有文件都会在服务器端使用 AES-256 强加密自动加密。默认情况下,Snowflake 使用 128 位密钥(可选择配置 256 位密钥)提供额外的客户端加密。

已加密的文件

用户提供的密钥

已加密的文件可以从外部云存储加载到 Snowflake 中;用于加密文件的密钥必须提供给 Snowflake。

语言: 中文