实施例1
图1为本发明实施例提供的一种数据处理系统的结构示意图,所述数据处理系统包括:数据存储设备11和数据处理设备12。
数据存储设备11,用于存储待处理数据,并建立所述待处理数据和所述待处理数据在所述数据存储设备中的存储地址之间的映射关系,所述待处理数据包含至少一种数据类型对应的数据。
数据处理设备12,用于接收用户发送的数据处理指令,根据所述映射关系,从数据存储设备中查找所述数据处理指令对应的待处理数据,并对查找到的所述待处理数据进行并行处理。
在本发明的另一实施例中,所述数据处理系统还包括:数据获取设备13和数据预处理设备14,其中:
所述数据获取设备13,用于获取数据源信息,所述数据源信息包含至少一种数据类型对应的数据。
所述数据处理系统在进行数据处理之前,首先需要获取数据源信息,例如:性能评估系统是一种数据处理系统,当性能评估系统需要对待评估的产品进行性能评估时,性能评估系统中首先需要执行数据获取操作,获取与所述待评估产品的性能相关的数据源信息,进而对所述数据源信息执行相关处理操作,可以得到对待评估产品的性能评估结果。
所述数据预处理设备14,用于对所述数据获取设备13获取到的数据源信息进行数据预处理,得到待处理数据。
所述数据处理系统在获取到所述数据源信息之后,需要对获取到的所述数据源信息进行数据预处理,得到可以在所述数据处理设备12中进行数据处理的待处理数据。
具体地,所述数据预处理设备14对所述数据获取设备13获取到的数据源信息进行数据预处理,得到待处理数据,包括:
对所述数据源信息进行有效性检测,提取所述数据源信息中的有效数据;
根据所述有效数据的数据类型,从所述有效数据中筛选出所述数据类型对应的关键数据项,并将筛选得到的关键数据项作为所述数据类型对应的待处理数据。
优选地,所述数据处理系统通过所述数据获取设备13获取到数据源信息之后,首先,通过所述数据预处理设备14对所述数据源信息进行有效性检测,将所述数据源信息中不符合数据通信协议、校验码错误的无效数据去除掉,提取出所述数据源信息中包含的有效数据。
由于所述数据源信息包含至少一种数据类型对应的数据,所述数据预处理设备对所述数据源信息进行有效性检测,提取出所述数据源信息中包含的有效数据,所述有效数据包含至少一种数据类型对应的数据。
然后,所述数据预处理设备14针对从所述数据源信息中提取出的所述有效数据,根据所述有效数据的数据类型,从所述有效数据中筛选出所述数据类型对应的关键数据项作为所述数据类型对应的待处理数据,将所述有效数据中包含的无关数据项去除掉。
通过所述数据预处理设备14对所述数据源信息进行有效性检测和数据筛选,去除掉无效数据以及有效数据中的无关数据项,能够减少所述数据处理系统对于无效数据和无关数据项的数据处理造成的时间消耗,提高了数据处理的效率。
在本发明的另一实施例中,所述数据预处理设备14对所述数据获取设备13获取到的数据源信息进行数据预处理,得到待处理数据,还包括:
根据所述有效数据的数据类型,将所述有效数据进行数据分类。
所述数据获取设备13获取到的数据源信息包含至少一种数据类型对应的数据,所述数据预处理设备14对所述数据源信息进行数据预处理之后,得到的所述有效数据中,不同数据类型对应的有效数据是混合在一起的,需要对所述有效数据进行数据分类。
所述数据预处理设备14根据所述有效数据的数据类型,确定所述数据类型对应的数据格式,并将所述数据类型对应的有效数据转换为所述数据格式。
对所述有效数据进行数据分类之后,所述有效数据中包含的不同数据类型对应的有效数据具有不同的数据格式,使得在后续处理过程中可以根据不同的数据格式,更加方便快捷地识别查找不同的数据类型对应的有效数据。
在本发明的另一实施例中,所述数据预处理设备14对所述数据获取设备13获取到的数据源信息进行数据预处理,得到待处理数据,还包括:
对所述待处理数据按照预先设定的数据格式进行数据打包,得到所述待处理数据对应的数据包;
对所述待处理数据对应的数据包进行数据压缩,将所述数据包中包含的待处理数据压缩为二进制的元数据。
当所述数据处理系统获取到的数据源信息扩展后,即所述数据处理系统获取到更多数据类型的数据之后,对于所述更多数据类型对应的数据,经过所述数据预处理设备14的数据有效性检测、数据筛选、数据打包之后得到所述预先设定的数据格式对应的数据包。
所述数据处理系统在数据打包之后的后续处理过程中,处理的数据包的数据格式都是所述预先设定的数据处理格式,使得所述数据处理系统在数据打包之后的后续处理方法能够复用。
所述数据预处理设备14对所述待处理数据对应的数据包进行数据压缩,得到所述待处理数据对应的最小数据包,可以提高所述待处理数据的传输、存储、处理效率。
所述数据处理系统通过所述数据获取设备13获取到数据源信息,进而通过所述数据预处理设备14得到待处理数据之后,需要将所述待处理数据存储在所述数据处理系统的所述数据存储设备11中。
所述数据存储设备11存储待处理数据,并建立所述待处理数据和所述待处理数据在所述数据存储设备中的存储地址之间的映射关系,包括:
将数据存储设备的存储空间划分为块索引缓存、行缓存、块缓存;
根据数据存储函数,将所述待处理数据中的列信息存储在所述块缓存中,将所述待处理数据中的行信息存储在所述行缓存中;
建立所述待处理数据中的列信息和所述待处理数据中的列信息在所述块缓存中的存储地址之间的映射关系以及建立所述待处理数据中的行信息和所述待处理数据中的行信息在所述行缓存中的存储地址之间的映射关系;
根据数据存储函数,将所述映射关系存储在所述块索引缓存中。
例如,所述数据获取设备13获取到的数据源信息为全球定位系统数据(GlobalPositioning System,GPS),经过所述数据预处理设备14得到所述GPS数据的待处理数据。
将所述数据存储设备11的存储空间划分为块索引缓存、行缓存、块缓存三级缓存空间。
根据数据存储函数,将所述GPS数据的待处理数据中的列信息存储在所述块缓存中,将所述GPS数据的待处理数据中的行信息存储在所述行缓存中;
建立所述GPS数据的待处理数据中的列信息和所述列信息在所述块缓存中的存储地址之间的映射关系以及建立所述GPS数据的待处理数据中的行信息和所述行信息在所述行缓存中的存储地址之间的映射关系;
根据数据存储函数,将所述映射关系存储在所述块索引缓存中。
通过所述数据存储设备11对所述GPS数据的待处理数据的三级缓存,使得在后续数据处理过程中,可以根据所述块索引缓存中存储的所述映射关系在所述数据存储设备11中快速查找到所述GPS数据的待处理数据。
在本发明的另一实施例中,所述数据处理系统还包括:数据库15,其中:
数据库15,用于存储所述数据预处理设备14得到的所述待处理数据,并将所述待处理数据推送到所述数据存储设备11。
在实际应用中,当所述数据预处理设备14得到的所述待处理数据的数据量较大,超出了所述数据存储设备11的存储容量时,所述数据处理系统将数据量较大的所述待处理数据首先存储在所述数据库15中。
根据所述待处理数据的数据类型,在所述数据库15中将数据量较大的所述待处理数据进行分层存储,即针对不同数据类型对应的待处理数据,存储在所述数据库设备的不同存储层中的确定存储位置,并建立所述不同数据类型对应的待处理数据和所述不同数据类型对应的待处理数据在所述数据库15中的存储位置之间的索引表,使得能够通过索引表快速查找到所述待处理数据。
由于在所述数据库15中对于数据的查找速度低于在所述数据存储设备11中对于数据的查找速度,因此,所述数据库15可以根据所述数据存储设备11的存储容量,将所述数据库15中存储的所述待处理数据不断推送到所述数据存储设备11的三级缓存中进行缓存,在后续数据处理过程中可以提高对所述待处理数据的查找速度,提高所述数据处理系统的数据处理效率。
在本发明所记载的实施例中,所述数据处理设备12还包括:输入端口,其中:
所述输入端口,用于接收用户发送的数据处理指令,所述数据处理指令中包含至少一个任务事件,所述任务事件中包含处理所述任务事件的时间标识,所述任务事件用于处理所述待处理数据。
用户通过所述数据处理设备12的输入端口输入数据处理指令,所述数据处理设备12通过所述数据端口接收所述数据处理指令,并将所述数据处理指令转化为至少一个任务事件,所述任务事件中包含处理所述任务事件的时间标识,所述任务事件用于处理所述待处理数据。
在本发明所记载的实施例中,所述数据处理设备12还包括:时间线程模块和任务线程模块,其中:
所述时间线程模块,用于根据所述任务事件的时间标识,确定所述任务事件在所述任务事件所在的任务处理线程中的数据处理的时间;
所述任务线程模块,用于将所述数据处理指令中包含的所述至少一个任务事件分别分配至任务处理线程,针对不同的所述任务事件,在所述任务事件对应的数据处理时间到达时,所述任务处理线程根据所述任务事件对应的待处理数据和所述待处理数据在所述数据存储设备中的存储地址之间的映射关系,从数据存储设备中查找所述任务事件对应的待处理数据,并对查找到的所述待处理数据进行处理,得到数据处理结果。
具体地,根据所述数据处理系统的物理运行环境,所述任务线程模块中包含不同的任务处理线程,例如,所述数据处理系统的物理运行环境为4核CPU,则所述任务线程模块中包含4个任务处理线程,每个任务处理线程独占一个CPU内核。所述任务线程模块将所述数据处理指令包含的所述4个任务事件依次分配至所述4个任务处理线程。
具体地,所述任务线程模块将所述数据处理指令包含的所述至少一个任务事件分别分配至任务处理线程之后,针对一个任务处理线程,所述任务处理线程和所述时间线程模块对所述任务事件的处理包括:
任务有效性检测:判断所述任务事件的执行状态,检测出执行状态为待执行状态的任务事件。
所述数据处理设备12通过所述输入端口将用户输入的所述数据处理指令转化为不同的任务事件时,所述不同的任务事件包含三种状态:已经执行状态、无效状态和待执行状态。
在所述任务处理线程内,所述任务处理线程可以对所述任务事件进行有效性检测,检测出执行状态为待执行状态的任务事件,进而对检测出的所述待执行状态的任务事件进行后续处理。
时间推进:所述任务处理线程检测出执行状态为待执行状态的所述任务事件之后,将所述待执行状态的任务事件推送给所述时间线程模块。所述时间线程模块根据所述任务事件中包含的处理所述任务事件的时间标识,判断所述任务事件对应的数据处理时间。
事件执行:当时间线程模块的推进时间到达所述任务事件的的数据处理时间时,所述时间线程模块确定在所述任务处理线程内执行所述任务事件的数据处理。
根据所述任务事件对应的待处理数据和所述待处理数据在所述数据存储设备11中的存储地址之间的映射关系,从所述数据存储设备11中查找所述任务事件对应的待处理数据,并对查找到的所述待处理数据进行数据处理,得到数据处理结果。
根据分配至所述不同的任务处理线程内的所述任务事件的时间标识,所述不同的任务处理线程之间可以并行处理,提高所述数据处理系统的数据处理效率。
例如:所述数据处理设备12将用户输入的数据处理指令转化为4个任务事件:任务事件1至4,所述任务线程模块将任务事件1分配至任务处理线程1,任务事件2分配至任务处理线程2,任务事件3分配至任务处理线程3,任务事件4分配至任务处理线程4。
在所述4个任务处理线程中进行任务有效性检测后,所述任务事件1至4的执行状态是待执行状态,所述任务处理线程1至4分别将所述任务事件1至4推送给所述时间线程模块。
所述任务事件1的时间标识为1s,也即在所述时间线程模块的推送时间为1s时对所述任务事件1执行数据处理,所述任务事件2的时间标识为1.5s,所述任务事件3的时间标识为3s,所述任务事件4的时间标识为5s。
根据所述任务事件1至4的时间标识,所述时间线程模块判断所述任务事件1至4的任务处理优先级为:任务事件1、任务事件2、任务事件3、任务事件4。
所述时间线程管理模块的时间推进步长为1s,根据所述任务事件的时间标识可以确定,在所述时间线程模块的推送时间的第1s到第2s间,所述任务处理线程1和所述任务处理线程2并行处理,执行所述任务事件1和所述任务事件2的数据处理操作。
所述任务处理线程1根据所述任务事件1对应的待处理数据和所述待处理数据在所述数据存储设备11中的存储地址之间的映射关系,从所述数据存储设备11中查找所述任务事件1对应的待处理数据,并对查找到的所述待处理数据进行数据处理,得到数据处理结果1。
所述任务处理线程2根据所述任务事件2对应的待处理数据和所述待处理数据在所述数据存储设备11中的存储地址之间的映射关系,从所述数据存储设备11中查找所述任务事件2对应的待处理数据,并对查找到的所述待处理数据进行数据处理,得到数据处理结果2。
在所述时间线程模块的推送时间为3s时所述任务处理线程3开始执行所述任务事件3的数据处理操作。
所述任务处理线程3根据所述任务事件3对应的待处理数据和所述待处理数据在所述数据存储设备11中的存储地址之间的映射关系,从所述数据存储设备11中查找所述任务事件3对应的待处理数据,并对查找到的所述待处理数据进行数据处理,得到数据处理结果3。
在所述时间线程模块的推送时间为5s时所述任务处理线程4开始执行所述任务事件4的数据处理操作。
所述任务处理线程4根据所述任务事件4对应的待处理数据和所述待处理数据在所述数据存储设备11中的存储地址之间的映射关系,从所述数据存储设备11中查找所述任务事件4对应的待处理数据,并对查找到的所述待处理数据进行数据处理,得到数据处理结果4。
在本发明的另一实施例中,所述任务处理线程将所述任务事件推送给所述时间线程模块后,所述时间线程模块判断所述任务事件是否超时,当确定所述任务事件超时时,注销所述超时的任务事件。
例如:所述任务事件中包含的处理所述任务事件的时间标识为3s,即在所述时间线程模块的推送时间为3s时执行所述任务事件的数据处理操作,但是此时所述时间线程模块的推送时间已经到达10s,所以判断所述任务事件超时,注销所述超时的任务事件。
在本发明所记载的实施例中,所述数据处理设备12还包括:输出端口,其中:
所述输出端口,用于输出所述数据处理结果。
图2为本发明实施例提供的一种数据处理系统的原理图,如图2所示,所述数据处理系统获取到的数据源信息以数据包的形式传输到所述数据处理系统,所述数据处理系统获取到N个数据包。
所述数据处理系统为了提高数据处理的效率,采用了四个层级的数据处理方法:数据预处理、数据库存储、数据存储设备存储、数据处理。
所述数据处理系统获取到所述N个数据包之后,首先,对所述N个数据包进行数据预处理,包括:数据有效性检测、数据分类、数据筛选、数据打包、数据压缩。
其次,将所述预处理之后的数据存入所述数据处理系统的数据库设备,包括:数据库公共模块、数据分层与索引。
然后,将所述数据库中存储的数据推送至所述数据存储设备进行数据存储,包括:内存分级、三级缓存。
最后,所述数据存储设备中存储的数据在所述数据处理系统的数据处理设备中进行数据处理,所述数据处理设备中包括:多核多线程智能分配、任务线程监控、时间线程监控。
通过所述数据处理系统的数据预处理、数据库存储、数据存储设备存储以及数据处理之间的分层交互设计,提高了数据处理的效率。
图3为本发明实施例提供的一种数据处理系统的流程示意图,如图3所示,所述数据处理系统的数据获取设备13获取到的数据源信息包含一次雷达情报、二次雷达情报、一二次雷达融合情报、广播式自动相关监视信息(Automatic Dependent SurveillanceBroadcast,ADS-B)和GPS数据五种数据类型对应的数据。
表1为所述数据处理系统的物理运行环境。
表1
序号 |
项目 |
配置 |
1 |
CPU |
I7-4710MQ@2.50GHz 8核 |
2 |
内存 |
16GB |
3 |
操作系统 |
Win7 64位操作系统 |
所述数据源信息以数据包的形式传输至所述数据获取设备13,所述数据获取设备13获取到的是五个数据包:所述一次雷达情报的数据包1、所述二次雷达情报的数据包2、所述一二次雷达融合情报的数据包3、所述ADS-B信息的数据包4、所述GPS数据的数据包5。
所述数据获取设备13获取到所述五个数据包之后,将所述五个数据包提交到所述数据预处理设备14,所述数据预处理设备14对所述数据源信息对应的数据包进行数据预处理,得到待处理数据。
具体地,所述数据预处理设备14对所述数据源信息执行下述数据预处理操作:
数据有效性检测:所述数据预处理设备14接收到所述数据源信息对应的五个数据包之后,对所述五个数据包进行有效性检测,确定所述数据包1至5是有效数据包。
加入数据列表:根据数据包1至5的时间标识信息,所述数据包1至5顺序加入所述数据列表,在后续处理过程中按照所述5个数据包的时间标识信息,对所述5个数据包进行处理。
数据分类:解析所述五个数据包的数据包头中的数据类型,根据所述数据包的数据类型,确定所述数据类型对应的数据格式,并将所述数据类型对应的数据包中的数据转换为所述数据类型对应的数据格式。
解析数据包1的数据包头中的数据类型,确定所述数据包头中的数据类型为一次雷达情报,进而确定所述一次雷达情报对应的数据格式一,然后将所述数据包1中的数据转换为所述一次雷达情报对应的数据格式一;
解析数据包2的数据包头中的数据类型,确定所述数据包头中的数据类型为二次雷达情报,进而确定所述二次雷达情报对应的数据格式二,然后将所述数据包2中的数据转换为所述二次雷达情报对应的数据格式二;
解析数据包3的数据包头中的数据类型,确定所述数据包头中的数据类型为一二次雷达融合情报,进而确定所述一二次雷达融合情报对应的数据格式三,然后将所述数据包3中的数据转换为所述一二次雷达融合情报对应的数据格式三;
解析数据包4的数据包头中的数据类型,确定所述数据包头中的数据类型为ADS-B信息,进而确定所述ADS-B信息对应的数据格式四,然后将所述数据包4中的数据转换为所述ADS-B信息对应的数据格式四;
解析数据包5的数据包头中的数据类型,确定所述数据包头中的数据类型为GPS数据,进而确定所述GPS数据对应的数据格式五,然后将所述数据包5中的数据转换为所述GPS数据对应的数据格式五。
数据分类之后,所述五种数据类型对应的数据分别对应不同的数据格式,使得在后续处理过程中,在不解析数据包的包头中的数据类型时,可以根据数据包中的数据的数据格式,判断所述数据包对应的数据类型。
数据筛选:根据所述五个数据包的数据类型,从所述五个数据包中的数据中筛选出所述数据类型对应的关键数据项,并将筛选得到的关键数据项作为所述数据类型对应的待处理数据。
针对所述数据包1,解析出所述数据包1中的数据,根据所述数据包1中的数据的数据格式,可以判断所述数据包1对应的是一次雷达情报数据,从所述数据包1中解析出的所述数据中,筛选出一次雷达情报数据对应的关键数据项作为所述数据包1的待处理数据,也即所述一次雷达情报的待处理数据;
针对所述数据包2,解析出所述数据包2中的数据,根据所述数据包2中的数据的数据格式,可以判断所述数据包2对应的是二次雷达情报数据,并从所述数据包2中解析出的所述数据中,筛选出二次雷达情报数据对应的关键数据项作为所述数据包2的待处理数据,也即所述二次雷达情报的待处理数据;
针对所述数据包3,解析出所述数据包3中的数据,根据所述数据包3中的数据的数据格式,可以判断所述数据包3对应的是一二次雷达融合情报数据,并从所述数据包3中解析出的所述数据中,筛选出一二次雷达融合情报数据对应的关键数据项作为所述数据包3的待处理数据,也即所述一二次雷达融合情报的待处理数据;
针对所述数据包4,解析出所述数据包4中的数据,根据所述数据包4中的数据的数据格式,可以判断所述数据包4对应的是ADS-B信息数据,并从所述数据包4中解析出的所述数据中,筛选出ADS-B信息数据对应的关键数据项作为所述数据包4的待处理数据,也即所述ADS-B信息的待处理数据;
针对所述数据包5,解析出所述数据包5中的数据,根据所述数据包5中的数据的数据格式,可以判断所述数据包5对应的是GPS数据,并从所述数据包5中解析出的所述数据中,筛选出GPS数据对应的关键数据项作为所述数据包5的待处理数据,也即所述GPS数据的待处理数据。
数据打包:对所述待处理数据按照预先设定的数据格式六进行数据打包,得到所述待处理数据对应的数据包。
将所述数据包1中的待处理数据按照预先设定的数据格式六进行数据打包,得到数据包6,所述数据包6中包含的是所述一次雷达情报的待处理数据;
将所述数据包2中的待处理数据按照预先设定的数据格式六进行数据打包,得到数据包7,所述数据包7中包含的是所述二次雷达情报的待处理数据;
将所述数据包3中的待处理数据按照预先设定的数据格式六进行数据打包,得到数据包8,所述数据包8中包含的是所述一二次雷达融合情报的待处理数据;
将所述数据包4中的待处理数据按照预先设定的数据格式六进行数据打包,得到数据包9,所述数据包9中包含的是所述ADS-B信息的待处理数据;
将所述数据包5中的待处理数据按照预先设定的数据格式六进行数据打包,得到数据包10,所述数据包10中包含的是所述GPS数据的待处理数据。
数据压缩:将所述待处理数据对应的数据包进行数据压缩处理,将所述数据包中包含的待处理数据压缩为二进制的元数据。
采用ZIP压缩技术,将所述数据包6至10中包含的待处理数据压缩为二进制的元数据。
所述数据预处理设备14对所述数据源信息对应的数据包进行数据预处理,最终得到包含所述待处理数据的最小数据包6至10之后,将所述最小数据包6至10中包含的所述待处理数据存储到所述数据处理系统的所述数据存储设备11中。
根据表1可知,所述数据处理系统的数据存储设备11的内存空间为16GB,将所述16GB的内存空间划分为三级缓存空间,一级缓存:块索引缓存,二级缓存:行缓存,三级缓存:块缓存。
所述数据包6至10传输至所述数据存储设备11后,所述数据存储设备11对所述数据包6至10中的数据进行存储。
根据数据存储函数,将所述数据包6中包含的所述一次雷达情报的待处理数据的列信息存储在所述块缓存中,将所述数据包6中包含的所述一次雷达情报的待处理数据的行信息存储在所述行缓存中;
建立所述一次雷达情报的待处理数据的列信息和所述列信息在所述块缓存中的存储地址之间的映射关系以及建立所述一次雷达情报的待处理数据的行信息和所述行信息在所述行缓存中的存储地址之间的映射关系;
根据数据存储函数,将所述映射关系存储在所述块索引缓存中。
根据数据存储函数,将所述数据包7中包含的所述二次雷达情报的待处理数据的列信息存储在所述块缓存中,将所述数据包7中包含的所述二次雷达情报的待处理数据的行信息存储在所述行缓存中;
建立所述二次雷达情报的待处理数据的列信息和所述列信息在所述块缓存中的存储地址之间的映射关系以及建立所述二次雷达情报的待处理数据的行信息和所述行信息在所述行缓存中的存储地址之间的映射关系;
根据数据存储函数,将所述映射关系存储在所述块索引缓存中。
根据数据存储函数,将所述数据包8中包含的所述一二次雷达融合情报的待处理数据的列信息存储在所述块缓存中,将所述数据包8中包含的所述一二次雷达融合情报的待处理数据的行信息存储在所述行缓存中;
建立所述一二次雷达融合情报的待处理数据的列信息和所述列信息在所述块缓存中的存储地址之间的映射关系以及建立所述一二次雷达融合情报的待处理数据的行信息和所述行信息在所述行缓存中的存储地址之间的映射关系;
根据数据存储函数,将所述映射关系存储在所述块索引缓存中。
根据数据存储函数,将所述数据包9中包含的所述ADS-B信息的待处理数据的列信息存储在所述块缓存中,将所述数据包9中包含的所述ADS-B信息的待处理数据的行信息存储在所述行缓存中;
建立所述ADS-B信息的待处理数据的列信息和所述列信息在所述块缓存中的存储地址之间的映射关系以及建立所述ADS-B信息的待处理数据的行信息和所述行信息在所述行缓存中的存储地址之间的映射关系;
根据数据存储函数,将所述映射关系存储在所述块索引缓存中。
根据数据存储函数,将所述数据包10中包含的所述GPS数据的待处理数据的列信息存储在所述块缓存中,将所述数据包10中包含的所述GPS数据的待处理数据的行信息存储在所述行缓存中;
建立所述GPS数据的待处理数据的列信息和所述列信息在所述块缓存中的存储地址之间的映射关系以及建立所述GPS数据的待处理数据的行信息和所述行信息在所述行缓存中的存储地址之间的映射关系;
根据数据存储函数,将所述映射关系存储在所述块索引缓存中。
通过所述数据存储设备11对所述五种不同数据类型对应的待处理数据的三级缓存,使得在后续数据处理过程中,可以根据所述块索引缓存中的所述映射关系,在所述数据存储设备11中快速查找到所述五种不同数据类型对应的待处理数据。
用户通过所述数据处理系统的数据处理设备12的输入端口输入数据处理指令,所述数据处理设备12通过所述输入端口接收所述数据处理指令,并将所述数据处理指令转化为16个任务事件,所述16个任务事件包含处理所述16个任务事件的时间标识,所述16个任务事件用于处理所述数据存储设备11中存储的所述五种数据类型对应的待处理数据。
根据表1所示,所述数据处理系统的物理运行环境为8核CPU,所述数据处理设备12的任务线程模块包含8个任务处理线程,每个任务处理线程独占一个CPU内核。所述任务线程模块将所述16个任务事件依次分配至所述8个任务处理线程中,每个任务处理线程内分配2个任务事件。
以任务处理线程1和任务处理线程2为例,分配至所述任务处理线程1内的任务事件为任务事件1和任务事件9,分配至所述任务处理线程2内的任务事件为任务事件2和任务事件10。
所述任务事件1用于处理所述一次雷达情报的待处理数据,所述任务事件2用于处理所述二次雷达情报的待处理数据,所述任务事件9用于处理所述ADS-B信息的待处理数据,所述任务事件10用于处理所述GPS数据的待处理数据。
任务处理线程1对所述任务事件1进行任务有效性检测,检测出所述任务事件1的执行状态为待执行状态,将所述任务事件1加入任务队列;然后对所述任务事件9进行任务有效性检测,检测出所述任务事件9的执行状态为待执行状态,将所述任务事件9加入所述任务处理线程1中的任务队列。
任务处理线程2对所述任务事件2进行任务有效性检测,检测出所述任务事件2的执行状态为待执行状态,将所述任务事件2加入任务队列;然后对所述任务事件10进行任务有效性检测,检测出所述任务事件10的执行状态为待执行状态,将所述任务事件10加入所述任务处理线程2中的任务队列。
按照任务队列先进先出的原则向所述时间线程模块推送任务事件。
任务处理线程1将所述任务事件1推送给所述时间线程模块,然后将所述任务事件9推送给所述时间线程模块。
任务处理线程2将所述任务事件2推送给所述时间线程模块,然后将所述任务事件10推送给所述时间线程模块。
所述任务处理线程1和所述任务处理线程2向所述时间线程模块推送任务事件是可以是同时执行的,也可以是不同时执行的。
所述时间线程模块根据所述任务事件1、所述任务事件2、所述任务事件9和所述任务事件10的时间标识,确定所述任务事件1、所述任务事件9在所述任务处理线程1中的数据处理的时间以及所述任务事件2、所述任务事件10在所述任务处理线程2中的数据处理的时间。
所述任务事件1的时间标识为1s,所述任务事件2的时间标识为1.5s,所述任务事件9的时间标识为3s,所述任务事件10的时间标识为5s。
所述时间线程模块判断所述任务事件1、所述任务事件2、所述任务事件9和所述任务事件10没有超时。
根据所述任务事件1、所述任务事件2、所述任务事件9和所述任务事件10的时间标识以及所述时间线程模块的推送时间,在任务处理线程1和任务处理线程2中执行所述任务事件1、所述任务事件2、所述任务事件9和所述任务事件10的事件执行,即进行对所述任务事件的数据处理。
所述时间线程管理模块的时间推进步长为1s。
在所述时间线程模块的推送时间的第1s到第2s间,所述任务处理线程1和所述任务处理线程2并行处理,执行所述任务事件1和所述任务事件2的数据处理操作。
所述任务处理线程1根据所述数据存储设备11中的所述块索引缓存中存储的映射关系,在所述数据存储设备11中查找到所述任务事件1对应的一次雷达情报的待处理数据,并对所述待处理数据进行数据处理,得到数据处理结果1。
所述任务处理线程2根据所述数据存储设备11中的所述块索引缓存中存储的映射关系,在所述数据存储设备11中查找到所述任务事件2对应的二次雷达情报的待处理数据,并对所述待处理数据进行数据处理,得到数据处理结果2。
在所述时间线程模块的推送时间为3s时,在所述任务线程1中执行所述任务事件9的数据处理操作。
所述任务处理线程1根据所述数据存储设备11中的所述块索引缓存中存储的映射关系,在所述数据存储设备11中查找到所述任务事件9对应的ADS-B信息的待处理数据,并对所述待处理数据进行数据处理,得到数据处理结果3。
在所述时间线程模块的推送时间为5s时,在所述任务线程2中执行所述任务事件10的数据处理操作。
所述任务处理线程2根据所述数据存储设备11中的所述块索引缓存中存储的映射关系,在所述数据存储设备11中查找到所述任务事件10对应的GPS数据的待处理数据,并对所述待处理数据进行数据处理,得到数据处理结果4。
所述数据处理系统通过所述数据处理设备12的输出端口输出所述数据处理结果1至4。
所述数据处理系统的其他任务处理线程3至10中对所述任务事件的处理过程与所述任务处理线程1和所述任务处理线程2相同。
本发明实施例提供的一种数据处理系统,包括数据存储设备和数据处理设备,所述数据存储设备,用于存储待处理数据,并建立所述待处理数据和所述待处理数据在所述数据存储设备中的存储地址之间的映射关系,所述待处理数据包含至少一种数据类型对应的数据;所述数据处理设备,用于接收用户发送的数据处理指令,根据所述映射关系,从数据存储设备中查找所述数据处理指令对应的待处理数据,并对查找到的所述待处理数据进行并行处理。
当获取到待处理数据之后,所述数据存储设备通过在所述待处理数据和所述待处理数据在所述数据存储设备中的存储地址之间建立映射关系,使得当所述数据处理设备接收到用户发送的针对所述待处理数据的数据处理指令时,能够在数据存储设备中快速查找到所述待处理数据,进而对所述待处理数据执行数据处理操作,通过多核多线程数据处理,减少了所述数据处理系统获取到数据和对所述数据执行数据处理操作之间存在的时间延时,提高了数据处理的效率,可以实现数据的实时处理。