基于Flink的人体肥胖数据分析_无前后端

6/5/2025 python

原地址:https://dblab.xmu.edu.cn/post/5419/

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

# 项目概况

master (opens new window)

# 数据类型

开放的人体肥胖数据

# 开发环境

centos7

# 软件版本

python3.8.18、hadoop3.2.0、flink1.14.6、jdk8

# 开发语言

python

# 开发流程

数据预处理(python)->数据上传(hdfs)->数据分析(flink)->静态可视化(matplotlib)

# 可视化图表

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

# 操作步骤

# python安装包


pip3 install apache-flink==1.14.6 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install pandas==2.0.3 -i https://mirrors.aliyun.com/pypi/simple/
pip3 install argparse==1.4.0 -i https://mirrors.aliyun.com/pypi/simple/
pip3 install matplotlib==3.7.4 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install numpy==1.24.4 -i https://pypi.tuna.tsinghua.edu.cn/simple

1
2
3
4
5
6
7

# 启动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/

# 解压 obesity_level.7z
# 上传 obesity_level.csv 到 /data/jobs/project/ 目录下
# 上传 data_clean.py 到 /data/jobs/project/ 目录下
# 上传 pyflink_analysis.py 到 /data/jobs/project/ 目录下
# 上传 merge.py 到 /data/jobs/project/ 目录下
# 上传 draw_picture.py 到 /data/jobs/project/ 目录下

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 数据预处理


cd /data/jobs/project/

python3 data_clean.py

head -10 preprocessed_obesity_level.csv

1
2
3
4
5
6
7

# 数据上传hdfs


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

hdfs dfs -ls /data/input/

1
2
3
4
5
6
7
8
9

# flink数据分析


cd /data/jobs/project/

python3 pyflink_analysis.py --input hdfs://master:9000/data/input/preprocessed_obesity_level.csv

# 合并文件,方便后面可视化读取
python3 merge.py

1
2
3
4
5
6
7
8

# 生成静态可视化网页


python3 draw_picture.py

1
2
3
Last Updated: 7/4/2025, 1:59:06 PM