栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

项目实现:电商网站日志采集(四。搭建数据仓库)

项目实现:电商网站日志采集(四。搭建数据仓库)

四.搭建数据仓库
数仓搭建分为
Ods(数据运营层)数据原始层,最接近数据源中数据的一层
Dwd(数据仓库层)从ODS获得数据建立数据模型
DWB:data warehouse base 数据基础层,存储的是客观数据,一般用作中间层,可以认为是大量指标的数据层。
Dws(服务数据层)整合汇总成分析某一个主题域的服务数据,一般是宽表
Ads(数据服务层)该层主要是提供数据产品和数据分析使用的数据,宽表一般就放在这里
写两个脚本和一个udf函数
(1)创建编辑web_log_import.sh 脚本
文件内容:#!/bin/ bash
HQL ="
CREATE DATAbase IF NOТ EXISTS web _ log;
USE web _ log;
CREATE DATAbase IF NOТ EXISTS web _ log(
path string
)
PARТITIonED BY ( day string,hour string )
ROW FORMAT DELIМITED
FIELDS TERMINATED BY ‘t’;
LOAD DATA INPATH ‘/ web /log /etl/$1/$2’ INТO TABLE ads_web_log PARТITIonED ( day =$1’,hour=‘ 2 ′ ) ; " h i v e − e " 2'); " hive -e " 2′);"hive−e"НQL”
(2)创建编辑web_log analysis.sh 脚本
文件内容如下:
#!/bin/bash
HQL="
USE web_log;
DROp TABLE IF EXISTS dwd_web_log;
CREATE TABLE dwd_web_log AS
SELECT path, day, hour
FROM ods_web_log
WHERe day=’$1’ and hour=' 2 ′ ; A D D J A R / h o m e / h a d o o p / w e b l o g / U D F G e t S h o p . j a r ; C R E A T E T E M P O R A R Y F U N C T I O N G E T S H O P a s ′ l i u . U D F G e t S h o p ′ ; D R O P T A B L E I F E X I S T S d w s w e b l o g ; C R E A T E T A B L E d w s w e b l o g A S S E L E C T G E T S H O P ( p a t h ) s h o p , d a y , h o u r F R O M d w d w e b l o g ; D R O P T A B L E I F E X I S T S a d s w e b l o g ; C R E A T E T A B L E a d s w e b l o g A S S E L E C T s h o p , C O U N T ( ∗ ) c o u n t , d a y , h o u r , D E N S E R A N K ( ) O V E R ( O R D E R B Y C O U N T ( ∗ ) D E S C ) r a n k F R O M d w s w e b l o g g r o u p b y s h o p , d a y , h o u r ; " h i v e − e " 2'; ADD JAR /home/hadoop/web_log/UDFGetShop.jar; CREATE TEMPORARY FUNCTION GET_SHOP as 'liu.UDFGetShop'; DROp TABLE IF EXISTS dws_web_log; CREATE TABLE dws_web_log AS SELECT GET_SHOP(path) shop, day, hour FROM dwd_web_log; DROp TABLE IF EXISTS ads_web_log; CREATE TABLE ads_web_log AS SELECT shop , COUNT(*) count , day , hour , DENSE_RANK() OVER(ORDER BY COUNT(*) DESC) rank FROM dws_web_log group by shop,day,hour; " hive -e " 2′;ADDJAR/home/hadoop/webl​og/UDFGetShop.jar;CREATETEMPORARYFUNCTIONGETS​HOPas′liu.UDFGetShop′;DROPTABLEIFEXISTSdwsw​ebl​og;CREATETABLEdwsw​ebl​ogASSELECTGETS​HOP(path)shop,day,hourFROMdwdw​ebl​og;DROPTABLEIFEXISTSadsw​ebl​og;CREATETABLEadsw​ebl​ogASSELECTshop,COUNT(∗)count,day,hour,DENSER​ANK()OVER(ORDERBYCOUNT(∗)DESC)rankFROMdwsw​ebl​oggroupbyshop,day,hour;"hive−e"HQL"

(3)编写UDF函数
(4)打包上传UDF架包上传到/home/hadoop/web_log
(5)执行脚本文件
执行web_log_import.sh 脚本

执行web_log analysis.sh 脚本

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/670949.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号