对外部文件使用更强的 UTF-8 验证

此行为变更已通过 7.34 版本实施。有关行为变更的最新详细信息,请参阅 行为变更日志

Snowflake 对外部文件使用更强的 UTF-8 验证。

变更前:

当您查询包含无效 UTF-8 数据的外部 Avro、Parquet、Orc、CSV、JSON 或 XML 文件时,查询通常会成功。

变更后:

当您查询包含无效 UTF-8 数据的外部 Avro、Parquet、Orc、CSV、JSON 或 XML 文件时,查询会失败。

如果利用 COPY INTO <table> 或者 Snowpipe 加载包含无效 UTF-8 数据的外部文件,Snowflake 会使用复制选项 ON_ERROR = CONTINUE 继续执行。Snowflake 会将包含无效 UTF-8 数据的记录视为错误,并继续加载文件。

为了避免 UTF-8 验证错误,Snowflake 建议为文件格式指定 REPLACE_INVALID_CHARACTERS = TRUE,以便将任何无效的 UTF-8 字符替换为 Unicode 替代字符 ()。

对于 Parquet 文件,还可以为文件格式设置 BINARY_AS_TEXT = FALSE,以便将具有未定义的逻辑数据类型的列解释为二进制数据而不是 UTF-8 文本。

请注意,此行为变更不适用于当前正加载无效 UTF8 的现有账户。它仅影响新账户。如有任何问题,请联系 Snowflake 支持部门 (https://community.snowflake.com/s/article/How-To-Submit-a-Support-Case-in-Snowflake-Lodge)。

参考:1013 1014

语言: 中文