Hive создает внешнюю таблицу в файле JSON, но select возвращает пустой - PullRequest
0 голосов
/ 18 июня 2020

У меня есть файл комплексных JSON данных

{"Body":"{\"metrics\":[{\"key\":\"ccu\",\"properties\":{\"ccu\":350,\"datetime\":\"2020-03-06 11:10:25\",\"domain\":\"kalic.kyotogameservers.com\",\"game\":\"kalic\",\"instance_id\":\"i-087676860cab4c92b\",\"module_name\":\"notification\",\"stack\":\"prod\",\"user\":\"undefined\"}}],\"validation\":{\"key\":\"jsadiu\",\"method\":\"shared_key\"}}","ContentType":"application/json","ProductId":"12345","Version":1}
{"Body":"{\"metrics\":[{\"key\":\"ccu6\",\"properties\":{\"ccu\":350,\"datetime\":\"2020-03-06 11:10:25\",\"domain\":\"kalic.kyotogameservers.com\",\"game\":\"kalic\",\"instance_id\":\"i-087676860cab4c92b\",\"module_name\":\"notification\",\"stack\":\"prod\",\"user\":\"undefined\"}}],\"validation\":{\"key\":\"aksdjiw\",\"method\":\"shared_key\"}}","ContentType":"application/json","ProductId":"12345","Version":1}

Я загружаю файл в HDFS, а затем создаю внешнюю таблицу:

create external table hive_test.external_json_test
(Body string,
ContentType string,
ProductId string,
Version int)  
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
stored as textfile
location '/user/userid/tmp';

Здесь показаны 2 строки все допустимые строки json и команда create выполняется без каких-либо исключений.

Однако, когда я запускаю select * from ..., он ничего не возвращает ...

Почему это могло произойти и как построить внешнюю таблицу и проанализируйте json ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...