基于mapreduce的当当网畅销图书榜单数据分析及可视化

5/6/2026 sqoopspringboot

可视化效果视频 (opens new window)

# 项目概况

mr_springboot (opens new window)

# 数据类型

当当网畅销图书排行榜单数据

# 开发环境

centos7

# 软件版本

hadoop3.2.0、mysql5.7.38、jdk8、sqoop1.4.7

# 开发语言

Java、shell、SQL

# 开发流程

数据上传(hdfs)->数据清洗(mapreduce)->数据分析(mapreduce)->数据抽取(sqoop)->数据存储(mysql)->后端(springboot)->前端(html+js+css)

# 可视化图表

2026-05-06_232648

2026-05-06_232653

2026-05-06_232706

2026-05-06_232712

2026-05-06_232717

# 操作步骤

# 启动MySQL


# 查看mysql是否启动 启动命令: systemctl start mysqld.service
systemctl status mysqld.service
# 进入mysql终端
mysql -uroot -p123456

1
2
3
4
5
6

# 启动Hadoop


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

1
2
3
4
5

# 准备目录


mkdir -p /data/jobs/project/
cd /data/jobs/project/

# 上传 "project-dangdang-book-analysis" 整个文件夹 到 "/data/jobs/project/" 目录

1
2
3
4
5
6

# 上传文件到hdfs


cd /data/jobs/project/project-dangdang-book-analysis/

hdfs dfs -mkdir -p /data/books/data/
hdfs dfs -rm -r /data/books/data/*
hdfs dfs -put data/data.csv /data/books/data/
hdfs dfs -ls /data/books/data/

1
2
3
4
5
6
7
8

# 程序打包


cd /data/jobs/project/project-dangdang-book-analysis/mapreduce-job/

# 对 "mapreduce-job" 目录下的项目 "mapreduce-job" 进行打包
# 打包命令
mvn clean package -DskipTests

1
2
3
4
5
6
7

# mapreduce数据清洗及分析


cd /data/jobs/project/project-dangdang-book-analysis/

sed -i 's/\r//g' mr.sh
bash mr.sh

1
2
3
4
5
6

# 创建MySQL表


cd /data/jobs/project/project-dangdang-book-analysis/

# 请确认mysql服务已经启动了
# 快速执行.sql文件内的sql语句
mysql -uroot -p123456 < mysql/mysql.sql

1
2
3
4
5
6
7

# 数据导入MySQL


cd /data/jobs/project/project-dangdang-book-analysis/

sed -i 's/\r//g' sqoop.sh
bash sqoop.sh

1
2
3
4
5
6

# 启动可视化


cd /data/jobs/project/project-dangdang-book-analysis/springboot-echarts/

# 对 "springboot-echarts" 目录下的项目 "springboot-echarts" 进行打包
# 打包命令
mvn clean package -DskipTests

java -jar target/springboot-echarts-1.0.0.jar

1
2
3
4
5
6
7
8
9
Last Updated: 5/6/2026, 3:33:44 PM