本发明专利技术公开一种海量定位数据存储方法,包括:(1)信息接入模块接收不同的定位数据源发送过来的异构定位数据,先将数据放在接收数据队列中;(2)数据处理模块从接收数据队列中取出数据,根据不同的数据类型分别解析,再封装成sql脚本语言放进数据存储队列中;(3)由数据存储模块从存储队列中将脚本语言取出再存入数据库中。各模块均以多进程方式同步运行。本发明专利技术采用多线程的方法,无需等待一条数据接收、解析、存储完了再来接收另一条数据,提高了接收海量数据的效率。
【技术实现步骤摘要】
【专利摘要】本专利技术公开,包括:(1)信息接入模块接收不同的定位数据源发送过来的异构定位数据,先将数据放在接收数据队列中;(2)数据处理模块从接收数据队列中取出数据,根据不同的数据类型分别解析,再封装成sql脚本语言放进数据存储队列中;(3)由数据存储模块从存储队列中将脚本语言取出再存入数据库中。各模块均以多进程方式同步运行。本专利技术采用多线程的方法,无需等待一条数据接收、解析、存储完了再来接收另一条数据,提高了接收海量数据的效率。【专利说明】
本专利技术涉及一种数据库数据处理与存储方法,尤其是对多种不同格式的异构数据 进行统一处理与存储方法。
技术介绍
海量异构数据的存储往往面临数据格式不统一,数据量太大造成处理延时的问 题。现有方法是对各类数据分别解析,串行处理数据接收、解析及存储过程。数据只能处理 完一条再处理另一条,这样,面对海量数据时就会由于数据处理速度小于发送过来的速度 导致接入缓存增大,服务无法长时间稳定运行。 对于城市交管、公安等部门,需实时监控运营车辆及警员、警车的定位信息,定位 信息是不断变化的,数据格式不一致,且数据量庞大,采用传统的数据存储方式显然已经不 能满足业务需求。
技术实现思路
本专利技术的目的在于提出,它运行在非特定的PC服务 器集群上,可以处理海量异构数据,适合在系统大量实时数据插入的同时,进行更新与查 询。 本专利技术的技术方案如下: -种海量定位数据存储方法,其特征在于: (1)信息接入模块接收不同的定位数据源发送过来的异构定位数据,先将数据放 在接收数据队列中; (2)数据处理模块从接收数据队列中取出数据,根据不同的数据类型分别解析,再 封装成sql脚本语言放进数据存储队列中; (3)由数据存储模块从存储队列中将脚本语言取出再存入数据库中。 上述所述信息接入模块、数据处理模块及数据存储模块均以多进程方式同步运 行。 所述多进程包括一个主进程和多个子进程,主进程负责子进程管理、子进程调度、 TCP监听管理、TCP连接管理,是通用网络接入子系统的控制中心;子进程负责读入数据、送 出数据,以及作为客户方向其它程序请求建立连接;父子进程之间有流管道连接,用来传递 文件描述符。 上述步骤(1)中,信息接入模块先向各定位数据源发送连接请求,连接成功后请 求定位数据,并将发送过来的数据放入接收数据队列中。 所述步骤(2)中,所述数据处理模块包括数据过滤模块和数据分析处理模块,数 据过滤模块先过滤无效的数据,然后由数据分析处理模块根据不同的协议对异构数据进行 解析及转换,并封装成sql脚本语句。 本专利技术提出了一种通过服务器中间件实现海量定位数据的存储的方法。通过消息 服务来接受、传递、转发消息,克服了 XML文件转换方式的低效性,具有高速度的运算能力、 运行稳定、强大的数据吞吐能力。 本专利技术采用多线程的方法,无需等待一条数据接收、解析、存储完了再来接收另一 条数据,提高了接收海量数据的效率,消除传统ETL逐条处理的弊端。通过协议解析将异构 定位数据进行了类型、格式转换,封装成sql脚本语言。本专利技术增加了安全认证,系统以数 据请求者的身份向数据发送方发送登录及数据请求,通过认证后才能获取定位数据,符合 公安领域对定位数据保密的要求。 【专利附图】【附图说明】 图1是本专利技术的系统模块结构图 图2是本专利技术一种实施例的处理流程图 【具体实施方式】 如图1所示,本专利技术的海量定位数据存储系统,包括数据接入层,该层有数据接入 模块;数据处理层,该层有数据处理模块,所述数据处理模块包括数据过滤模块和数据分析 处理模块;数据存储层,该层有数据存储模块。 本专利技术存储海量定位数据的方法是: (1)定位前端1到η采集各种定位数据。信息接入模块接收各定位前端发送过来 的异构定位数据,先将数据放在接收数据队列中; (2)数据处理模块从接收数据队列中取出数据,根据不同的数据类型分别解析,再 封装成sql脚本语言放进数据存储队列中; (3)由数据存储模块从存储队列中将脚本语言取出再存入数据库中。 上述所述信息接入模块、数据处理模块及数据存储模块均以多进程方式同步运 行。 所述多进程包括一个主进程和多个子进程,主进程负责子进程管理、子进程调度、 TCP监听管理、TCP连接管理,是通用网络接入子系统的控制中心;子进程负责读入数据、送 出数据,以及作为客户方向其它程序请求建立连接;父子进程之间有流管道连接,用来传递 文件描述符,这是主子之间交互信息的唯一方式。 上述步骤⑴中,信息接入模块通过多进程先向各定位数据源即定位前端1到η 发送连接请求,连接成功后请求发送定位数据,并将定位前端发送过来的数据放入接收数 据队列中。 上述步骤(2)中,所述数据处理模块包括数据过滤模块和数据分析处理模块,数 据过滤模块先过滤无效的数据,然后由数据分析处理模块根据不同的协议对异构数据进行 解析及转换,并封装成sql脚本语句。 上述步骤(3)中,由数据存储模块通过多进程从存储队列中将脚本语言取出再存 入数据库中。 图2是本专利技术一种实施例的处理流程图。如图2所示,系统通过多个进程,分别由 定位服务1对象到定位服务η对象,向多个定位数据源定位信息1到n,发送定位数据请求, 并分别将获得的定位数据放到定位信息队列中;数据处理模块对队列中的信息进行处理, 先过滤掉无效的数据,然后根据不同的协议对异构数据进行解析及转换,并封装成sql脚 本语句;数据存储模块从队列获取数据信息,并通过多个同步进程,分别由定位存储1对象 到定位存储η对象负责将打包的包含报警信息的sql语句存入oracle数据库。【权利要求】1. ,其特征在于: (1) 信息接入模块接收不同的定位数据源发送过来的异构定位数据,先将数据放在接 收数据队列中; (2) 数据处理模块从接收数据队列中取出数据,根据不同的数据类型分别解析,再封装 成sql脚本语言放进数据存储队列中; (3) 由数据存储模块从存储队列中将脚本语言取出再存入数据库中。2. 根据权利要求1所述的海量定位数据存储方法,其特征在于:所述信息接入模块、数 据处理模块及数据存储模块均以多进程方式同步运行。3. 根据权利要求2所述的的海量定位数据存储方法,其特征在于:所述多进程包括一 个主进程和多个子进程,主进程负责子进程管理、子进程调度、TCP监听管理、TCP连接管 理,是通用网络接入子系统的控制中心;子进程负责读入数据、送出数据,以及作为客户方 向其它程序请求建立连接;父子进程之间有流管道连接,用来传递文件描述符。4. 根据权利要求3所述的海量定位数据存储方法,其特征在于:所述步骤(1)中,信息 接入模块先向各定位数据源发送连接请求,连接成功后请求定位数据,并将发送过来的数 据放入接收数据队列中。5. 根据权利要求2所述的海量定位数据存储方法,其特征在于:所述步骤(2)中,所述 数据处理模块包括数据过滤模块和数据分析处理模块,数据过滤模块先过滤无效的数据, 然后由数据分析处理模块根据不同的协议对异构数据进行解析及转换,并封装成sql脚本 语句。【文档编号】G06F17/30本文档来自技高网...
【技术保护点】
一种海量定位数据存储方法,其特征在于:(1)信息接入模块接收不同的定位数据源发送过来的异构定位数据,先将数据放在接收数据队列中;(2)数据处理模块从接收数据队列中取出数据,根据不同的数据类型分别解析,再封装成sql脚本语言放进数据存储队列中;(3)由数据存储模块从存储队列中将脚本语言取出再存入数据库中。
【技术特征摘要】
【专利技术属性】
技术研发人员:陈学钊,
申请(专利权)人:北京航天长峰科技工业集团有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。