基于mapreduce的电商购物用户行为分析及可视化_hbase

发布于:2025-06-30 ⋅ 阅读:(18) ⋅ 点赞:(0)

基于mapreduce的电商购物用户行为分析及可视化

项目概况

[👇👇👇👇👇👇👇👇]
点这里,查看所有项目
[👆👆👆👆👆👆👆👆]

数据类型

天池淘宝用户行为数据

开发环境

centos7

软件版本

python3.8.18、hadoop3.2.0、jdk8、hbase2.2.7

开发语言

python、shell、SQL

开发流程

数据上传(hdfs)->数据预处理(mapreduce)->数据分析(mapreduce)–>数据抽取(java)->数据存储(hbase)->可视化(springboot)

可视化图表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

操作步骤

启动Hadoop


# 离开安全模式: hdfs dfsadmin -safemode leave
# 启动hadoop
bash /export/software/hadoop-3.2.0/sbin/start-hadoop.sh

启动hbase


# 启动zookeeper
/export/software/apache-zookeeper-3.6.4-bin/bin/zkServer.sh start
# 开启hbase
sh /export/software/hbase-2.2.7/bin/start-hbase.sh
# 进入hbase shell
/export/software/hbase-2.2.7/bin/hbase shell
# 关闭hbase
sh /export/software/hbase-2.2.7/bin/stop-hbase.sh
# 关闭zookeeper
/export/software/apache-zookeeper-3.6.4-bin/bin/zkServer.sh stop

数据集上传


# 创建目录
mkdir -p /data/jobs/project/
# 进入目录
cd /data/jobs/project/

# 解压 "data" 目录的 user_behavior_100W.7z 压缩包
# 上传 user_behavior_100W.csv 到 /data/jobs/project/ 目录下

# 查看前面5条记录
head -5 user_behavior_100W.csv

数据上传hdfs


cd /data/jobs/project/
# 上传到hdfs
hdfs dfs -mkdir -p /data/input/
hdfs dfs -rm -r /data/input/*
hdfs dfs -put user_behavior_100W.csv /data/input/

hdfs dfs -ls /data/input/

mapreduce数据预处理


cd /data/jobs/project/
# 对 "数据分析" 目录下的maven项目 "mapreduce-job" 进行打包
# 编译打包mapreduce程序: mvn clean package -DskipTests

hadoop jar mapreduce-job-jar-with-dependencies.jar data_clean /data/input/ /data/output/

hdfs dfs -ls /data/output/

mapreduce数据分析


cd /data/jobs/project/

# 上传 "mr.sh" 文件
sed -i 's/\r//g' mr.sh
sh mr.sh

hdfs dfs -ls /data/behavior/
hdfs dfs -ls /data/province_num/
hdfs dfs -ls /data/pv_category/
hdfs dfs -ls /data/pv_item/
hdfs dfs -ls /data/uv_day/
hdfs dfs -ls /data/uv_month/
hdfs dfs -ls /data/pv_day/
hdfs dfs -ls /data/pv_month/

数据导入hbase


cd /data/jobs/project/

# 对 "write-to-hbase" 目录下的maven项目 "write-to-hbase" 进行打包
# 编译打包mapreduce程序: mvn clean package -DskipTests

java -cp write-to-hbase-jar-with-dependencies.jar org.example.write.hbase.HdfsToHbaseBatchImporter

# 使用命令进入hbase shell终端,进行校验: /export/software/hbase-2.2.7/bin/hbase shell
# scan 'behavior',{FORMATTER => 'toString'}
# scan 'province_num',{FORMATTER => 'toString'}
# scan 'pv_category',{FORMATTER => 'toString'}
# scan 'pv_item',{FORMATTER => 'toString'}
# scan 'uv_day',{FORMATTER => 'toString'}
# scan 'uv_month',{FORMATTER => 'toString'}
# scan 'pv_day',{FORMATTER => 'toString'}
# scan 'pv_month',{FORMATTER => 'toString'}

启动可视化


cd /data/jobs/project/

# 对 "可视化" 目录下的maven项目 "springboot-demo" 进行打包
# 编译打包mapreduce程序: mvn clean package -DskipTests

java -jar /data/jobs/project/springboot-demo-1.0-SNAPSHOT.jar com.example.hbasedemo.HBaseDemoApplication



网站公告

今日签到

点亮在社区的每一天
去签到