我有两个在不同日期生成的JSON文件。 它们都属于相同的业务规范。所以我想插入一个蜂巢表。怎么做?
场景:
拳头JSON: { “a2, “ b”:3, }
第二个JSON: { “ a”:1, “ b”,2, “ c”,3 }
以上两项都必须插入同一配置单元表中。以及如何读取字段并从中创建一个新表,这将是一个平坦的表?
答案 0 :(得分:0)
将文件放入相同的表位置(或使用LOAD DATA command)并使用JSONSerDe:
CREATE EXTERNAL TABLE mytable (
a int,
b int,
c int
)
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
LOCATION '<HDFS location>' --this is HDFS/S3 location
;
如果某些JSON对象不包含表DDL中定义的所有键,则不存在的键将被解析为NULL。