航班运行数据报文解析系统及方法技术方案

技术编号:23860499 阅读:110 留言:0更新日期:2020-04-18 13:33
本发明专利技术提供的航班运行数据报文解析系统,包括报文采集识别模块、报文解析模块、报文预处理匹配模块和报文数据监控管理模块;本发明专利技术提供的报文解析方法,通过对报文数据进行采集识别分类,并将分类后的报文数据传输至报文解析模块进行解析与存储,再由报文预处理匹配模块对数据加工和验证,并根据航班计划信息和解析后的航班信息进行匹配运算,得到最佳匹配航班;报文数据监控管理模块最后对数据进行统计和标记,并根据报文数据生成全文索引,实现对报文数据全文检索,从而构建统一的解析系统,实现了对报文数据的采集分类、解析以及匹配相应的航班,生成报文数据全文索引,方便运维人员对报文数据的管理与维护,实现了对航班运行过程管理与监控。

Analysis system and method of flight operation data message

【技术实现步骤摘要】
航班运行数据报文解析系统及方法
本专利技术涉及航班报文解析
,更具体的,涉及一种航班运行数据报文解析系统,还涉及一种航班运行数据报文解析方法。
技术介绍
航班运行报文数据(SITA、AFTN、ACARS、LDM、ADS-B等)由航空公司、机场、空管局、民航局等单位通过网络或者卫星传输数据,最终给到各家航空公司。航空公司根据自身需要购买各种报文数据服务或者与其他机构互换数据获取报文数据。各家航空公司根据自身需要开发报文解析、初步加工处理关联到航班,最后数据为生产业务服务。航班报文数据具有极高的数据价值:影响资源调度、降低航班运行(延误、安全)风险、降低运行成本、提供航班运行各个环境监控、及时调整生产计划、提高生产效率。但现有的报文解析无法构成统一的解析系统,对报文解析开发是针对具体报文,无法通用,针对自由格式报文、非规范报文每次变更需要重新开发,效率低下;对报文数据无统一管理、无数据处理警告,当报文解析出现问题时,排查不便,不能成为航空业务领域报文处理全面解决方案。在架构方面,现有报文存在单点故障,高可用及负载均衡能力,不能动态增加报文识别分类和解析功能,没有报文采集、识别分类、解析、预处理、验证、匹配到航班全流程处理管理过程,各个业务单位重复解析报文,导致各个环节的数据不一致,形成一个个数据孤岛,不便于运维人员对报文数据的管理。
技术实现思路
本专利技术为克服现有的报文解析无法构成统一的解析系统,存在无法动态增加报文识别分类和解析功能和无法实现航班数据全流程处理管理的技术缺陷,提供一种航班运行数据报文解析系统。本专利技术还提供一种航班运行数据报文解析方法。为解决上述技术问题,本专利技术的技术方案如下:航班运行数据报文解析系统,包括报文采集模块、报文解析模块、报文预处理匹配模块和报文数据监控管理模块,其中:所述报文采集模块用于对报文数据的采集分类,并将采集分类成功以消息形式传输至所述报文解析模块,同时存储原始数据;所述报文解析模块用于报文数据的解析与解析结果存储,并将解析成功消息发送至所述报文预处理匹配模块,发送解析通知消息至报文数据监控管理模块;所述报文预处理匹配模块根据航班中的信息和解析到的数据进行匹配运算,得到最佳的航班并将匹配结果消息发送至所述报文数据监控管理模块;所述报文数据监控管理模块根据采集分类通知消息、解析通知消息、匹配结果消息进行数据统计和标记,根据报文数据生成全文索引,实现对报文数据全文检索。其中,所述报文采集模块采用集群进行部署,通过分布式锁机制zookeeper协调多个采集节点对数据源进行报文数据采集分类,并将分类后的数据进行储存;最后发送含有报文数据结构的采集识别成功消息至所述报文解析模块。上述方案中,为了提高系统并发性能以及系统响应的实时性,报文数据通过报文采集模块识别出各种分类,每种分类都可以并发处理,相同分类先后处理,即提高了处理的性能,在一定程度上也保障了数据的有序性。上述方案中,当报文采集模块消息中间件采用Kafka时,通过部署Kafka集群,每个消息子类别对应一个消息分区,在资源允许下给每个消息分区配置独立的磁盘,以此保证数据高速顺序写入。当消息被消费时,每个分区同时指挥有一个消费者进行读取,保证了消息读取顺序处理,即使采用的消息中间件无法保证数据消费的顺序性,在采集到的报文数据上包含了报文数据接收的时间戳。上述方案中,报文采集模块采集的报文数据来源不同,通信方式协议各异,因此报文采集模块包含了主动采集和被动采集两种方式。其中,主动采集方式支持数据库JDBC、MQ消息、FTP、NFS网络文件共享等,被动采集方式支持MQ消息、Http请求。报文采集模块采用集群进行部署,通过分布式锁机制zookeeper协调多个采集节点对数据源进行报文数据采集和分类。其中,报文数据分类采用树形层次结构,如果父类别没有识别表达式,则默认匹配到该分类,直到最终叶子节点类别识别都成功,则该报文数据属于该叶子节点报文类别。因为报文数据可能同时归属于多个类别,因此采用多报文识别表达式并发计算识别报文,只要符合即可归属到对应的类别报文下并把报文数据原文上传到FTP或者分布式文件系统中,上传目录结构根据报文父子类别层级及接收报文数据时间日期创建,最后发送含有报文数据结构的采集识别成功消息至报文解析模块,其中报文数据结构包含采集开始时间,结束时间,报文类型,报文跟踪ID,采集时生成唯一的UUID和报文数据小于1M报文原文或存储报文的url地址。上述方案中,当报文采集模块成功采集报文数据时,发送采集识别成功通知消息;不论采集识别是否成功,都将发送结果消息给监控管理模块。其中,所述报文解析模块上设置有规则引擎QLExpress和MongoDB数据库;所述报文解析模块在系统启动时加载报文解析规则并定时更新或者手动触发更新,当收到解析通知消息时,根据报文解析规则和规则引擎QLExpress解析出分类后的报文数据的键值对,并将生成的键值对生成的JSON数据与接受到的消息数据组合,并存入报文类别集合的MongoDB数据库中;最后对收到的解析通知消息追加报文解析开始时间、解析结束时间,并发送至所述报文数据监控管理模块。上述方案中,报文解析模块在系统启动时加载报文解析规则,所述报文解析规则在系统上线前根据报文分类编写的QLExpress表达式计算代码,以报文类别为键,解析规则为值存入缓存中,如redis,当有更新时同时更新缓存,并启动一个后台线程,定时加载最新解析规则,同时当有在线更新或新增报文解析规则时同步更新缓存数据。其中,当所述报文预处理匹配模块接收到解析成功通知消息时,读取消息中的解析结果数据,或者读取所述MongoDB数据库中的JSON数据,根据JSON数据中包含的航班起飞降落地址、航班号、承运人及推算的航班信息查询实际航班信息,航班起飞降落时间数值类根据需要采用范围匹配,并根据航班中的信息和解析到的数据算出最佳的航班;最后在解析成功消息中追加匹配开始时间、匹配结束时间和航班ID,作为匹配结果消息发送至所述报文数据监控管理模块。上述方案中,所述报文数据监控管理模块订阅报文采集模块发送的采集成功与采集失败信息,订阅报文解析模块发送的解析成功与解析失败信息,订阅报文预处理匹配发送的匹配成功与匹配失败信息。当接收到报文识别成功或者失败消息时,根据报文原文内容生成索引,以提供报文全文检索。最后根据报文跟踪ID、各个节点成功与失败、各个节点时刻信息,统计识别率、解析率、匹配率以及各个阶段效率及出错告警。航班运行数据报文解析方法,包括以下步骤:S1:报文采集模块采集报文数据并进行分类,对原报文分类存储,并将分类后的报文数据和解析通知消息传输至所述报文解析模块和数据监控管理模块;S2:报文解析模块对报文数据进行解析与存储,并将匹配通知消息发送至报文预处理匹配模块,发送解析通知消息至报文数据监控管理模块;S3:报文预处理匹配模块根据航班中的信息和解析到的数据进行匹配运算,得到最佳的航班并将匹配结本文档来自技高网...

【技术保护点】
1.航班运行数据报文解析系统,其特征在于:包括报文采集模块(1)、报文解析模块(2)、报文预处理匹配模块(3)和报文数据监控管理模块(4),其中:/n所述报文采集模块(1)用于对报文数据的采集分类与存储,并将分类后的报文数据和采集识别成功消息传输至所述报文解析模块(2),发送报文采集识别成功与否的消息给报文数据监控管理模块(4);/n所述报文解析模块(2)用于报文数据的解析,并将解析成功消息发送至所述报文预处理匹配模块(3),发送解析成功与否的消息至报文数据监控管理模块(4);/n所述报文预处理匹配模块(3)根据航班计划中的信息和解析到的数据进行验证、匹配运算,得到最佳的航班并将匹配结果消息发送至所述报文数据监控管理模块(4);/n所述报文数据监控管理模块(4)根据采集识别结果消息、解析结果消息和匹配结果消息进行数据统计和标记,根据报文数据生成全文索引,实现对报文数据全文检索。/n

【技术特征摘要】
1.航班运行数据报文解析系统,其特征在于:包括报文采集模块(1)、报文解析模块(2)、报文预处理匹配模块(3)和报文数据监控管理模块(4),其中:
所述报文采集模块(1)用于对报文数据的采集分类与存储,并将分类后的报文数据和采集识别成功消息传输至所述报文解析模块(2),发送报文采集识别成功与否的消息给报文数据监控管理模块(4);
所述报文解析模块(2)用于报文数据的解析,并将解析成功消息发送至所述报文预处理匹配模块(3),发送解析成功与否的消息至报文数据监控管理模块(4);
所述报文预处理匹配模块(3)根据航班计划中的信息和解析到的数据进行验证、匹配运算,得到最佳的航班并将匹配结果消息发送至所述报文数据监控管理模块(4);
所述报文数据监控管理模块(4)根据采集识别结果消息、解析结果消息和匹配结果消息进行数据统计和标记,根据报文数据生成全文索引,实现对报文数据全文检索。


2.根据权利要求1所述的航班运行数据报文解析系统,其特征在于:所述报文采集模块(1)采用集群进行部署,通过分布式锁机制zookeeper协调多个采集节点对数据源进行报文数据采集分类,并将分类后的数据进行储存;最后发送含有报文数据结构的采集识别成功消息至所述报文解析模块(2);最终根据采集识别结果、采集识别开始时间、采集识别结束时间等信息发送至所述报文数据监控管理模块(4)。


3.根据权利要求2所述的航班运行数据报文解析系统,其特征在于:所述报文解析模块(2)上设置有规则引擎QLExpress和MongoDB数据库;所述报文解析模块(2)在系统启动时加载报文解析规则并定时更新或者手动触发加载更新解析规则,当收到采集识别成功通知消息时,根据报文解析规则和规则引擎QLExpress解析出分类后的报文数据的键值对,将解析成功生成的键值对和采集识别成功消息组合成的JSON格式数据存入报文类别集合的MongoDB数据库中,同时JSON数据作为消息发送给报文预处理匹配模块(3);最后对收到的采集识别成功消息追加报文解析开始时间、解析结束时间,并发送至所述报文数据监控管理模块(4)。


4.根据权利要求3所述的航班运行数据报文解析系统,其特征在于:当所述报文预处理匹配模块(3)接收到解析成功通知消息时,读取消息中的解析结果,其中包含的航班起飞降落地址、航班号、承运人及报文生成时间推算航班日期,航班起飞降落时间数值类根据需要采用范围匹配,匹配航班计划中的航班信息,并根据航班中的信息和解析到的数据算出最佳的航班;最后在匹配通知消息追加匹配开始时间、匹配结束时间和航班ID,作为匹配结果消息发送至所...

【专利技术属性】
技术研发人员:王宇中
申请(专利权)人:北京恒赢智航科技有限公司北京三赢伟业科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1