Таблица Hive с вложенным JSON в качестве строкового значения - PullRequest
0 голосов
/ 29 октября 2019

Я пытаюсь создать таблицу из вложенного json.
Второй слой JSON очень сложный, и я не хочу сохранять схему этого JSON в определении таблицы со структурой столбца.

Я ищу решение, которое позволило бы мне сохранить его в виде строки.

, например:

{
"request_id": "3dbd4ee3-96fc-4342-bd62",
"payload": { < COMPLEX NESTED JSON >  },
"timestamp": 1569161622
}

Я пытался использовать следующую инструкцию create:

CREATE EXTERNAL TABLE data (
request_id string,
payload string,
`timestamp` int
)
ROW FORMAT  serde 'org.apache.hive.hcatalog.data.JsonSerDe'
LOCATION 's3a://bucket'

Есть ли какое-либо свойство / отображение SerDe, которое я могу использовать для определения вложенного объекта как String?

1 Ответ

1 голос
/ 29 октября 2019

Вы можете использовать org.openx.data.jsonserde.JsonSerDe SerDe

для получения дополнительной информации об этом SerDe см. [Ссылка] (https://github.com/rcongiu/Hive-JSON-Serde)

Надеюсь, это поможет

...