组合pig和hive来进行数据分析

本文介绍了如何通过Pig和Hive处理日志数据中的操作系统信息,包括初步数据清洗、建立Hive表及数据统计等步骤。重点展示了Pig在数据清洗方面的优势,以及Hive在数据统计分析中的便捷性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

接到产品一个任务,需要对使用产品的用户操作系统来个分析。对清洗后的hive数据进行分析,发现,数据恰恰把操作系统数据

进行了过滤,只有到rawlog里去进行数据分析了。但由于rawlog没有和数据库进行关联,就只有先对rawlog进行初步手工清洗,

不清洗掉操作系统数据,再建hive临时表来解决了。

第一步,用pig进行数据初步清洗,上代码

REGISTER 'elephant-bird-core-3.0.8.jar';
REGISTER 'elephant-bird-pig-3.0.8.jar';
set default_parallel 6;
org = load '/rawlog/vv/201503/*' using PigStorage('"') as(ip,get,stat,x1,x2,agent,x3,x4);  
ff = foreach org generate get ,'#',agent;      
store ff into '/tmp/vv-tmp/' ; 

第二步,建立hive表。

CREATE EXTERNAL TABLE tmp_vv(url String, os string) 
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '#'   
LOCATION  '/tmp/vv-tmp'; 

由于在日志里,看到操作系统是如下表示。

(compatible; MSIE 6.0; Windows NT 5.1; SV1)

查询了下,整理出一个相对应的需求。

Microsoft Windows XP (Windows NT 5.1) 
Microsoft Windows 7 (Windows NT 6.1) 
Microsoft Windows 8 (Windows NT 6.2) 


第四步,对hive数据进行数据统计。

分别如下

hive> select count(*)  from tmp_vv where os  like '%Windows NT x.X%' limit 10;
其中x.x就是对应的操作系统版本。

总结:本项目是一个很简单的组合pig和hive的项目。在这个项目里,进一步体会到Pig在清洗数据方面的强大性,并且处理后的数据进入数据仓库后,用hive

能很方便的进行相关的统计。同时辅以自动化的查询界面,能让业务人员更方便的进行数据查询。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值