大数据模块开发----统计分析

本文介绍了在数据仓库建设后,如何通过Hive SQL进行流量分析。内容涵盖多维度统计如PV总量、人均浏览量、来源TOPN、受访页面分析、访客行为等,并提供了具体的HQL查询示例,展示了如何进行业务流程中的关键路径转化率分析。
摘要由CSDN通过智能技术生成

数据仓库建设好以后,用户就可以编写Hive SQL语句对其进行访问并对其中数据进行分析。

在实际生产中,究竟需要哪些统计指标通常由数据需求相关部门人员提出,而且会不断有新的统计需求产生,以下为网站流量分析中的一些典型指标示例。

注:每一种统计指标都可以跟各维度表进行钻取。

1. 流量分析1.1. 多维度统计PV总量按时间维度

--计算每小时pvs,注意gruop by语法

select count(*) as pvs,month,day,hour from ods_weblog_detail group by month,day,hour;

方式一:直接在ods_weblog_detail单表上进行查询

--计算该处理批次(一天)中的各小时pvs

drop table dw_pvs_everyhour_oneday;

create table dw_pvs_everyhour_oneday(month string,day string,hour string,pvs bigint) partitioned by(datestr string);

insert into table dw_pvs_everyhour_oneday partition(datestr='20130918')

select a.month as month,a.day as day,a.hour as hour,count(*) as pvs from ods_weblog_detail a

where  a.datestr='20130918' group by a.month,a.day,a.hour;

--计算每天的pvs

drop table dw_pvs_everyday;

create table dw_pvs_everyday(pvs bigint,month string,day string);

insert into table dw_pvs_everyday

select count(*) as pvs,a.month as month,a.day as day from ods_weblog_detail a

group by a.month,a.day;

方式二:与时间维表关联查询

--维度:日

drop table dw_pvs_everyday;

create table dw_pvs_everyday(pvs bigint,month string,day string);

insert into table dw_pvs_everyday

select count(*) as pvs,a.month as month,a.day as day from (select distinct month, day from t_dim_time) a

join ods_weblog_detail b

on a.month=b.month and a.day=b.day

group by a.month,a.day;

--维度:月

drop table dw_pvs_everymonth;

create table dw_pvs_everymonth (pvs bigint,month string);

insert into table dw_pvs_everymonth

select count(*) as pvs,a.month from (select distinct month from t_dim_time)  a

join ods_weblog_detail b on a.month=b.month group by a.month;

--另外,也可以直接利用之前的计算结果。比如从之前算好的小时结果中统计每一天的

Insert into table dw_pvs_everyday

Select sum(pvs) as pvs,month,day from dw_pvs_everyhour_oneday group by month,day having day='18';

终端维度

数据中能够反映出用户终端信息的字段是http_user_agent。

User Agent也简称UA。它是一个特殊字符串头,是一种向访问网站提供所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。例如:

User-Agent,Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.276 Safari/537.36

上述UA信息就可以提取出以下的信息:

chrome 58.0、浏览器        chrome浏览器版本        58.0系统平台        windows

浏览器内核        webkit

这里不再拓展相关知识,感兴趣的可以查看参考资料如何解析UA。

可以用下面的语句进行试探性统计,当然这样的准确度不是很高。

select distinct(http_user_agent) from ods_weblog_detail where http_user_agent like '%Chrome%' limit 200;

按栏目维度

网站栏目可以理解为网站中内容相关的主题集中。体现在域名上来看就是不同的栏目会有不同的二级目录。比如某网站网址为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值