使用hadoop平台进行小型网站日志分析
0.上传日志文件到linux中,通过flume将文件收集到hdfs中。
执行命令/home/cloud/flume/bin/flume-ng agent -n a4 -c conf -f /home/cloud/flume/conf/a4.conf -Dflume.root.logger=DEBUG,console
1.建立hive表
create external table bbslog (ip string,logtime string,url string) partitioned by (logdate string) row format delimited fields terminated by '\t' location '/cleaned';
2.创建shell脚本
touch daily.sh
添加执行权限
chmod +x daily.sh
daily.sh:
CURRENT=`date +%Y%m%d`
#对数据进行清理,保存到cleaned文件夹,按照当前日期进行保存
/home/cloud/hadoop/bin/hadoop jar /home/cloud/cleaner.jar /flume/$CURRENT /cleaned/$CURRENT
#修改hive表,添加当前日期的分区
/home/cloud/hive/bin/hive -e "alter table bbslog add partition (logdate=$CURRENT) location 'cleaned/$CURRENT'"
#使用hive进行分析,根据业务需求而定
#统计pv并计入每日的pv表
/home/cloud/hive/bin/hive -e "create table pv_$CURRENT row format delimited fields terminated by '\t' as select count(*) from bbslog where logdate=$CURRENT;"
#统计点击次数过20的潜在用户
/home/cloud/hive/bin/hive -e "create table vip _$CURRENT row format delimited fields terminated by '\t' as select $CURRENT,ip,count(*) as hits from bbslog where logdate=$CURRENT group by ip having hits > 20 order by hits desc"
#查询uv
/home/cloud/hive/bin/hive -e "create table uv_$CURRENT row format delimited fields terminated by '\t' as select count(distinct ip) from bbslog where logdate=$CURRENT"
#查询每天的注册人数
/home/cloud/hive/bin/hive -e "create table reg_$CURRENT row format delimited fields terminated by '\t' as select count(*) from bbslog where logdate=$CURRENT AND instr(url,'member.php?mod=register')>0"
#将hive表中的数据导入mysql
/home/cloud/sqoop/bin/sqoop export --connect jdbc:mysql://cloud3:3306/jchubby --username root --password JChubby123 --export-dir "/user/hive/warehouse/vip_$CURRENT" --table vip --fields-terminated-by '\t'
使用hadoop平台进行小型网站日志分析的更多相关文章
- Hadoop学习笔记—20.网站日志分析项目案例(二)数据清洗
		
网站日志分析项目案例(一)项目介绍:http://www.cnblogs.com/edisonchou/p/4449082.html 网站日志分析项目案例(二)数据清洗:当前页面 网站日志分析项目案例 ...
 - Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍
		
网站日志分析项目案例(一)项目介绍:当前页面 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edisonchou/p/4458219.html 网站日志分析项目案例 ...
 - Hadoop学习笔记—20.网站日志分析项目案例(三)统计分析
		
网站日志分析项目案例(一)项目介绍:http://www.cnblogs.com/edisonchou/p/4449082.html 网站日志分析项目案例(二)数据清洗:http://www.cnbl ...
 - Hadoop学习笔记—20.网站日志分析项目案例
		
1.1 项目来源 本次要实践的数据日志来源于国内某技术学习论坛,该论坛由某培训机构主办,汇聚了众多技术学习者,每天都有人发帖.回帖,如图1所示. 图1 项目来源网站-技术学习论坛 本次实践的目的就在于 ...
 - hadoop入门之海量Web日志分析 用Hadoop提取KPI统计指标
		
转载自:http://blog.fens.me/hadoop-mapreduce-log-kpi/ 今天学习了这一篇博客,写得十分好,照着这篇博客敲了一遍. 发现几个问题, 一是这篇博客中采用的had ...
 - Apache 网站日志分析
		
1.获得访问前 10 位的 ip 地址 [root@apache ~]# cat access_log |awk '{print $1}'|sort|uniq -c|sort -nr|head -10 ...
 - 基于Spark的网站日志分析
		
本文只展示核心代码,完整代码见文末链接. Web Log Analysis 提取需要的log信息,包括time, traffic, ip, web address 进一步解析第一步获得的log信息,如 ...
 - IIS 网站日志分析
		
最近由于ADSL代理总出问题,导致爬虫服务器总被目标网站封,由于请求内容总是空,前端APP获取不到想要的内容就一直刷新,导致爬虫服务器请求更加繁忙. 爬虫服务器每执行完一个流程,都会给统计服务器Pos ...
 - spark实战之网站日志分析
		
前面一篇应该算是比较详细的介绍了spark的基础知识,在了解了一些spark的知识之后相必大家对spark应该不算陌生了吧!如果你之前写过MapReduce,现在对spark也很熟悉的话我想你再也不想 ...
 
随机推荐
- inno setup 5 添加快捷方式默认选中
			
转载:https://www.cnblogs.com/x_wukong/p/5012412.html https://zhidao.baidu.com/question/312006120.html ...
 - python--selectors
			
import socket from selectors import DefaultSelector, EVENT_READ, EVENT_WRITE # 会根据当前的操作系统选择一个合适的文件描述 ...
 - Selenium2+python自动化36-判断元素存在【转载】
			
前言 最近有很多小伙伴在问如何判断一个元素是否存在,这个方法在selenium里面是没有的,需要自己写咯. 元素不存在的话,操作元素会报错,或者元素有多个,不唯一的时候也会报错.本篇介绍两种判断元素存 ...
 - rest_framework 认证流程
			
一.基本流程 rest_framework框架是基于CBV基础开发的(VPIView(View)),所以基本流程与CBV流程相似 当我们的请求发来后,会走as_views,执行view里面的方法,最开 ...
 - 服务器老是出现502 Bad Gateway?
			
给你的upstream增加keepalive配置没有? upstream backend { server http://127.0.0.1:8888; keepalive 32; } 在nginx和 ...
 - AC日记——Success Rate codeforces 807c
			
Success Rate 思路: 水题: 代码: #include <cstdio> #include <cstring> #include <iostream> ...
 - 【cocos2d-js官方文档】十七、事件分发机制
			
简介http://blog.csdn.net/qinning199/article/details/41951517 游戏开发中一个很重要的功能就是交互,如果没有与用户的交互,那么游戏将变成动画,而处 ...
 - CF 1003D Coins and Queries【位运算/硬币值都为2的幂/贪心】
			
Polycarp has n coins, the value of the i-th coin is ai. It is guaranteed that all the values are int ...
 - Python3 list与循环练习(购物车)
			
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # Author;Tsukasa product_list = [ ('Iphone',5800), (' ...
 - 并查集&线段树&树状数组&排序二叉树
			
超级无敌巨牛逼并查集(带权并查集)https://vjudge.net/problem/UVALive-4487 带删点的加权并查集 https://vjudge.net/problem/UVA-11 ...