2024-04-23 07:08:37 发布
网友
这个问题可能是重复的。在
请检查这个link和这个blog。在
根据以上2个链接,不能有多个分隔符,不支持。在
但有一个办法可以解决。它可以通过使用RegExSerde来实现。在
RegExSerde
您需要为您的业务需求找出一个regex模式,并将其保存在serde属性中。在
使用RegexSerDe,可以使用\s+匹配多个空白类型(单空格、多空格、制表符)。在
\s+
我没有我的蜂箱实例在我面前进行测试,但你应该从下面的代码中得到想法。在
CREATE TABLE file.log ( dateFact STRING, country STRING, state STRING, id STRING, value STRING ) ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe' WITH SERDEPROPERTIES ( "input.regex" = "([0-9]{4}-[0-9]{2}-[0-9]{2})\s+(\w+)\s+(\w+)\s+(\d+)\s+([\d.]+)", "output.format.string" = "%1$s %2$s %3$s %4$s %5$s" ) STORED AS TEXTFILE;
这个问题可能是重复的。在
请检查这个link和这个blog。在
根据以上2个链接,不能有多个分隔符,不支持。在
但有一个办法可以解决。它可以通过使用
RegExSerde
来实现。在您需要为您的业务需求找出一个regex模式,并将其保存在serde属性中。在
使用RegexSerDe,可以使用
\s+
匹配多个空白类型(单空格、多空格、制表符)。在我没有我的蜂箱实例在我面前进行测试,但你应该从下面的代码中得到想法。在
相关问题 更多 >
编程相关推荐