外部ファイルの 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 <テーブル> または Snowpipe を使用して、無効な UTF-8データを含む外部ファイルをロードすると、Snowflakeはコピーオプション
ON_ERROR = CONTINUE
で処理を進めます。Snowflakeは、無効な UTF-8 データを含む記録をエラーとみなし、ファイルのロードを続行します。
UTF-8検証エラーを回避するため、Snowflakeは、無効な UTF-8文字がUnicode置換文字(�
)に置き換えられるように、 REPLACE_INVALID_CHARACTERS = TRUE
をファイル形式に指定することをお勧めします。
Parquetファイルの場合は、 BINARY_AS_TEXT = FALSE
をファイル形式に設定すると、論理データ型が定義されていない列を UTF-8テキストではなくバイナリデータとして解釈することもできます。
この動作変更は、現在無効な UTF8 文字をロードしている既存のアカウントには適用されないことに注意してください。新規アカウントにのみ影響します。問題がある場合は、 Snowflakeサポート にお問い合わせください。
参照: 1013 1014