Double列やstring列などの数値列を持つHiveテーブルを作成しました。ファイルには、数値列と文字列列の両方にNULL値が含まれています。このテーブルにファイルを読み込もうとすると、数値列のNULL値がファイル内の「\ N」に置き換えられます。これは数値タイプの列のNULL値を処理するHiveプロパティであることがわかっていますが、それを防止したいのですが、 NULLを「\ N」の代わりに別のものに変更できる方法。
デフォルトでは、NULL
値はデータファイルに_\N
_および_\N
_として書き込まれ、データファイルはデータのクエリ時にNULL
として解釈されます。
これは、TBLPROPERTIES('serialization.null.format'=...)
を使用してオーバーライドできます
例えば。TBLPROPERTIES('serialization.null.format'='')
は次のことを意味します。
このプロパティは、テーブル作成の一部として宣言できます
_create table mytable (...)
tblproperties('serialization.null.format'='')
;
_
後で変更できます
_alter table mytable set tblproperties('serialization.null.format'='')
;
_