当你遇到大数据里含有json时候,离线数仓开发,hive有特别好用的get_json函数。
例如下面的:
SELECT get_json_object(xjson,"$.[0].age") FROM person
但遇到实时处理该咋办?
同学们会说,Flink SQL里不是有吗?好吧,你太想当然了。
在FlinkSQL,特别是最好用的FlinkSQL里,居然没有成型的JSON解析函数。
根据遇到的情形,有好几种方式。
如果遇到的是json有固定结构,那在定义flinkSQL的表结构里可以。比如:
像这样的json,
{
"funcName": "test",
"data": {
"snapshots": [{
"content_type": "application/x-gzip-compressed-jpeg",
"url": "https://blog.csdn.net/xianpanjia4616"
}],
"audio": [{
"content_type": "audio/wav",
"url": " https://bss.csdn.net/m/topic/blog_star2020/detail?username=xianpanjia4616"
}]
},
"resultMap": {
"result": {
"cover": "/data/test/log.txt"
},
"is