Hive创建表指定正则表达式

在Hive中创建表时,如果源数据格式不固定,可以使用正则表达式来定义数据格式。本文提供了参考链接和一个具体案例,包括加载数据的文件以及创建表的SQL语句,帮助理解如何在Hive中处理非标准格式的数据。
摘要由CSDN通过智能技术生成

hive创建表的时候我们一般使用的分隔符是’\t’,但是有时候我们提供的源数据本身并没有按照严格的格式来,因此我们可以创建表的时候指定正则表达式,加载数据的时候指定数据格式。

参考链接

hive的Apache Weblog Data
案例:

加载数据用的到文件

链接:https://pan.baidu.com/s/1bp-1yRKsYZrZplX2KIsv0A 密码:rm0q
创建表SQL

create table IF NOT EXISTS bf_log (
remote_addr string,
remote_user string,
time_local string,
request string,
status string,
body_bytes_sent string,
request_body string,
http_referer string,
http_user_agent string,
http_x_forwarded_for string,
host string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
  "input.regex" = "(\"[^ ]*\") (\"[-|^ ]*\") (\"[^}]*
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值