-1
ハイブでハイブに1つのJSON配列ファイルを使用しようとしています。ハイブに読み込まれたときに最初の行がNULLに変換され、1行目のデータが失われます。私は何を間違っているのかアドバイスしてください。
データ:Jsonファイルの読み込みハイブの読み飛ばし行1
[{"id":1,"first_name":"Alexandrina","email":"[email protected]","date":"9/11/2016","country":"Nigeria"},
{"id":2,"first_name":"Craggie","email":"[email protected]","date":"12/7/2016","country":"China"},
{"id":3,"first_name":"Allie","email":"[email protected]","date":"10/31/2016","country":"Russia"},
{"id":30,"first_name":"Vinson","email":"[email protected]","date":"5/16/2016","country":"Saint Kitts and Nevis"}]
ハイブ機能:
CREATE TABLE format.json_table (json string);
LOAD DATA INPATH '/user/cloudera/JSON/MOCK_DATA.json' INTO TABLE json_table;
私は、クエリ:
select get_json_object(json_table.json, '$.id') as id,
get_json_object(json_table.json, '$.first_name') as name,
get_json_object(json_table.json, '$.email') as email,
get_json_object(json_table.json, '$.date') as date,
get_json_object(json_table.json, '$.country') as country from json_table;
それは
を返します。OK
id name email date country
NULL NULL NULL NULL NULL
2 Craggie [email protected] 12/7/2016 China
3 Allie [email protected] 10/31/2016 Russia
4 Poul [email protected] 9/11/2016 Nigeria
5 Vinson [email protected] 5/16/2016 Saint Kitts and Nevis
これらは、このクエリの結果ではありません。 –
あなたはこのクエリからNULL NULL NULL NULL NULLとして1行しか得られません –
それは私の出力です:) –