导入空管基础数据

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/

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

相关推荐
编啊编程啊程13 分钟前
【029】智能停车计费系统
java·数据库·spring boot·spring·spring cloud·kafka
zskj_zhyl1 小时前
智慧康养新篇章:七彩喜如何重塑老年生活的温度与尊严
大数据·人工智能·科技·物联网·生活
豆浆whisky2 小时前
Go分布式追踪实战:从理论到OpenTelemetry集成|Go语言进阶(15)
开发语言·分布式·golang
苗壮.3 小时前
「个人 Gitee 仓库」与「企业 Gitee 仓库」同步的几种常见方式
大数据·elasticsearch·gitee
驾数者3 小时前
Flink SQL入门指南:从零开始搭建流处理应用
大数据·sql·flink
乌恩大侠3 小时前
DGX Spark 恢复系统
大数据·分布式·spark
KM_锰3 小时前
flink开发遇到的问题
大数据·flink
happy_king_zi4 小时前
RabbitMQ Quorum 队列与classic队列关系
分布式·rabbitmq
labview_自动化6 小时前
RabbitMQ
分布式·rabbitmq·labview
人大博士的交易之路6 小时前
龙虎榜——20251106
大数据·数学建模·数据分析·缠论·缠中说禅·龙虎榜