发明名称 一种面向高速列车实时监控的海量数据管理方法
摘要 本发明提出了一种面向高速列车实时监控的海量数据管理方法。该方法以分布式文件系统和关系数据库构成二级存储架构,其上层基于关系数据库建立面向里程触发的窗口数据管理机制,实现监控数据的组织;利用底层分布式文件系统实现海量数据的平衡存储管理。在这一基础上,结合对象动态耦合的存储模型实现数据的有序组织;同时,利用全局-局部属性传递管理的方式,针对列车建立里程累积触发,满足列车监控、分析的需求。本发明针对高速列车实时监控,提供了大数据背景下海量、跨专业数据管理的核心技术,在交通、物流、智慧城市等领域具有积极的应用价值。
申请公布号 CN105243140A 申请公布日期 2016.01.13
申请号 CN201510652571.8 申请日期 2015.10.10
申请人 中国科学院软件研究所 发明人 郭皓明;魏闫艳;郭黎敏;徐怀野;王之欣;田霂
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 北京君尚知识产权代理事务所(普通合伙) 11200 代理人 冯艺东
主权项 一种面向高速列车实时监控的海量数据管理方法,其步骤包括:第一步:基于分布式文件系统与关系数据库构建存储架构,利用关系数据库实现窗口数据的缓存管理,称为窗口缓存;利用分布式文件系统实现海量传感器采样数据的高性能存储,该分布式文件系统由一组存储节点{dataNode<sub>1</sub>,dataNode<sub>2</sub>,....dataNode<sub>n</sub>}构成;第二步:在分布式文件系统中,将一个传感器的全部数据分储在不同的存储节点dataNode中,每个dataNode的根目录下建立与传感器标识对应的目录,该目录下以文件的形式存储特定时段内该传感器的采样数据;第三步:对列车‑车厢‑传感器建立层次化的存储模型,不同层级对象之间建立动态组织信息模型以及全局与局部时空属性数据模型;第四步:在单点传感器数据增量过程中,接收传感器上报的采样数据data={value,time},该采样数据作为新增数据存储在关系数据库构造的缓存中,同时将其作为基础数据同步存储在分布式文件系统中;第五步:在第四步所描述的过程中,根据采样数据的时间time,获取其所对应的时间段,并进行哈希处理,获得该数据的时间分段标识timeKey:timeKey=HASH(getTimeSpan(time)),time∈data;其中getTimeSpan为获取时间分段标识操作;第六步:在第四步所描述的过程中,将分布式系统中的全部存储节点dataNode构成首尾相接的环,并将其做哈希处理,将获取的哈希值与第五步中所述的timeKey建立映射,以得到当前数据选择存储的节点dataNode;第七步:判断第六步得到的当前数据选择存储的节点dataNode中是否存在与当前传感器标识对应的目录,如果不存在则创建与该传感器标识对应的目录;第八步:在当前dataNode中传感器对应目录下寻找与当天timeKey名称一致的存储文件,如果不存在则创建该文件;第九步:将当前数据写入与timeKey对应的文件中,在写入的过程中按照时间排序;第十步:完成数据的文件存储同步,结束当前传感器采集数据的写入;第十一步:在列车GPS数据更新时,系统接收当前列车的GPS数据,并根据最后一次GPS数据计算增量时段内的累计里程数,完成其在全局属性表中的存储;第十二步:通过动态组织信息表获取当前列车编组信息,获取参与列车当前编组的全部车厢对象{carry<sub>1</sub>,carry<sub>2</sub>,....carry<sub>n</sub>};将当前列车GPS数据与这些车厢对象的局部时空属性表进行GPS数据更新,同时根据其加入编组时间以及最近一次属性GPS设计记录更新累计里程;第十三步:如果车厢carry<sub>i</sub>的累计里程达到触发阈值,则将该车厢的窗口状态设置为触发状态,提取其全部传感器{sensor<sub>1</sub>,sensor<sub>2</sub>,.....sensor<sub>m</sub>}在缓存中的数据打包,并清空缓存中的数据记录;第十四步:在第十三步中,如果sensor<sub>k</sub>是实时增量触发管理类型传感器,则从窗口缓存中提取其在当前里程窗口中的全部数据记录,并放置在中间缓存中,清除窗口缓存中该传感器的全部数据记录;第十五步:在第十三步中,如果sensor<sub>j</sub>是续传增量触发管理类型传感器,则将缓存中现有的数据记录打包;同时,将后续上传的数据进行分集处理,将后续上传数据中采样时间在当前里程窗口中的数据子集作为窗口数据与前述打包数据合并,放置在中间缓存中,其他数据作为新增量数据在窗口缓存中存储;同时,上述新增数据在分布式文件系统中同步;第十六步:当当前传感器车厢carry<sub>i</sub>的全部传感器数据完成窗口触发操作响应后,将打包的数据推送给业务分析系统,从而完成里程窗口触发操作。
地址 100190 北京市海淀区中关村南四街4号