我有一个像这样的 json 对象数组。
[
{
“编号”:2,
“创建者”:0,
“状态”:0,
"utcTime": "2014 年 10 月 14 日下午 4:49:47",
"placeName": "21/F, Cunningham Main Rd, Sampangi Rama NagarBengaluru KarnatakaIndia",
“经度”:77.5983817,
“纬度”:12.9832418,
"createdDate": "2014 年 9 月 16 日下午 2:59:03",
“准确性”:5,
“登录类型”:1,
“手机号”:“0000005567”
},
{
“编号”:4,
“创建者”:0,
“状态”:0,
"utcTime": "2014 年 10 月 14 日下午 4:52:48",
"placeName": "21/F, Cunningham Main Rd, Sampangi Rama NagarBengaluru KarnatakaIndia",
“经度”:77.5983817,
“纬度”:12.9832418,
"createdDate": "2014 年 10 月 8 日下午 5:24:42",
“准确性”:5,
“登录类型”:1,
“手机号”:“0000005566”
},
{
“编号”:1,
“创建者”:13,
“状态”:1,
"utcTime": "2014 年 10 月 14 日下午 4:57:43",
"placeName": "21/F, Cunningham Main Rd, Sampangi Rama NagarBengaluru KarnatakaIndia",
“经度”:77.5983817,
“纬度”:12.9832418,
"createdDate": "2014 年 9 月 15 日下午 12:10:44",
“准确性”:5,
“登录类型”:1,
“手机号”:“8147708287”
},
{
“编号”:3,
“创建者”:0,
“状态”:0,
"地名": "没有",
“经度”:0,
“纬度”:0,
"createdDate": "2014 年 9 月 16 日下午 6:45:50",
“准确性”:2,
“登录类型”:1,
“手机号”:“9861198611”
},
{
“编号”:6,
“创建者”:0,
“状态”:0,
"utcTime": "2014 年 10 月 14 日下午 4:49:47",
"地名": "没有",
“经度”:0,
“纬度”:0,
"createdDate": "2014 年 10 月 8 日下午 6:51:35",
“准确度”:0,
“登录类型”:1,
“手机号”:“221133447”
},
{
“编号”:5,
“创建者”:0,
“状态”:0,
"utcTime": "2014 年 10 月 14 日下午 4:49:47",
"地名": "没有",
“经度”:0,
“纬度”:0,
"createdDate": "2014 年 10 月 8 日下午 6:43:41",
“准确度”:0,
“登录类型”:1,
“手机号”:“5585869635”
}
]
我需要使用这个 json 对象数组在配置单元中创建外部表,为此我正在尝试这个不起作用的查询,请帮助我完成这个查询。
添加 JAR json-serde-1.1.9.2-Hive13.jar;
创建外部表 mobile_structuring_table(
身份证,
由字符串创建,
状态字符串,
utcTime 字符串,
地名字符串,
经度双倍,
纬度双倍,
创建日期字符串,
精度字符串,
登录类型字符串,
手机无字符串
)
行格式 SERDE 'org.openx.data.jsonserde.JsonSerDe'
位置 '/user/root/mobile_data/rest_api_mobile_data.json'
;
是这种 json 对象数组所需的任何特定 serde。
最佳答案
从您的 json 文件中删除方括号。它希望他们在
{...........}
{...........}
{...........}
关于arrays - 如何使用 json 对象数组创建外部配置单元表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26755369/