基于spark的航班价格分析预测及可视化

基于spark的航班价格分析预测及可视化

项目概况

**👇👇👇👇👇👇👇👇**

点这里,查看所有项目

**👆👆👆👆👆👆👆👆**

数据类型

公开的航班价格数据

开发环境

centos7

软件版本

python3.8.18、hadoop3.2.0、spark3.1.2、mysql5.7.38、scala2.12.18、jdk8

开发语言

python、Scala

开发流程

数据上传(hdfs)->数据清洗(spark)->数据分析(spark)->机器学习(spark)->数据存储(mysql)->后端(flask)->前端(html+js+css)

可视化图表




操作步骤

python安装包

shell 复制代码
pip3 install pandas==2.0.3 -i https://mirrors.aliyun.com/pypi/simple/
pip3 install flask==3.0.0 -i https://mirrors.aliyun.com/pypi/simple/
pip3 install flask-cors==4.0.1 -i https://mirrors.aliyun.com/pypi/simple/
pip3 install pymysql==1.1.0 -i https://mirrors.aliyun.com/pypi/simple/

启动MySQL

shell 复制代码
# 查看mysql是否启动 启动命令: systemctl start mysqld.service
systemctl status mysqld.service
# 进入mysql终端
# MySQL的用户名:root 密码:123456
# MySQL的用户名:root 密码:123456
# MySQL的用户名:root 密码:123456
mysql -uroot -p123456

创建MySQL库

shell 复制代码
CREATE DATABASE IF NOT EXISTS flight CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

启动Hadoop

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

准备目录

shell 复制代码
mkdir -p /data/jobs/project/
cd /data/jobs/project/

# 解压 "data" 目录下的 "data.7z" 文件
# 上传 "data" 目录下的 "CSV" 文件 到 "/data/jobs/project/" 目录

# Clean_Dataset.csv

上传文件到hdfs

shell 复制代码
cd /data/jobs/project/

hdfs dfs -mkdir -p /data/input/
hdfs dfs -rm -r /data/input/*
hdfs dfs -put -f Clean_Dataset.csv /data/input/
hdfs dfs -ls /data/input/

程序打包

shell 复制代码
cd /data/jobs/project/

# 对 "project-spark-flight-fare-data-analysis-prediction" 项目进行打包
# 打包命令: mvn clean package -Dmaven.test.skip=true
# 上传 "project-spark-flight-fare-data-analysis-prediction/target" 目录下的 "spark-job.jar" 文件 到 "/data/jobs/project/" 目录

spark数据预处理

shell 复制代码
cd /data/jobs/project/

spark-submit \
--master local[*] \
--class org.example.SparkDataClean \
/data/jobs/project/spark-job.jar /data/input/Clean_Dataset.csv /data/output/

spark数据分析

shell 复制代码
cd /data/jobs/project/

spark-submit \
--master local[*] \
--class org.example.SparkAnalysis \
/data/jobs/project/spark-job.jar /data/output/

spark机器学习

shell 复制代码
cd /data/jobs/project/

spark-submit \
--master local[*] \
--class org.example.SparkMLApp \
/data/jobs/project/spark-job.jar /data/output/

启动可视化

shell 复制代码
mkdir -p /data/jobs/project/myapp/
cd /data/jobs/project/myapp/

# 上传 "可视化" 目录下的 "所有" 文件和文件夹 到 "/data/jobs/project/" 目录

# windows本地运行: python app.py
python3 app.py pro
相关推荐
DolphinScheduler社区7 小时前
DolphinScheduler 3.3.2 如何调用 DataX 3.0 + SeaTunnel 2.3.12?附 Demo演示!
java·spark·apache·海豚调度·大数据工作流调度
瑞华丽PLM8 小时前
传统研发协同低效痛点待解,PLM 系统数字化选型助力研发效率提升与转型
大数据·plm·国产plm·瑞华丽plm·瑞华丽
乐迪信息8 小时前
乐迪信息:实时预警,秒级响应:船舶AI异常行为检测算法
大数据·人工智能·算法·安全·目标跟踪
红色星际8 小时前
进军具身机器人和Robotaxi的智驾公司
大数据·人工智能·机器人
Bruce_Liuxiaowei8 小时前
《轻量化制播系统技术应用指南(2026版)》解读:县级融媒体的“减负增效“新路径
大数据·人工智能·媒体
2601_956139428 小时前
文旅行业品牌全案公司哪家强
大数据·人工智能·python
生活观察站8 小时前
中文在线亮相横琴—澳门国际数字艺术博览会国际数字创意论坛:AI漫剧打开内容创作新想象
大数据·人工智能
地球资源数据云8 小时前
1900-2023年中国物种分布点位矢量数据集
大数据·数据结构·数据库·数据仓库·人工智能
菜鸟小码8 小时前
MapReduce 真正的核心之Shuffle 阶段深度解析:分区、排序、合并与归约
大数据·mapreduce
山海鲸实战案例分享8 小时前
【数字孪生实战案例】如何配置下拉菜单,实现与电子地图飞线的数据联动查询?~山海鲸可视化
数字孪生·数据可视化·零代码·实战案例·山海鲸可视化·电子地图·数据联动