Hive table 嵌套 JSON 作为字符串值
Hive table with nested JSON as string value
我正在尝试从嵌套 json.
创建一个 table
JSON 的第二层非常复杂,我不想在带有结构列的 table 定义中保留 JSON 的架构。
我正在寻找允许我将其保留为字符串的解决方案。
例如:
{
"request_id": "3dbd4ee3-96fc-4342-bd62",
"payload": { < COMPLEX NESTED JSON > },
"timestamp": 1569161622
}
我尝试使用以下创建语句:
CREATE EXTERNAL TABLE data (
request_id string,
payload string,
`timestamp` int
)
ROW FORMAT serde 'org.apache.hive.hcatalog.data.JsonSerDe'
LOCATION 's3a://bucket'
有没有 SerDe
property/mapping 我可以用来将嵌套对象定义为字符串?
您可以使用 org.openx.data.jsonserde.JsonSerDe
SerDe
有关此 SerDe 的更多信息,请参阅 [link] (https://github.com/rcongiu/Hive-JSON-Serde)
希望对您有所帮助
我正在尝试从嵌套 json.
创建一个 table
JSON 的第二层非常复杂,我不想在带有结构列的 table 定义中保留 JSON 的架构。
我正在寻找允许我将其保留为字符串的解决方案。
例如:
{
"request_id": "3dbd4ee3-96fc-4342-bd62",
"payload": { < COMPLEX NESTED JSON > },
"timestamp": 1569161622
}
我尝试使用以下创建语句:
CREATE EXTERNAL TABLE data (
request_id string,
payload string,
`timestamp` int
)
ROW FORMAT serde 'org.apache.hive.hcatalog.data.JsonSerDe'
LOCATION 's3a://bucket'
有没有 SerDe
property/mapping 我可以用来将嵌套对象定义为字符串?
您可以使用 org.openx.data.jsonserde.JsonSerDe
SerDe
有关此 SerDe 的更多信息,请参阅 [link] (https://github.com/rcongiu/Hive-JSON-Serde)
希望对您有所帮助