城乡与建设部网站,wordpress 首页判断,珠海市建设局官方网站,山东淄博网络科技有限公司数仓实战
安装包大小 安装清单 环境搭建 一、环境搭建01#xff08;机器准备#xff09;
准备好三台虚拟机#xff0c;并进行修改hostname、在hosts文件增加ip地址和主机名映射 。
1、设置每个虚拟机的hostname
vi /etc/sysconfig/network
修改HOSTNAMEnode02修改hostna…数仓实战
安装包大小 安装清单 环境搭建 一、环境搭建01机器准备
准备好三台虚拟机并进行修改hostname、在hosts文件增加ip地址和主机名映射 。
1、设置每个虚拟机的hostname
vi /etc/sysconfig/network
修改HOSTNAMEnode02修改hostname
hostnamectl set-hostname node02
2、设置每个虚拟机的ip地址和主机名映射cat /etc/hostsEOF
192.168.77.130 node01
EOFcat /etc/hostsEOF
192.168.77.131 node02
EOFcat /etc/hostsEOF
192.168.77.132 node03
EOF检查结果
ping cat /etc/hostname二、环境搭建02脚本准备
在node01上操作
mkdir -p /home/hadoop
unzip automaticDeploy.zip -d /home/hadoop/cd /home/hadoop/automaticDeploy/
vi host_ip.txt
vi frames.txt
上传frame.zip
unzip frames.zip -d /home/hadoop/automaticDeploy/chmod x /home/hadoop/automaticDeploy/hadoop/* /home/hadoop/automaticDeploy/systems/*ssh root192.168.77.131 mkdir -p /home/hadoop
ssh root192.168.77.132 mkdir -p /home/hadoopscp -r /home/hadoop/automaticDeploy/ root192.168.77.131:/home/hadoop/
scp -r /home/hadoop/automaticDeploy/ root192.168.77.132:/home/hadoop/三、环境搭建03集群安装
在三台节点中执行
cd /home/hadoop/automaticDeploy/systems/
./batchOperate.sh 安装Hadoop集群
在三台节点中执行
/home/hadoop/automaticDeploy/hadoop/installHadoop.sh
source /etc/profile安装下载失败的两个包
scp -r /home/software/*.rpm root192.168.77.131:/home/software/
scp -r /home/software/*.rpm root192.168.77.132:/home/software/
rpm -ivh *.rpm三台都执行
ssh-copy-id node01
ssh-copy-id node02
ssh-copy-id node03在node01上操作初始化节点
hadoop namenode -format
#启动hadoop
start-all.sh检查node01、node02、node03的jps具体jps见下面截图
在node01上操作
curl http://node01:50070
curl http://192.168.77.130:50070/在node02上执行
/home/hadoop/automaticDeploy/hadoop/installMysql.sh
测试MySQL
mysql -uroot -p
DBa2020*
show databases;在node03执行
/home/hadoop/automaticDeploy/hadoop/installHive.sh /home/hadoop/automaticDeploy/hadoop/installSqoop.sh
source /etc/profile在三台节点中执行
/home/hadoop/automaticDeploy/hadoop/installPresto.sh 在node03执行
/home/hadoop/automaticDeploy/hadoop/installYanagishima.sh 所有节点都执行:
source /etc/profileHadoop log位置 /opt/app/hadoop-2.7.7/logs/ 四、项目流程数据生成
Node02上执行
export MYSQL_PWDDBa2020*
mysql -uroot -e create database mall;mkdir -p /opt/app/scripts
cd /opt/app/scripts/上传\数据生成脚本\*.sql到 /opt/app/scripts
mysql -uroot mall 1建表脚本.sql
mysql -uroot mall 2商品分类数据插入脚本.sql
mysql -uroot mall 3函数脚本.sql
mysql -uroot mall 4存储过程脚本.sql 检查MySQL以上脚本执行结果
mysqluse mall;
#存储过程
CALL init_data(2023-06-28,300,200,300,FALSE);
select count(1) from user_info;
show tables;五、ETL数据导入
node03上操作
mkdir -p /home/warehouse/shell
#文件路径E:\1.后端培训\部署脚本\WarehouseScript
vi /home/warehouse/shell/sqoop_import.sh
cd /home/warehouse/shell
chmod x sqoop_import.sh
#如果导入数据有问题可以执行start-all.sh重启下hadoop集群重试
./sqoop_import.sh all 2023-06-28删除HDFS中文件夹 hadoop fs -rm -r -skipTrash /origin_data/mall
六、ODS层创建数据接入
node03上操作
hive --service hiveserver2
hive --service metastore
在Hive中创建表
mkdir -p /home/warehouse/sql
cd /home/warehouse/sql
vi ods_ddl.sql
hive -f /home/warehouse/sql/ods_ddl.sql
Hive如果有问题jps找runjar kill -9 进程
执行成功后从hive查看结果
hive
show databases;
use mall;
show tables;
cd /home/warehouse/shell
chmod x ods_db.sh
./ods_db.sh 2023-06-28执行成功后到Hive查看结果
hive
use mall;
select count(1) from ods_user_info;
结果为200条记录七、DWD层创建数据接入
在Hive中创建表
vi /home/warehouse/sql/dwd_ddl.sqlhive -f /home/warehouse/sql/dwd_ddl.sql 将数据导入到Hive
cd /home/warehouse/shell
chmod x dwd_db.sh
./dwd_db.sh 2023-06-28执行成功后到Hive查看结果
hive
use mall;
select * from dwd_sku_info where dt2023-06-28 limit 2;八、DWS层创建数据接入
在Hive中创建表(node03操作)
vi /home/warehouse/sql/dws_ddl.sql
hive -f /home/warehouse/sql/dws_ddl.sql
cd /home/warehouse/shell
chmod x dws_db.sh
./dws_db.sh 2023-06-28
执行成功后到Hive查看结果
hive
use mall;
select * from dws_user_action where dt2023-06-28 limit 2;
执行结果:
1 1 189 1 189 2023-06-28
100 1 85 1 85 2023-06-28九、ADS层复购率统计
在Hive中创建表(node03操作)
vi /home/warehouse/sql/ads_sale_ddl.sql
hive -f /home/warehouse/sql/ads_sale_ddl.sqlcd /home/warehouse/shell
chmod x ads_sale.sh
./ads_sale.sh 2023-06-28
执行成功后到Hive查看结果
hive
use mall;
select * from ads_sale_tm_category1_stat_mn limit 2;
执行结果
NULL NULL NULL 152 140 0.92 100 0.78 2023-06 2023-06-28十、ADS层数据导出
node02上执行操作
mkdir -p /home/warehouse/sql
cd /home/warehouse/sqlexport MYSQL_PWDDBa2020*
mysql -uroot mall /home/warehouse/sql/mysql_sale_ddl.sqlnode03上执行操作
cd /home/warehouse/shell
chmod x sqoop_export.sh
./sqoop_export.sh all到mysql查看执行结果node02上执行操作
export MYSQL_PWDDBa2020*
mysql
use mall;
select * from ads_sale_tm_category1_stat_mn;十一、Azkaban自动化调度
在三台节点中执行
/home/hadoop/automaticDeploy/hadoop/installAzkaban.sh
source /etc/profilenode02上执行操作
mysql
use mall;
CALL init_data(2023-09-09,300,300,300,FALSE);
select count(1) from user_info WHERE create_time 2023-09-09 AND create_time 2023-09-10;在三台节点中执行
azkaban-executor-start.sh Node03上执行
azkaban-web-start.sh
使用Node03的IP地址
在浏览器地址栏输入https://192.168.77.132:8443
用户名、密码都是adminFlow Property Override
dt 2023-09-09
useExecutor node03重起集群
需要先启动三台的hadoop#1、启动hadoop
start-all.sh
#2、启动hive
node03上操作
hive --service hiveserver2
hive --service metastore
#3、启动azkaban
在三台节点中执行
azkaban-executor-start.sh
Node03上执行
azkaban-web-start.sh