在应用Hive之前,首先搭建Hive环境,关于Hive的搭建 参考之前的搭建文档
http://blog.csdn.net/liulihui1988/article/details/74351532
Hive分析Tomcat日志数据
- localhost_access_log.2017-07-07.txt 数据格式
由于 localhost_access_log.2017-07-07.txt 数据格式是可定制的,需要正则表达式,
- 创建对应的log_emp表结构
CREATE TABLE log_emp (
host STRING,
identity STRING,
user STRING,
time STRING,
request STRING,
status STRING,
size STRING)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
"input.regex" = "([^ ]*) ([^ ]*) ([^ ]*) (-|\\[[^\\]]*\\]) (\"[^\"]*\") (-|[0-9]*) (-|[0-9]*)"
)
STORED AS TEXTFILE;
生成log_emp表成功
- 导入 提供 正则表达式 的jar包
hive> add jar /usr/local/hiv/lib/hive-contrib-0.13.1.jar
执行命令 select 查询
hive> select * from log_emp where request like 'GET /%HTTP%';
测试完成