[发明专利]实时流数据的存储方法及装置在审
申请号: | 201710224721.4 | 申请日: | 2017-04-07 |
公开(公告)号: | CN108694187A | 公开(公告)日: | 2018-10-23 |
发明(设计)人: | 胡信 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京鼎佳达知识产权代理事务所(普通合伙) 11348 | 代理人: | 王伟锋;刘铁生 |
地址: | 100086 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实时流 解析结果 存储 数据条 信息处理技术 分布式数据 查询操作 查询系统 查询性能 查询引擎 实时系统 预设数据 条数 解析 写入 访问 | ||
本发明公开了一种实时流数据的存储方法及装置,涉及信息处理技术领域,主要目的是解决由实时系统传来的一条条数据所产生大量的parquet文件,会导致查询系统在进行查询操作时,访问所有的parquet文件,影响查询性能的问题。技术方案包括:接收实时流数据;对所述实时流数据进行解析,得到解析结果;根据所述解析结果,确定所述实时流数据的数据条数;判断所述实时流数据的数据条数是否达到预设数据条数;如果是,则将所述实时流数据的解析结果写入分布式数据查询引擎。主要用于实时流数据的存储。
技术领域
本发明涉及信息处理技术领域,尤其涉及一种实时流数据的存储方法及装置。
背景技术
随着信息处理逐渐向大数据处理方向发展,一种适用于大数据查询的新的分布式数据查询引擎Impala已经进入人们的视野。Impala可以提供结构化查询语言结构SQL的定义,并且在实时获取到的数据流经过解析后,能够将实时数据存储在Impala中。
目前,现有的在实时系统传来数据流时,每传来一条数据,就会将数据存储进Impala中,并生成这条数据的parquet文件,依次地,每当传来一条数据进行存储后就会产生一个parquet文件,由实时系统传来的一条条数据所产生大量的parquet文件,会导致查询系统在进行查询操作时,访问所有的parquet文件,影响查询性能,从而降低查询的效率。
发明内容
鉴于上述问题,提出了本发明以便提供一种实时流数据的存储方法及装置,主要目的是解决由实时系统传来的一条条数据所产生大量的parquet文件,会导致查询系统在进行查询操作时,访问所有的parquet文件,影响查询性能的问题。
借由上述技术方案,本发明提供的一种实时流数据的存储方法,包括:
接收实时流数据;
对所述实时流数据进行解析,得到解析结果;
根据所述解析结果,确定所述实时流数据的数据条数;
判断所述实时流数据的数据条数是否达到预设数据条数;
如果是,则将所述实时流数据的解析结果写入分布式数据查询引擎。
进一步地,所述判断所述实时流数据的数据条数未达到预设数据条数之后,所述方法还包括:
判断首次接收到所述实时流数据的时间到当前时间所经过的时间是否达到预设时间间隔,或者,判断自上次数据写入所述分布式数据查询引擎的时间到当前时间所经过的时间是否达到预设时间间隔;
如果是,则将所述实时流数据的解析结果写入分布式数据查询引擎。
进一步地,所述方法还包括:
采用第一线程执行所述判断所述实时流数据的数据条数是否达到预设数据条数,以及所述判断首次接收到所述实时流数据的时间点到当前时间所经过的时间是否达到预设时间间隔,或者,判断自上次数据写入所述分布式数据查询引擎的时间到当前时间所经过的时间是否达到预设时间间隔的步骤;
采用与所述第一线程独立的第二线程执行将所述实时流数据的解析结果写入分布式数据查询引擎的步骤。
进一步地,在判断所述实时流数据的数据条数是否达到预设数据条数之前,所述方法还包括:
在与所述第一线程、所述第二线程分别独立的第三线程中配置所述预设数据条数,以及在与所述第一线程、所述第二线程、所述第三线程分别独立的第四线程中配置所述预设时间间隔。
进一步地,在对所述实时流数据进行解析,得到解析结果后,所述方法还包括:
将所述解析结果存储进预设缓存中;
根据所述解析结果,确定所述实时流数据的数据条数包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710224721.4/2.html,转载请声明来源钻瓜专利网。