本发明专利技术提供了一种应用于回放系统的快速数据处理方法及装置,相应的方法包括通过内存映射的方式遍历整个回放数据文件;建立时间与特定回放数据在所述回放数据文件中具体位置的动态索引;根据接收传入的时间参数结合所述映射关系对回放数据进行定位并回放。通过建立回放数据文件在内存中的映射关系,使用户能够快速对特定时间点的回放数据进行定位并回放,在一般的家用计算机系统即可为较大的回放数据文件快速的建立动态索引,回放过程中占用的内存较小,能够回放的时间范围较大,对回放的时间点重新定位响应迅速,回放过程毫无迟滞感。
【技术实现步骤摘要】
本专利技术涉及一种应用于回放系统的快速数据处理方法及装置,属于城市轨道交通监控
技术介绍
ATS (Automatic Train Supervision,自动列车监控系统)和 CTC(CentralizedTraffic Control System,调度集中控制系统)被广泛应用于轨道交通领域,主要实现对列车运行的监督和控制,辅助行车调度人员对全线列车进行管理,它在提高轨道交通运输效率和保障运行安全方面起到了极其重要的作用。ATS/CTC系统在实现对列车运行的监督控制功能的同时,要存储线路的实时状态以及系统内的各种日志,以备各种管理人员对轨道交通各时间段的线路状态以及ATS/CTC的系统运行状态进行分析,在线路或ATS系统出现故障时利用存储的历史数据,通过回放 的手段,复现故障出现时的具体场景,从而分析得出故障产生的原因,因此回放系统对数据的处理能力就变得非常重要。回放系统在保证数据正确的情况下,装载数据的时间最低限度要使操作人员不感到过度的迟滞,操作人员对时间点重新定位时,系统对回放数据的定位应该快速且毫无迟滞感,给操作人员以良好的系统操作体验,而不是出现明显的等待时间。现有的回放系统在存储回放数据时,同时存储了回放数据对应的索引文件,在索引文件中建立了所存储的每条历史数据与其在回放文件中具体位置的映射关系。读取回放文件时,先读取索引文件,在索引文件中查找所需回放历史数据的位置,从而实现对其在回放数据文件中的定位。由于回放文件的读取完全依赖于预先存储的索引文件,一旦索引出错,回放文件将可能无法快速且正常的解析出来,重新建立索引将花费较长的时间和较复杂的过程。另外,回放系统还可以一次性的将固定介质上的回放文件读入内存中,在读入过程中依次将其解析成为系统内部可以理解的格式。在回放过程中,通过遍历内存中的数据,实现对回放历史数据的定位。但是当回放文件较大时,将其一次性读入内存中同时对其进行解析,将占用大量的系统时间,在回放系统初始化的过程中,操作人员需要有较长时间的等待。由于将文件一次性装载入内存,将占用大量的内存空间,这将对回放系统所应用的硬件有较高的要求,提高了设备的成本,同时也限制了回放数据的大小,因为操作系统可用的内存很有限,进而限制了所需进行回放的时间范围。
技术实现思路
本专利技术为解决现有的ATS/CTC系统中的回放技术存在的完全依赖于预先存储的索引文件、以及一次性将回放文件读入内存中时占用系统资源较多对回放数据定位较慢、能够回放的时间范围较小的问题,进而提供了一种应用于回放系统的快速数据处理方法及装置,本专利技术提供了如下的技术方案一种应用于回放系统的快速数据处理方法,包括通过内存映射的方式遍历整个回放数据文件;建立时间与特定回放数据在所述回放数据文件中具体位置的动态索引;根据接收传入的时间参数结合所述映射关系对回放数据进行定位并回放。一种应用于回放系统的快速数据处理装置,包括遍历模块,用于通过内存映射的方式遍历整个回放数据文件;动态索引建立模块,用于建立时间与特定回放数据在所述回放数据文件中具体位置的动态索引; 定位模块,用于根据接收传入的时间参数结合所述映射关系对回放数据进行定位并回放。本专利技术提供的技术方案通过建立回放数据文件在内存中的映射关系,使用户能够快速对特定时间点的回放数据进行定位并回放,在一般的家用计算机系统即可为较大的回放数据文件快速的建立动态索引,回放过程中占用的内存较小,能够回放的时间范围较大,对回放的时间点重新定位响应迅速,回放过程毫无迟滞感。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I是本具体实施方式提供的应用于回放系统的快速数据处理方法的流程示意图;图2是本具体实施方式提供的遍历整个回放数据文件的流程示意图;图3是本具体实施方式提供的动态索引建立的流程示意图;图4是本具体实施方式提供的应用于回放系统的快速数据处理装置的结构示意图;图5是本具体实施方式提供的回放系统的结构示意图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本具体实施方式提供了一种应用于回放系统的快速数据处理方法,如图I所示,包括步骤11,通过内存映射的方式遍历整个回放数据文件。具体的,本步骤中涉及的内存映射是由一个文件到一块内存的映射的过程。Win32提供了允许应用程序把文件映射到一个进程的函数(CreateFileMapping)。内存映射文件通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域,内存文件映射的物理存储器来自一个已经存在于磁盘上的文件,而且在对该文件进行操作之前必须首先对文件进行映射。使用内存映射文件处理存储于磁盘上的文件时,将不必再对文件执行I/o操作,使得内存映射文件在处理大数据量的文件时能起到相当重要的作用。遍历整个回放数据文件的过程如图2所示,包括a.获取整个文件长度Lw;b.初始化已读取文件总长度La=O ;c.初始化当前已映射文件读取长度Lp=O ;d.初始化一条记录的最大长度K; e.确定每次内存映射文件的长度Lm,Lm K( —条记录的最大长度);f.映射文件;g.如果La>=Lw,读取文件结束;h.如果Lp>=Lm-K ( 一条记录的最大长度)并且La+K〈Lw,重新映射剩余文件;i.读取一条回放记录,其长度为Lk ;j. La=La+Lk ;k. Lp=Lp+LK ;I.重复步骤e - i,直到整个回放数据文件的遍历完成。步骤12,建立时间与特定回放数据在回放数据文件中具体位置的动态索引。具体的,回放过程中操作人员会选择特定的时间点,要求系统从该时间点处开始回放,诸如通过拖动时间条或输入时间值等方式操作。本具体实施方式通过建立动态索引来快速响应操作人员的以上需求,索引在整个回放过程中只在出始化阶段建立一次。ATS/CTC系统的回放均以时间为基准,从某一时间点开始,以某种选定的速度连续回放历史信息至另一时间点。故可以利用时间点作为索引的关键字记录回放文件的具体位置,即建立时间(t)与特定回放数据(d)在文件中具体位置(P)的映射关系F(t,d)=p,;操作人员在对回放时间重新定位时(确定新的回放开始时间点),所输入的时间单位一般精确到分钟或秒级。为节省内存资源,本具体实施方式中建立的索引以秒为基础,根据系统的实际需求,对定位用的索引也可以更加精确或粗略。为达到系统对回放数据的快速定位,采用数组来建立内部动态索引,以数组的下标对应实际的时间值,数组的内容存储该时间值对应的第一条满足该时间点的回放数据在文件中的起始位置。这样24小时的数据也仅需一个24*60*60大小的数组即可建立一个完备的时间-位置的秒级索引。由于时间的向前流动性和文件记录的顺序型,映射函数F(t,d)为非递减函数,考虑到某些系统在一定时本文档来自技高网...
【技术保护点】
一种应用于回放系统的快速数据处理方法,其特征在于,包括:通过内存映射的方式遍历整个回放数据文件;建立时间与特定回放数据在所述回放数据文件中具体位置的动态索引;根据接收传入的时间参数结合所述映射关系对回放数据进行定位并回放。
【技术特征摘要】
1.一种应用于回放系统的快速数据处理方法,其特征在于,包括 通过内存映射的方式遍历整个回放数据文件; 建立时间与特定回放数据在所述回放数据文件中具体位置的动态索引; 根据接收传入的时间参数结合所述映射关系对回放数据进行定位并回放。2.根据权利要求I所述的应用于回放系统的快速数据处理方法,其特征在于,所述通过内存映射的方式遍历整个回放数据文件包括 获取整个回放数据文件的长度Lw,初始化以读取文件长度La=O,初始化当前已映射文件读取长度LP=0,初始化一条记录的最大长度K,确定每次内存映射文件的长度Lm ; 在读取文件的过程中,当La〈Lw时,若Lp>=Lm - K并且La+K〈Lw,则继续映射剩余文件,直到当La>=Lw时,读取文件结束。3.根据权利要求I所述的应用于回放系统的快速数据处理方法,其特征在于,所述建立时间与特定回放数据在所述回放数据文件中具体位置的动态索引包括 获取回放文件开始时间Tb和回放文件结束时间Te,计算所需动态空间Te-Tb ; 生成动态索引数组A,初始化动态数组内所有数据值为-1,同时根据开始时间记录数组偏移量P=Tb ; 读取一条回放记录,获取该回放记录的时间戳Ts,同时记录该条回放信息在文件中的起始位置H ; 计算该条记录对应的数组下标Is=Ts - P,如果A [Is] ==-1,则赋值A [Is] ==H,直至整个回放数据文件在所述动态数组中被赋值; 顺序从零开始遍历所述动态数组,如果A [O] =-1,则A [O] =0,如果A [n] =-1,则Α[η]=Α[η_1]。4.根据权利要求I所述的应用于回放系统的快速数据处理方法,其特征在于,所述根据接收传入的时间参数结合所述映射关系对回放数据进行定位包括 计算时间点T对应的所述动态数组的下标S=T-P ; 获取所述回放数据在文件中的起始位置H=A[S]; 利用内存映射文件的方式在所述起始位置H开始读取所述回放数据文件并进行回放显不O5.一种应用于回放系统的快速数据处理装置,其特征...
【专利技术属性】
技术研发人员:袁志明,许伟,应志鹏,宋鹏飞,魏博,杨洪权,张涛,秦宁,方力一,
申请(专利权)人:中国铁道科学研究院,中国铁道科学研究院通信信号研究所,北京市华铁信息技术开发总公司,北京锐驰国铁智能运输系统工程技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。