基于VMware+Navicat 实现空管自动化的基础数据迁移

2020-05-08 08:52梁国达
科学技术创新 2020年8期
关键词:数据结构空管子系统

梁国达

(中国民用航空湛江空中交通管理站,广东 湛江524017)

1 概述

空管自动化经过多年的发展,已经成为管制员管理空中交通必不可少的手段之一。空管自动化系统通过多雷达信号进行处理,并将雷达信号与飞行计划动态相关联,使得管制员迅速高效地掌握航班的动态。而要准确地实现以上的功能,完善的基础航路数据必不可少。在新建造的空管自动化系统过程中,庞大的基础航路数据的迁移经常由人工完成,需要耗费监造人员非常多的精力。本文就湛江终端区AirNet 自动化系统建设过程中使用的数据迁移方法展开讨论,希望能够为今后类似的问题提供解决的思路。

2 风险评估

在数据迁移过程中,主要经历平台搭建、源数据结构与目标数据结构分析比对、数据转换、完整性测试、迁移后系统运行测试这五个阶段。其中的数据转换这一过程中,可能会因为数据类型发生改变而导致迁移失败甚至影响目标系统的运行,因此数据迁移应该遵守以下两个原则:(1)只能在搭建的测试平台以及建造中的平台中进行,不能对在用的生产系统进行操作。(2)数据迁移之前对两个操作的平台数据库进行备份。

3 测试模拟平台的准备

3.1 VMware Workstation 虚拟技术

虚拟化技术目前的发展已经非常成熟。将虚拟化技术应用到空管领域的设备维护、测试当中,可以实现资源的充分利用、简化管理、方便维护。通过虚拟化技术,可以将CPU、内存、磁盘、I/O 等硬件变成可以动态管理的“资源池”,从而提高资源的利用率,并且实现各个虚拟服务器之间网络虚拟化、储存虚拟化。主流的虚拟化产品主要有XEN、Hyper-V、KVM 虚拟机、VMware。各个虚拟技术的特点如下:

(1)XEN 虚拟机的架构不存在Host System,而是通过Xen Hypervisor 来对各个虚拟平台进行资源分配。其功能十分强大,主要应用在商业用途上比较多,不是桌面用户的首选。

(2)Hyper-V 是微软开发的一款虚拟化技术,windows 系统中集成的Hypervisor 负责着内存管理和CPU 的管理、虚拟机的创建和运行、调度。在Windows Server 2008 R2/Windows 7 以上的操作系统版本,都已经集成了Hyper-V 管理器,需要手动开启后可以使用。

(3)KVM虚拟机全称为Kernel-based Virtual Machine,是在Linux 系统中运行于内核模式下的虚拟机。KVM虚拟机的实现需要硬件支持,如Intel VT 技术或者AMD V 技术。

(4)VMware 是虚拟化软件的主流厂商,其提供的一系列虚拟化产品从服务器领域到桌面领域都非常齐全。其中VMware Workstation 是典型的寄居架构(Hosted Architecture),VMware Workstation 允许一台真实的电脑在一个操作系统中同时开启并运行数个操作系统。其使用体验也相对较好,例如VMtools 可以实现主机与虚拟机之间的文件共享、能够通过拷贝虚拟机文件的方式来进行虚拟机的迁移、还提供多种网络结构模式。总的来说,VMware Workstation 是搭建自动化系统测试平台比较好的选择。

3.2搭建DBM+数据库的测试模拟平台

DBM子系统或者称为适配数据管理子系统,是自动化系统中对各个子系统的功能模块进行配置、保存、发布的子系统。AirNet 自动化中通过DBM 子系统对各种参数进行配置,再以XML 的形式进行发布生效。通过测试平台的DBM子系统,我们可以轻松的将在用系统的参数进行测试、移植。

AirNet 自动化系统使用的是MySQL 数据库。MySQL 是一个典型的关系型数据库管理系统,其具有其体积小、速度快、灵活性强的特点。MySQL 数据库在AirNet 自动化系统中主要应用为航路航线、机型、固定点等等基础数据和历史报文的存储管理。随着民航技术的发展,自动化厂商会对这些基础数据有更加复杂的应用,因此在同一个厂商的自动化系统会随着版本的推移,数据库的表结构更加复杂,会增加更多的字段,并且将这些基础数据应用于不同的场合当中。

在搭建的测试平台中,Host System 使用的是Windows 10的操作平台,而安装在VMware Workstation 中的虚拟操作系统是Red Hat Enterprise Linux(RHEL)5.8,安装的数据库是MySQL。将在用自动化系统最新系统参数复制进去测试平台中指定的目录,测试平台中的DBM子系统已经可以读出在用系统的参数配置。使用转存储数据库的实用程序mysqldump 可以将在用系统的数据库装载到一个备份文件中,再将该文件拷贝到测试平台RHEL 5.8 中,使用mysql 恢复数据指令进行导入,就完成了在用系统数据库到测试平台数据库的移植。

4 使用Navicat Premium 进行数据库连接

Navicat Premium 是Navicat 的产品之一,它可作为单一程序连接多个数据库进行管理操作,并且可以对多种数据库进行批处理操作,如导入导出、创建查询工具、修改表字段、资料同步、备份等。

4.1 网络的准备

安装好修改VMware Workstation 虚拟机后,系统会在Host System 中的网络连接中生成虚拟网卡,名称为"VMware Network Adapter VMnet8",用于Host System 与虚拟操作系统之间的NAT 模式下的网络通信。将VMware Workstation中RHEL 5.8 的网络连接方式为NAT 模式,并且设置Host System 中VMware Network Adapter VMnet8 虚拟网卡与虚拟DBM子系统为同一网段,使用ping 命令进行网络测试,成功则代表网络设置已经完成。

4.2 提升MySQL 中的用户权限

使用网络方式连接MySQl 数据库时候,有可能由于权限的原因,导致网络访问被拒绝,因此,在前期准备时候,可以对测试平台中的MySQl 数据库中的用户提升权限,具体操作如图所示:

提升MySQL 用户权限的过程

4.3 使用Navicat Premium 连接测试平台数据库

利用测试平台的网络地址、root 用户、提升权限时候配置的密码,就可以通过Navicat Premium 登录到测试平台的数据库,下一步就可以对测试平台中的数据库进行操作了。

5 数据迁移

前期准备完成之后,就可以进行数据迁移工作了。具体可以分为以下几个重要内容:

(1)两个操作的平台数据库进行备份。

(2)源数据结构与目标数据结构分析比对,利用Navicat Premium 自带的修改表功能,可以方便地对源数据进行数据结构修改,然后提取出表文件。

(3)数据清洗。在目标数据库中使用mysql 的delete 语句将目标数据库中所对应表中数据进行清除。

(4)数据转换。在目标数据库中使用mysql 的source 语句将修改后的源数据进行导入。

(5)数据的完整性进行观察比对。使用自动化系统的软件调用出基础数据,观察软件有无报错,并且与测试平台中的统计数据进行人工比对。

(6)迁移运行测试。通过在建造平台中回放运行现场录制的原始雷达数据、航空报文数据,来对迁移后的基础数据进行验证测试。

6 结论

基础数据对于空管自动化系统越来越重要,维护好一套完善的基础数据,可以使得空管自动化系统更加精确,更加方便,从而提升管制员的工作效率。但是庞大的基础数据转移也是建造新的空管自动化系统所不得不面对的困难之一,针对空管自动化平台建造过程中的基础数据迁移的工作特性以及风险评估,提出了一套可行的数据迁移方法,通过这套方法,可以提高工作效率,并且大大地减轻基础数据录入的工作量,并且可以推广到不同厂商的空管自动化平台建造中实际应用。

猜你喜欢
数据结构空管子系统
不对中转子系统耦合动力学特性研究
数据结构线上线下混合教学模式探讨
中小机场空管体制改革的思考与建议
关键信号设备检修自动盯控子系统研究
为什么会有“数据结构”?
民航空管2018年运行统计公报
乙醇蒸气放空管设置室内引发爆炸
网络空间供应链中入侵检测及防御子系统的投资机制研究
网络空间供应链中入侵检测及防御子系统的投资机制研究
高职高专数据结构教学改革探讨