05.网站点击流数据分析项目_模块开发_ETL

news/2024/5/20 23:54:10/文章来源:https://blog.csdn.net/weixin_33948416/article/details/94640537

  项目的数据分析过程在hadoop集群上实现,主要应用hive数据仓库工具,因此,采集并经过预处理后的数据,需

要加载到hive数据仓库中,以进行后续的挖掘分析。

  ETL:用来描述将数据从来源端经过抽取(extract)、交互转换(transform)、加载(load)至目的端的过程

6.1创建原始数据表

  --在hive仓库中建贴源数据表

drop table if exists shizhan.ods_weblog_origin;
create table shizhan.ods_weblog_origin(
valid string,
remote_addr string,
remote_user string,
time_local string,
request string,
status string,
body_bytes_sent string,
http_referer string,
http_user_agent string)
partitioned by (datestr string)
row format delimited
fields terminated by '\001';

   

  --点击流模型pageviews

drop table if exists ods_click_pageviews;
create table ods_click_pageviews(
Session string,
remote_addr string,
remote_user string,
time_local string,
request string,
visit_step string,
page_staylong string,
http_referer string,
http_user_agent string,
body_bytes_sent string,
status string)
partitioned by (datestr string)
row format delimited
fields terminated by '\001';

  

  --点击流visit模型表

drop table if exist click_stream_visit;
create table click_stream_visit(
session     string,
remote_addr string,
inTime      string,
outTime     string,
inPage      string,
outPage     string,
referal     string,
pageVisits  int)
partitioned by (datestr string);

 6.2 导入数据  

  1.首先将日志文件上传至服务器,原则上是在HDFS上的(wash_part-m-00000、pageview_part-r-00000、visiout_part-r-00000)

  2.入清洗结果数据到贴源数据表:ods_weblog_origin

  load data local  inpath '/data/wash_part-m-00000' into table ods_weblog_origin partition(datestr='2013-09-18');

   3.导入点击流模型pageviews数据到:ods_click_pageviews

  load data local  inpath '/data/pageview_part-r-00000' into table ods_click_pageviews  partition(datestr='2013-09-18');

  4.导入点击流模型visit数据到:click_stream_visit

  load data local inpath '/data/visiout_part-r-00000' into table click_stream_visit partition(datestr='2013-09-18');

6.3 生成ODS层明细宽表

6.3.1 需求概述

  整个数据分析的过程是按照数据仓库的层次分层进行的,总体来说,是从操作数据存储ODS原始数据中整理出一

些中间表(比如,为后续分析方便,将原始数据中的时间、url等非结构化数据作结构化抽取,将各种字段信息进行细化,

形成明细表),然后再在中间表的基础之上统计出各种指标数据

6.3.2 ETL实现:

  建表——明细表ods_weblog_detail    (源:ods_weblog_origin)   (目标:ods_weblog_detail)

drop table ods_weblog_detail;
create table ods_weblog_detail(
valid           string, --有效标识
remote_addr     string, --来源IP
remote_user     string, --用户标识
time_local      string, --访问完整时间
daystr          string, --访问日期
timestr         string, --访问时间
month           string, --访问月
day             string, --访问日
hour            string, --访问时
request         string, --请求的url
status          string, --响应码
body_bytes_sent string, --传输字节数
http_referer    string, --来源url
ref_host        string, --来源的host
ref_path        string, --来源的路径
ref_query       string, --来源参数query
ref_query_id    string, --来源参数query的值
http_user_agent string --客户终端标识
)
partitioned by(datestr string);

   抽取refer_url,将来访url分离出host  path  query  query id,抽取转换time_local字段

insert into table ods_weblog_detail partition(datestr='2013-09-18')
select c.valid,c.remote_addr,c.remote_user,c.time_local,
substring(c.time_local,0,10) as daystr,
substring(c.time_local,12) as tmstr,
substring(c.time_local,6,2) as month,
substring(c.time_local,9,2) as day,
substring(c.time_local,11,3) as hour,
c.request,c.status,c.body_bytes_sent,c.http_referer,c.ref_host,c.ref_path,c.ref_query,c.ref_query_id,c.http_user_agent
from
(SELECT 
a.valid,a.remote_addr,a.remote_user,a.time_local,
a.request,a.status,a.body_bytes_sent,a.http_referer,a.http_user_agent,b.ref_host,b.ref_path,b.ref_query,b.ref_query_id 
FROM ods_weblog_origin a LATERAL VIEW parse_url_tuple(regexp_replace(http_referer, "\"", ""), 'HOST', 'PATH','QUERY', 'QUERY:id') b as ref_host, ref_path, ref_query, ref_query_id) c

 

 

  

 

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

  

操作数据存储ODS

转载于:https://www.cnblogs.com/yaboya/p/9334441.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_826685.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于'大热网'SEO及百度推广的研究(上)

基本概念 SEO:搜索引擎优化,简单来说就是 靠自己做优化,使得排名靠前,时间长见效慢。 SEM:搜索引擎营销,简单来说就是 给“baidu”等搜索引擎钱,通过推广竞价的方式,达到排名靠前的效果&#xf…

python+flask搭建CNN在线识别手写中文网站

使用pythonflask搭建的一个网站,然后从网页的写字板上获取鼠标手写的汉字经过转码后传回后台,并经过图片裁剪处理之后传入CNN手写中文识别的模型中进行识别,最后通过PIL将识别结果生成图片,最后异步回传给web端进行识别结果展示。…

flask微视频网站(环境准备)

文章目录简介项目结构蓝图数据库简介 跟着做一个微电影视频网站WindowsPython3.9.6MySQL8.0pycharm安装py虚拟环境# 不添加源就会失败,还提示你要升级pip,千万别升级! pip install -i http://pypi.douban.com/simple/ --trusted-host pypi.d…

flask视频网站(前端)

文章目录前端界面前台电影列表404后台小结前端界面 前端的搭建目前水平只能靠模板了 在templates中新建admin/home 前台 搭建顶部和底部,新建 home.html 这部分是所有页面都要用到的,后面的模板继承也是基于此,用block增加内容&#xff01…

flask视频网站(后台管理)

文章目录简介管理员登录标签管理电影管理电影预告管理会员管理评论管理电影收藏管理员密码修改日志管理操作日志管理员登录日志会员登录日志小结简介 这一部分要实现具体的后台管理逻辑基本逻辑如下: 管理员登录 将之前models中数据库的认证部分移动到app初始化…

flask视频网站(权限控制)

文章目录AuthRoleAdmin权限控制Auth 基于角色的访问权限控制 有的管理员只能访问日志,而有的能访问会员列表,有的管理电影这部分还属于admin 从创建表单模型开始,别着急class AuthForm(FlaskForm):"""访问权限控制"&quo…

ASP.NET Core 网站在Docker中运行

Docker作为新一代的虚拟化方式,未来肯定会得到广泛的应用,传统虚拟机的部署方式要保证开发环境、测试环境、UAT环境、生产环境的依赖一致性,需要大量的运维人力,使用Docker我们可以实现一次部署,到处运行。 本文介绍如…

给你介绍一个假的苹果网站,能肉眼看出来算我输!

这或许是用肉眼最难分辨的钓鱼网站,没有之一,不信你试试,能看出端倪吗? 网站的 URL 地址显示的是苹果官网,网址旁边是安全字样和绿色小锁,表示网站信息基于 https 加密传输,完全没什么问题&…

新手如何掌握制作和提交网站地图?

新手如何掌握制作和提交网站地图?网站地图作为根据网站的结构,框架,内容生成的导航网页文件。大多数人都知道网站地图对于提高用户体验有好处:它们为网站访问者指明方向,并帮助迷失的访问者找到他们想看的页面。那么什么是网站地…

006-网站统计中的数据收集原理及实现

网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析、百度统计和腾讯分析等等。所有这些统计分析工具的第一步都是网站访问数据的收集。目前主流的数据收集方式基本都是基于javascript的。本文将简要分析这种数据收集的原理&#xf…

漫谈聚类--网站

http://blog.pluskid.org/?page_id78 转载于:https://www.cnblogs.com/lm3306/p/9347665.html

json在线解析及格式化验证网站

2019独角兽企业重金招聘Python工程师标准>>> https://www.json.cn/ 转载于:https://my.oschina.net/u/3766116/blog/1861799

成都SEO网站优化与新媒体流量互通_成都辰星建站

为什么80%的码农都做不了架构师?>>> 成都SEO企业网站优化流量来源途径与互联网新媒体列表及流量互通实施方案,新媒体运营在当下的互联网流量运营方式占据着举足轻重的作用,企业网站流量导入外链建设已经逐渐削弱,星的流量运营导入方式已经诞生&#xff…

电商网站架构探索|SOA分布式架构详解

目前很多的企业都有自己的电商网站,但随着业务量的增长,并发量高了。由于平台架构的一些不足,会导致一系列严重的问题,电子商务平台的安全性,承受能力也经受着严峻的考验,而市面上绝大多数的电商网站是业务…

百度关键词模拟发包php程序,PHP可视化百度小程序平台微信狗源码OEM招商加盟版(多套网站风格模板+一键搭建)...

【温馨提示】源码包解压密码:www.youhutong.com资源描述PHP可视化百度小程序平台微信狗源码OEM招商加盟版(多套网站风格模板一键搭建)源码介绍:它拥有以下几个特点:1、系统终身使用,可以生成无数小程序;2、自带多种行业…

log4j mysql 详细日志_log4j将日志存储到数据库_太平洋学习网|一个最全的javaweb,js,css,html5,csdn,android,linux的学习网站。...

log4j是javaEE日志输出文件,通常情况下我们都是把log日志输出到指定的日志文件中,在这儿我们使用log4j将日志存储到mysql,oracle数据库表中,使用log4j前必须引入log4j.jar 和commons-logging.jar这两个jar包。一:配置l…

获取手机号_网站获取手机号的方法

很多人疑惑网站和app中的手机电话号码数据是怎么抓取的,是如何实现的,我在这里说下。一、数据的来源现在数据的来源有很多种,我给大家说下常见的几种数据来源方式和抓取方式。1、运营商数据,这种来源方式的话是运营商会有一个http…

WebMatrixRazor建站系列之WebMatrix介绍

WebMatrix介绍 WebMatrix是微软开发的一个免费的,轻量级Web开发工具。提供了一种简单的方式让我们创建一个站点。它包括IIS Express(Web服务器),ASP.NET(Web框架),和SQL Server Compact&#xf…

如何扫描网站的php文件在哪里,PHP实现的网站目录扫描索引工具

代码很简单,这里就不多废话了,本代码来至一位网友的投稿,经测试可用error_reporting(E_ALL & ~E_NOTICE);ignore_user_abort();set_time_limit(0);if ($_GET[act] op) {$data_url $_GET[url] . /;$hz $_GET[type];list($fw1, $fw2) e…

为您的IIS6下的网站配置Rewrite伪静态组件

首先我们下载Rewrite伪静态组件到服务器,点击下载,然后解压到D:\Rewrite下,解压后如下图: 温馨提示:ReWrite组件所在目录要有Users或者Everyone默认访问权限。您可以点击该目录右键,属性,安全&a…