【发布时间】:2018-12-12 13:55:39
【问题描述】:
我有一个如下表结构。
CREATE TABLE db.TEST(
f1 string,
f2 string,
f3 string)
ROW FORMAT SERDE
'org.apache.hadoop.hive.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
'input.regex'='(.{2})(.{3})(.{4})' )
STORED AS INPUTFORMAT
'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
'hdfs://nameservice1/location/TEST';
我尝试在下表中插入一条记录。
insert overwrite table db.TEST2
select '12' as a , '123' as b , '1234' as c ;
在尝试向表中插入数据时,遇到以下错误。
原因:java.lang.UnsupportedOperationException:Regex SerDe 不支持 serialize() 方法 在 org.apache.hadoop.hive.serde2.RegexSerDe.serialize(RegexSerDe.java:289)
知道出了什么问题吗?
【问题讨论】:
标签: regex hadoop hive hiveql regexserde