导入空管基础数据

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/

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

相关推荐
NGINX开源社区1 小时前
使用 NGINX 作为 AI Proxy
大数据·人工智能·nginx
雪兽软件8 小时前
如何从目标到决策构建大数据战略?
大数据
小江的记录本8 小时前
【事务】Spring Framework核心——事务管理:ACID特性、隔离级别、传播行为、@Transactional底层原理、失效场景
java·数据库·分布式·后端·sql·spring·面试
数据皮皮侠9 小时前
中国城市间地理距离矩阵(2024)
大数据·数据库·人工智能·算法·制造
ToB营销学堂9 小时前
B2B营销自动化新解法:MarketUP聚焦高转化场景
大数据·运维·自动化
TK云大师-KK9 小时前
TikTok自动化直播遇到内容重复问题?这套技术方案了解一下
大数据·运维·人工智能·矩阵·自动化·新媒体运营·流量运营
昨夜见军贴061612 小时前
AI审核守护生命设备安全:IACheck成为呼吸机消毒效果检测报告的智能审核专家
大数据·人工智能·安全
半桶水专家12 小时前
Kafka 性能瓶颈 → JMX 指标对照表
分布式·kafka
Elastic 中国社区官方博客13 小时前
现已正式发布: Elastic Cloud Hosted 上的托管 OTLP Endpoint
大数据·运维·数据库·功能测试·elasticsearch·全文检索