导入空管基础数据

1、首先将data.tar.gz解压到自定义目录中

注意:由于数据文件的压缩包比较大,解压过程可能会持续3~5分钟,请耐心等待。

复制代码
[root@node3 ~]# cd /opt/software/
[root@node3 software]# tar -xzf data.tar.gz -C /opt/

2、利用SQLyog或者其他数据库工具将保存在/opt/data目录中名为kongguan.sql的文件导入到MySQL数据库

  • 使用 【mysql -uroot -p】 登录到MySQL(输入密码登录123456)
  • 使用 show databases 命令,查看数据库列表
  • 创建数据库:

    mysql> create database kongguan;
    mysql> use kongguan;

  • 进入kongguan数据库,使用 source 命令执行kongguan.sql脚本导入数据(假设sql文件的位置:/opt/data/kongguan.sql)

    mysql> use kongguan;
    mysql> source /opt/data/kongguan.sql;

导入数据后,可使用 MySQL的show tables; 语句查看导入情况:

3、将HBase备份文件(空管数据及实时飞行数据)导入到集群的HBase数据库

  • 切换到node3节点,在控制台输入以下命令,在HDFS上创建如下目录

    [root@node3 ~]# hadoop fs -mkdir /hbase/table/ [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_CallSaturation [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_ATC [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_PlanData [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_ATCDutyInfo [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_FlightState [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_WarnFlightHistory [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_AFTN [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_WarnSimilarHistory [root@node3 ~]# hadoop fs -mkdir /hbase/table/Kg_MultiRadarData

查看HDFS上目录的创建情况:

  • 把数据上传至hdfs

注意:由于数据量较大,上传数据的过程可能会持续3-5分钟的时间,请耐心等待。

复制代码
[root@node3 ~]# hadoop fs -put /opt/data/Kg_CallSaturation /hbase/table/Kg_CallSaturation 
[root@node3 ~]# hadoop fs -put /opt/data/Kg_ATC /hbase/table/Kg_ATC 
[root@node3 ~]# hadoop fs -put /opt/data/Kg_PlanData /hbase/table/Kg_PlanData 
[root@node3 ~]# hadoop fs -put /opt/data/Kg_ATCDutyInfo /hbase/table/Kg_ATCDutyInfo 
[root@node3 ~]# hadoop fs -put /opt/data/Kg_FlightState /hbase/table/Kg_FlightState 
[root@node3 ~]# hadoop fs -put /opt/data/Kg_WarnFlightHistory /hbase/table/Kg_WarnFlightHistory 
[root@node3 ~]# hadoop fs -put /opt/data/Kg_AFTN /hbase/table/Kg_AFTN 
[root@node3 ~]# hadoop fs -put /opt/data/Kg_WarnSimilarHistory /hbase/table/Kg_WarnSimilarHistory
[root@node3 ~]# hadoop fs -put /opt/data/Kg_MultiRadarData /hbase/table/Kg_MultiRadarData
  • 进入HBase客户端运行【hbase shell】进入

    [root@node3 software]# hbase shell

  • 创建HBase表

    create 'Kg_CallSaturation','SaturationHome'
    create 'Kg_ATC','ATCHome'
    create 'Kg_PlanData','ReportHome'
    create 'Kg_ATCDutyInfo','ATCDutyHome'
    create 'Kg_FlightState','StateHome'
    create 'Kg_WarnFlightHistory','WarnFlightHome'
    create 'Kg_AFTN','AFTNHome'
    create 'Kg_WarnSimilarHistory','WarnSimilarHome'
    create 'Kg_MultiRadarData','RadarHome'

  • 查看创建情况
  • 退出HBase客户端
  • 然后执行导入操作

注意:由于此过程要执行多个MapReduce操作,可能需要5-10分钟左右的时间,请耐心等待。

解释

复制代码
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_CallSaturation /hbase/table/Kg_CallSaturation/Kg_CallSaturation
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_ATC /hbase/table/Kg_ATC/Kg_ATC
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_PlanData /hbase/table/Kg_PlanData/Kg_PlanData 
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_ATCDutyInfo /hbase/table/Kg_ATCDutyInfo/Kg_ATCDutyInfo
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_FlightState /hbase/table/Kg_FlightState/Kg_FlightState
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_WarnFlightHistory /hbase/table/Kg_WarnFlightHistory/Kg_WarnFlightHistory
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_AFTN /hbase/table/Kg_AFTN/Kg_AFTN 
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_WarnSimilarHistory /hbase/table/Kg_WarnSimilarHistory/Kg_WarnSimilarHistory
[root@node3 software]# hbase org.apache.hadoop.hbase.mapreduce.Import Kg_MultiRadarData /hbase/table/Kg_MultiRadarData/Kg_MultiRadarData

例如:

  • 查看数据导入情况

4、实时飞行数据说明

  • 解压data.tar.gz后的文件导入到集群的HBase数据库,所以直接读取HBase即可,但是由于真实的数据里实时飞行数据的时间间隔过短,在地图上不能感觉到飞机的实时运动状态,所以在项目中使用的实时飞行数据是从HBase中取出的真实飞行数据经过一定的处理后将时间间隔变大的数据,这样做可以在地图上明显感觉到飞机的运动状态。
  • 当前项目提供了已经处理好的实时飞行数据,即:part-00000 ~ part-00011。使用时需要根据当前位置修改后台读取的位置即可,如下图:

part-000xx文件的内容格式如下:

这些文件可以放到本地,也可以放到HDFS上,例如:如果要在【client节点机器上】上读取"实时飞行数据",可以使用【scp】命令将该数据从node3节点复制到client节点上。

复制代码
 [root@node3 ~]# scp -rq /opt/data client:/opt/

在后面阶段任务,读取时要根据自己的实际存放位置修改代码中的读取路径:

相关推荐
零售ERP菜鸟4 分钟前
IT价值证明:从“成本中心”到“增长引擎”的确定性度量
大数据·人工智能·职场和发展·创业创新·学习方法·业界资讯
叫我:松哥7 分钟前
基于大数据和深度学习的智能空气质量监测与预测平台,采用Spark数据预处理,利用TensorFlow构建LSTM深度学习模型
大数据·python·深度学习·机器学习·spark·flask·lstm
珠海西格电力6 小时前
零碳园区有哪些政策支持?
大数据·数据库·人工智能·物联网·能源
LJ97951117 小时前
AI如何重构媒介宣发:从资源博弈到智能匹配的技术跃迁
大数据
数据皮皮侠AI8 小时前
上市公司股票名称相似度(1990-2025)
大数据·人工智能·笔记·区块链·能源·1024程序员节
Zoey的笔记本8 小时前
金融行业数据可视化平台:破解数据割裂与决策迟滞的系统性方案
大数据·信息可视化·数据分析
2501_933670799 小时前
大数据与财务管理专业就业岗位方向
大数据
小龙9 小时前
【Git 报错解决】本地分支与远程分支名称/提交历史不匹配
大数据·git·elasticsearch·github
Deepoch10 小时前
Deepoc具身模型:破解居家机器人“需求理解”难题
大数据·人工智能·机器人·具身模型·deepoc
代码方舟10 小时前
Java企业级实战:对接天远名下车辆数量查询API构建自动化风控中台
java·大数据·开发语言·自动化