本发明涉及一种航天器异构测试数据集成管理系统,属于航天器运动测试技术领域。
背景技术:
在航天器的全寿命周期的测试过程中,用于航天器健康状态评估的主要依据是航天器研发过程中产生的实验测试数据与在轨航天器传输至航天器地面站的遥测数据,这些数据统称为航天器测试数据。应用大数据技术对试验数据与遥测数据资料进行集中的管理,能够便于测试人员对航天器测试数据进行综合的分析,对于航天器的在轨营运维护与健康管理有重要的意义,是当前国内外航天领域面临的挑战之一,同时是航天领域研究的热点。然而目前航天器测试数据通常是以分散存储的形式进行管理,存在着数据孤岛现象,缺乏统一的存储与管理体系。
例如,在航天器全寿命周期测试过程中,主要存在测试和试验数据分散、数据类型复杂多样、格式不统一以及音视频文件难以统一管理等问题。
技术实现要素:
本发明提出了一种航天器异构测试数据集成管理系统,以解决现有的航天器全寿命周期测试过程中存在的测试和试验数据分散、数据类型复杂多样、格式不统一以及音视频文件难以统一管理的问题,为此本发明采用如下的技术方案:
一种航天器异构测试数据集成管理系统,包括:数据采集模块、数据存储模块和数据查询与下载模块;
所述数据采集模块用于采集航天器测试数据并按照结构化数据和非结构化数据分类输出所述航天器测试数据;
所述数据存储模块用于根据预定格式将所述航天器测试数据分别存储在分布式存储数据库和分布式文件系统中;
所述数据查询与下载模块用于查询及下载所述分布式存储数据库和分布式文件系统中的航天器测试数据。
本发明通过将航天器测试数据并按照结构化数据和非结构化数据分类存储于分布式存储数据库和分布式文件系统中,并能够根据时间序列查询及下载,实现了航天器测试数据及音视频文件的快速存储与高安全性管理,并以文件为单位将数据批量导入以及基于列导向的存储与部件级参数的整体查询和批量下载。
附图说明
图1为本发明所述的航天器异构测试数据集成管理系统的结构示意图。
图2为实施例一提出的航天器异构测试数据集成管理系统的结果示意图。
图3为实施例一中的说明文件的格式示意图。
图4为实施例一中的结构化数据导入的流程示意图。
图5为实施例一中的结构化数据查询的流程示意图。
图6为实施例一中的音视频文件导入的数据流向示意图。
图7为实施例一中的音频文件导入的流程示意图。
图8为实施例一中的音频文件访问的流程示意图。
图9为实施例一中的音频文件查询的流程示意图。
图10为实施例一中的音频文件下载的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
结合图1所示,本具体实施方式提供的航天器异构测试数据集成管理系统包括:数据采集模块10、数据存储模块20和数据查询与下载模块30;其中的数据采集模块10用于采集航天器测试数据并按照结构化数据和非结构化数据分类输出所述航天器测试数据;数据存储模块20用于根据预定格式将所述航天器测试数据分别存储在分布式存储数据库和分布式文件系统中;数据查询与下载模块30用于查询及下载所述分布式存储数据库和分布式文件系统中的航天器测试数据。
可选的,结合图2所示,数据存储模块20包括结构化数据采集子模块21、非结构化数据采集子模块22、数据导入子模块23和文件导入子模块24;
其中,结构化数据采集子模块21用于从所述航天器测试数据中提取结构化数据并输出;非结构化数据采集子模块22用于从所述航天器测试数据中提取非结构化数据并输出;数据导入子模块23用于将所述结构化数据按照指定格式输出至所述分布式存储数据库;文件导入子模块24用于将所述非结构化数据按照指定格式输出至所述分布式文件系统。
可选的,结合图2所示,数据存储模块20还包括结构化数据清洗子模块25;
其中,数据清洗子模块25用于对所述结构化数据进行数据一致性检查以及对无效值和缺失值进行处理。
可选的,结合图2所示,数据存储模块20还包括第一存储子模块26;
其中,第一存储子模块26用于以时间为行索引并以每个航天器部件为列族,并通过表的形式存储所述结构化数据。
可选的,结合图2所示,数据存储模块20还包括第一导入子模块27;
其中,第一导入子模块27用于获取所述表的名称、数据文件和说明文件名称,若所述数据文件或说明文件不为空,则将数据文件按照说明文件中的格式导入所述分布式存储数据库。
可选的,结合图2所示,数据查询与下载模块30包括第一数据查询子模块31;
其中,第一数据查询子模块31用于获取所述表的名称、起始行、结束行和列名,并对获取的起始行和结束行名进行规范化处理后,从所述分布式存储数据库中查询与所获取的起始行、结束行名最接近的行名作为新的起始行、结束行名,并从所述分布式存储数据库中获取所有行名和列名并排序,从中截取起始行与结束行所包含的行名,并对获取的列名中的列族名进行该列族所属全部列名的替换,从所述分布式存储数据库中读取指定的行和列并输出查询结果。
可选的,结合图2所示,数据存储模块20包括第二存储子模块28;
其中,第二存储子模块28用于以文件名称作为行索引、分别以位置信息和属性信息为列族,并通过表的形式存储所述非结构化数据。
可选的,结合图2所示,数据存储模块20还包括第二导入子模块29;
其中,第二导入子模块29用于获取本地文件的路径和文件标签,若所述本地文件路径下的文件存在,则将所述文件导入所述分布式文件系统,并将所述文件的名称、存储路径和标签导入所述分布式存储数据库。
可选的,结合图2所示,数据查询与下载模块30包括第二数据查询子模块32;
其中,第二数据查询子模块32用于获取需要查询的标签及所述分布式文件系统中所有文件的信息,若所述标签的查询结果为空,则提示无符合条件的查询文件,若所述标签的查询结果不为空,则将搜索结果记为所有与所述标签的内容一致的行号,并将搜索结果输出。
可选的,结合图2所示,数据查询与下载模块30还包括数据下载子模块33;
其中,数据下载子模块33用于获取本地下载路径和下载文件名称,若所述分布式文件系统中存有所述下载文件名称对应的文件,则将所述文件批量下载至本地路径并输出下载成功提示。
下面通过具体的实施例对本发明提出的航天器异构测试数据集成管理系统进行详细说明。
实施例一
结合图1和图2所示,本实施例提供的航天器异构测试数据集成管理系统包括:数据存储模块20和数据查询与下载模块30;数据存储模块20用于根据预定格式将所述航天器测试数据分别存储在分布式存储数据库和分布式文件系统中;数据查询与下载模块30用于查询及下载所述分布式存储数据库和分布式文件系统中的航天器测试数据。
其中,在数据存储模块20中包括结构化数据采集子模块21、非结构化数据采集子模块22、数据导入子模块23、文件导入子模块24、结构化数据清洗子模块25、第一存储子模块26、第一导入子模块27、第二存储子模块28和第二导入子模块29。
在数据查询与下载模块30中包括第一数据查询子模块31、第二数据查询子模块32和数据下载子模块33。
本实施例采用数据仓库的思想将航天器测试数据与多媒体数据文件按照统一的格式集中的存储在分布式存储数据库和分布式文件系统中,并开发相应的数据库接口便于数据的导入、查询与下载,实现数据与文件的统一存储与管理,针对航天器全寿命周期测试和试验数据分散、数据类型复杂多样、格式不统一、音视频文件难以统一管理等问题,开展面向航天器海量异构试验测试数据的大数据集成管理系统的研究,从而实现航天器全寿命周期测试数据的有效集成和管理。其中的分布式存储数据库可采用hbase数据库,分布式文件系统可采用hdfs分布式文件系统。
从测试设备及航天器地面站采集到的航天器测试数据主要包括遥测数据、总装集成测试数据等结构化数据以及音视频文件等非结构化数据。其中的结构化数据可通过数据清洗子模块25进行数据野值剔除以及对无效值和缺失值进行处理,然后由数据导入子模块23根据用户给出的说明文件可以按照指定的格式存入hbase数据库。在hbase数据库中的结构化数据由第一存储子模块26以表的形式进行存储,表中的数据以时间为行索引,每个部件保存为一个列族,该部件所有的参数均为属于该列族的列,数据在hbase数据库中存储的结构如表1所示,说明文件的格式如图3所示。
表1
其中,结构化数据导入程序流程图如图4所示,首先由第一导入子模块27获取所述表的名称、数据文件和说明文件名称,若所述数据文件或说明文件不为空,则将数据文件按照说明文件中的格式导入所述分布式存储数据库。
在对hbase数据库中的结构化数据进行访问时,可先指定hbase数据库中的结构化数据存储的表和时间范围及列族或者列的名称。由于航天器测试数据的时间通常会精确到秒,为了便于用户进行查询,对输入的起始时间与结束时间均可进行格式化处理,在hbase数据库中查找与用户输入时间最接近的行作为起始行与结束行,从而保证查询的效率。另外,由于结构化数据在hbase数据库中是以列导向进行存储的,每一个部件或者分系统作为一个列族单独进行存储,这钟存储结构便于用户进行不同分系统数据的查询,通过输入列族的名称即可直接获取某一分系统或部件的全部测试参量,同时也支持输入具体的列名称,获取指定列的数据。在对结构化数据进行查询后,系统还可对结构化数据的完整性进行检查,将数据不全的列进行删除并输出提示,完整的数据将被返回到界面上进行显示,也可以选择将其保存为txt文本文件用于后续的数据分析。
其中,结构化数据查询程序流程图如图5所示,首先由第一数据查询子模块31获取所述表的名称、启示行、结束行和列名,并从所述分布式存储数据库中获取所有行名和列名并排序,若全部行名中都包含起始行与结束行,则从所述分布式存储数据库中读取指定的行和列并输出查询结果。
音视频文件等非结构化数据由于体量通常较大,不适用hbase数据库的使用场景。因此为了便于对音视频文件进行管理与查询,本实施例选择将音视频文件导入hdfs分布式文件系统实现对文件的高安全性管理。将文件在hdfs分布式文件系统中存储的位置信息及时长、清晰度等文件的属性信息通过数据导入模块导入hbase数据库进行统一管理。与结构化数据类似,音视频文件的信息在hbase数据库中存储的结构如表2所示,通过第二存储子模块28存储的表中有两个列族,分别为位置信息列族以及属性信息列族,不同的属性信息以列的形式统一存储在属性信息列族下,以文件名称作为行索引。
表2
其中,音视频文件导入时的数据流向如图6所示,音视频文件导入程序流程图如图7所示,首先由第二导入子模块29获取本地文件的路径和文件标签,若所述本地文件路径下的文件存在,则将所述文件导入所述分布式文件系统,并将所述文件的名称、存储路径和标签导入所述分布式存储数据库。
对音视频文件进行访问时,分为文件查询与文件下载两个步骤,如图8所示。首先由第二数据查询子模块32根据输入的关键词在hbase数据库中对文件名与标签进行查询,一次可以输入以空格隔开的多个关键词,系统将返回所有符合要求的文件及其信息。首先判断所有输是否为空,若为空则提示输入关键词,不为空则对文件名称进行关键词检索,读取存储多媒体文件信息表格的描述信息,获取所有文件名称,记录所有包含任意关键词的行名序号,若行名检索栏输入为空则保留全部行名序号。然后对文件的标签信息进行检索,系统为每个文件设置了四个标签,分别为型号、时间、文件类型和内容。对每一个标签进行分级查找,在包含行名关键词的序号列表中搜索所有包含一级标签的关键词的文件,记录符合条件的文件序号,若一级标签为空则保留查询范围内的全部序号。然后在这些包含行名关键词与第一个标签关键词的文件中继续搜索符合第二个标签内容的文件,若第二级标签为空,则将之前符合要求的文件序号全部保留,以此类推直到搜索出所有符合输入标签内容的文件。最后将符合要求的文件及其所有标签信息返回界面便于用户进行选择。
其中,音视频文件查询程序流程图如图9所示,首先由第二数据查询子模块32获取需要查询的关键词及所述分布式文件系统中所有文件的信息,若所述标签的查询结果为空,则提示无符合条件的查询文件,若所述标签的查询结果不为空,则将搜索结果记为所有与包含所述关键词的行号,并将搜索结果输出。
在进行查询之后,用户可以根据搜索的结果选择需要下载的文件。通过数据下载子模块33输入待下载文件名称及下载文件的保存路径,并查找文件的存储路径并从hdfs分布式文件系统中将文件批量下载至本地。
其中,音视频文件下载程序流程图如图10所示,首先由数据下载子模块33用于获取本地下载路径和下载文件名称,若所述分布式文件系统中存有所述下载文件名称对应的文件,则将所述文件下载至本地路径并输出下载成功提示。
采用本实施例提出的航天器异构测试数据集成管理系统,通过将航天器测试数据并按照结构化数据和非结构化数据分类存储于分布式存储数据库和分布式文件系统中,并能够根据时间序列查询及下载,实现了航天器测试数据及音视频文件的快速存储与高安全性管理,并以文件为单位将数据批量导入以及基于列导向的存储与部件级参数的整体查询和批量下载。
以上所述,仅为本发明较佳的具体实施方式,这些具体实施方式都是基于本发明整体构思下的不同实现方式,而且本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。