论文部分内容阅读
大飞机进行试飞测试,能够产生海量的试飞数据。传统的数据离线处理方式效率低下,延迟了试飞周期,增加试飞成本。为了能够高效的分析处理这些数据,本文设计并实现了一个基于内存计算的流数据处理的试飞数据处理系统。本文中的试飞数据处理系统,采用数据实时处理方式,依靠内存计算和流计算的高效性,显著提升数据处理效率。此外,本文提出了一种基于Markov的内存预测动态分配方法和一种基于时序排队的流数据处理方法,结合Spark分布式内存计算框架,随机过程和排队论等相关知识,改进了原有内存计算和流计算的处理方式,可以加快海量试飞大数据的处理和流转速度,提高数据的价值。本文提出了一种基于Markov的内存预测动态分配方法,通过采用多马尔科夫链方式,根据其状态转移概率,求得其最大概率的转换情形,预测出最有可能需求的内存大小,能够节省内存分配的查询时间,降低内存碎片率。本文同时提出了一种基于时序排队的流数据处理方法,通过对带时间戳的流数据按照时序进行排队,从而能够按照试飞数据的处理要求进行按序处理,同时提升流数据的处理效率。本文设计并实现了的一个基于内存计算的流数据处理的试飞数据处理系统,主要包括了数据采集子系统、数据预处理子系统、数据分析子系统、综合管理子系统等四个主要子系统。数据采集子系统主要负责进行机载原始数据的采集工作,并结合时间戳,形成时序原始数据;数据预处理子系统主要负责将原始数据进行格式转换,通过帧格式转换、工程量转换和流数据转换,最终形成所需的流数据;数据分析子系统主要负责进行数据整理和数值运算,可以结合各种算法,完成数据训练和数据的计算,最后得到试飞结果;综合管理子系统主要包括系统二次开发、系统管理和数据管理三方面,能够对系统和数据进行有效的综合管理使用,以及二次开发。本文通过试飞数据处理系统和Spark分布式内存计算框架结合,充分利用Spark对于海量计算的优势,并采用基于Markov的内存预测动态分配方法来提升Spark内存计算时内存分配的效率,采用基于时序排队的流数据处理方法来提升Spark Streaming处理时序流数据时的效率,从而能够加快数据的实时处理速度。