1、先加载 rating.json 文件到 hive 的一个原始表 rate_json
create table rate_json(line string) row format delimited;
load data local inpath ‘/home/hadoop/rating.json’ into table rate_json;
2、创建 rate 这张表用来存储解析 json 出来的字段:
create table rate(movie int, rate int, unixtime int, userid int) row format delimited fields
terminated by ‘\t’;
解析 json,得到结果之后存入 rate 表:
insert into table rate select
get_json_object(line,’.movie′)asmoive,getjsonobject(line,′.movie') as moive,
get_json_object(line,'.movie′)asmoive,getjsonobject(line,′.rate’) as rate,
get_json_object(line,’.timeStamp′)asunixtime,getjsonobject(line,′.timeStamp') as unixtime,
get_json_object(line,'.timeStamp′)asunixtime,getjsonobject(line,′.uid’) as userid
from rate_json;
解决多字段如(||)
create table t_bi_reg(id string,name string)
row format serde ‘org.apache.hadoop.hive.serde2.RegexSerDe’
with serdeproperties(‘input.regex’=’(.)\|\|(.)’,‘output.format.string’=’%1ss %2ss’)
stored as textfile;
json建表

最新推荐文章于 2024-12-05 16:46:12 发布
