RegexSerDe で NULL 値を処理するにはどうすればよいですか? 私はデータを含むファイルを持っています:
cat MOS/ex1.txt
123,dwdjwhdjwh,456
543,\N,956
私はテーブルを持っています:
CREATE TABLE mos.stations (usaf string, wban STRING, name string)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
"input.regex" = "(.*),(.*),(.*)"
);
ファイルからテーブルにデータを正常にロードしました。
LOAD DATA LOCAL INPATH '/home/hduser/MOS/ex1.txt' OVERWRITE INTO TABLE mos.stations;
単純な選択はうまくいきます:
hive> select * from mos.stations;
123dwdjwhdjwh456
543\N956
そして、次はエラーで終了します:
select * from mos.stations where wban is null;
[Hive Error]: Query returned non-zero code: 9, cause: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.MapRedTask
なにが問題ですか?