数据存储及数据查询方法、装置、设备、介质制造方法及图纸

技术编号:24206005 阅读:16 留言:0更新日期:2020-05-20 14:41
本发明专利技术提供一种数据存储及数据查询方法、装置、设备、介质,该方法应用于电子设备,包括:依据目标时间戳确定需存储的目标数据所处的目标时间区间;将所述目标时间区间发送至本设备加载的spark引擎,以由所述spark引擎依据所述目标时间区间从spark数据文件中获取目标数据并将所述目标数据转换为目标弹性分布式数据集RDD;从所述spark引擎获取目标RDD,并将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中。解决因无法针对感兴趣时间段的数据进行操作而导致的操作效率低的问题。

Data storage and data query methods, devices, equipment and media

【技术实现步骤摘要】
数据存储及数据查询方法、装置、设备、介质
本专利技术涉及分布式数据处理
,尤其涉及的是一种数据存储及数据查询方法、装置、设备、介质。
技术介绍
Spark是一种快速通用的分布式计算引擎。SparkStreaming是Spark核心API的扩展,用于可伸缩、高吞吐量、可容错地处理在线流数据,SparkStreaming可从数据源中实时批量获取数据,获取的这些数据记录在spark数据文件中。为了便于数据查询等操作,需要对spark数据文件中的数据进行相应处理及存储。相关的数据存储方式中,spark引擎利用自身固定的逻辑执行方式来实现数据存储,具体是,spark引擎从spark数据文件中读取处于指定时间窗口内的数据,再对这些数据进行存储等操作。由于spark引擎只能一次性读取处于指定时间窗口内的数据,数据量很大甚至会出现大小超过几十GB的情形,无法针对感兴趣时间段的数据进行操作,导致操作效率低的问题。
技术实现思路
有鉴于此,本专利技术提供一种数据存储及数据查询方法、装置、设备、介质,解决因无法针对感兴趣时间段的数据进行操作而导致的操作效率低的问题。本专利技术第一方面提供一种数据存储方法,该方法应用于电子设备,包括:依据目标时间戳确定需存储的目标数据所处的目标时间区间;将所述目标时间区间发送至本设备加载的spark引擎,以由所述spark引擎依据所述目标时间区间从spark数据文件中获取目标数据并将所述目标数据转换为目标弹性分布式数据集RDD;从所述spark引擎获取目标RDD,并将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中。根据本专利技术的一个实施例,所述目标时间戳包括至少一个字段;所述目标时间戳的指定字段上的时间取值与第一设定时间T1进行取模运算得到的取模结果等于设定数值K。根据本专利技术的一个实施例,所述目标时间戳是由外部设备输入至所述电子设备;或者,所述目标时间戳是从所述spark数据文件每次新写入的数据的最大时间戳中确定出的;或者,所述目标时间戳是从所述电子设备在所述spark数据文件每次新写入数据时的系统时间戳中确定出的。根据本专利技术的一个实施例,所述依据目标时间戳确定需存储的目标数据所处的目标时间区间包括:将在所述目标时间戳之前、且与所述目标时间戳相差第二设定时间T2的时间戳作为起始时间戳;将从所述起始时间戳开始的一段指定时间段作为所述目标时间区间。根据本专利技术的一个实施例,将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中,包括:对所述目标RDD中的数据进行聚合处理;将聚合处理后的目标RDD存储到所述spark引擎对应的RDD缓存空间中。根据本专利技术的一个实施例,在将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中进一步包括:将与所述目标RDD相关的关联参数记录至预设的RDD关联表中;其中,所述关联参数至少包括所述目标时间戳、所述目标RDD在所述RDD缓存空间中的存储位置。本专利技术第二方面提供一种数据查询方法,该方法应用于电子设备,包括:当收到由外部输入的查询指令时,按照所述查询指令的指示在本设备预设的RDD关联表中查询目标时间戳,并确定与目标时间戳对应的存储位置;依据所述存储位置从本设备已加载的spark引擎所对应的RDD缓存空间中获取目标RDD;将获取到的目标RDD按照指定格式记录至预设的查询结果表中;其中,所述RDD关联表中记录了与已存入至所述RDD缓存空间中的RDD相关的关联参数,所述关联参数至少包括RDD的时间戳、及RDD在所述RDD缓存空间中的存储位置。本专利技术第三方面提供一种数据存储装置,该装置应用于电子设备,包括:区间确定模块,用于依据目标时间戳确定需存储的目标数据所处的目标时间区间;数据确定模块,用于将所述目标时间区间发送至本设备加载的spark引擎,以由所述spark引擎依据所述目标时间区间从spark数据文件中获取目标数据并将所述目标数据转换为目标弹性分布式数据集RDD;RDD存储模块,从所述spark引擎获取目标RDD,并将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中。根据本专利技术的一个实施例,所述目标时间戳包括至少一个字段;所述目标时间戳的指定字段上的时间取值与第一设定时间T0进行取模运算得到的取模结果等于设定数值K。根据本专利技术的一个实施例,所述目标时间戳是由外部设备输入至所述电子设备;或者,所述目标时间戳是从所述spark数据文件每次新写入的数据的最大时间戳中确定出的;或者,所述目标时间戳是从所述电子设备在所述spark数据文件每次新写入数据时的系统时间戳中确定出的。根据本专利技术的一个实施例,所述区间确定模块包括:起始时间戳确定单元,用于将在所述目标时间戳之前、且与所述目标时间戳相差第二设定时间T2的时间戳作为起始时间戳;目标时间区间确定单元,用于将从所述起始时间戳开始的一段指定时间段T3作为所述目标时间区间。根据本专利技术的一个实施例,所述RDD存储模块包括:聚合处理单元,用于对所述目标RDD中的数据进行聚合处理;数据存储单元,用于将聚合处理后的目标RDD存储到所述spark引擎对应的RDD缓存空间中。根据本专利技术的一个实施例,所述RDD存储模块进一步用于:将与所述目标RDD相关的关联参数记录至预设的RDD关联表中;其中,所述关联参数至少包括所述目标时间戳、所述目标RDD在所述RDD缓存空间中的存储位置。本专利技术第四方面提供一种数据查询装置,该装置应用于电子设备,包括:查询模块,用于当收到由外部输入的查询指令时,按照所述查询指令的指示在本设备预设的RDD关联表中查询目标时间戳,并确定与目标时间戳对应的存储位置;获取模块,用于依据所述存储位置从本设备已加载的spark引擎所对应的RDD缓存空间中获取目标RDD;记录模块,用于将获取到的目标RDD按照指定格式记录至预设的查询结果表中;其中,所述RDD关联表中记录了与已存入至所述RDD缓存空间中的RDD相关的关联参数,所述关联参数至少包括RDD的时间戳、及RDD在所述RDD缓存空间中的存储位置。本专利技术第五方面提供一种电子设备,包括处理器及存储器;所述存储器存储有可被处理器调用的程序;其中,所述处理器执行所述程序时,实现如前述实施例中所述的数据存储方法、或数据查询方法。本专利技术第六方面提供一种机器可读存储介质,其上存储有程序,该程序被处理器执行时,实现如前述实施例中所述的数据存储方法、或数据查询方法。本专利技术实施例具有以下有益效果:本专利技术实施例中,可以依据目标时间戳来确定需存储的目标数据所处的目标时间区间,实现感兴趣目标时间区间的自定义,并利用spark引擎从spark数据文件中获取处于目标时间区间内的目标数据,可针对sp本文档来自技高网...

【技术保护点】
1.一种数据存储方法,其特征在于,该方法应用于电子设备,包括:/n依据目标时间戳确定需存储的目标数据所处的目标时间区间;/n将所述目标时间区间发送至本设备加载的spark引擎,以由所述spark引擎依据所述目标时间区间从spark数据文件中获取目标数据并将所述目标数据转换为目标弹性分布式数据集RDD;/n从所述spark引擎获取目标RDD,并将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中。/n

【技术特征摘要】
1.一种数据存储方法,其特征在于,该方法应用于电子设备,包括:
依据目标时间戳确定需存储的目标数据所处的目标时间区间;
将所述目标时间区间发送至本设备加载的spark引擎,以由所述spark引擎依据所述目标时间区间从spark数据文件中获取目标数据并将所述目标数据转换为目标弹性分布式数据集RDD;
从所述spark引擎获取目标RDD,并将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中。


2.如权利要求1所述的数据存储方法,其特征在于,所述目标时间戳包括至少一个字段;
所述目标时间戳的指定字段上的时间取值与第一设定时间T1进行取模运算得到的取模结果等于设定数值K。


3.如权利要求2所述的数据存储方法,其特征在于,所述目标时间戳是由外部设备输入至所述电子设备;或者,
所述目标时间戳是从所述spark数据文件每次新写入的数据的最大时间戳中确定出的;或者,
所述目标时间戳是从所述电子设备在所述spark数据文件每次新写入数据时的系统时间戳中确定出的。


4.如权利要求1所述的数据存储方法,其特征在于,所述依据目标时间戳确定需存储的目标数据所处的目标时间区间包括:
将在所述目标时间戳之前、且与所述目标时间戳相差第二设定时间T2的时间戳作为起始时间戳;
将从所述起始时间戳开始的一段指定时间段作为所述目标时间区间。


5.如权利要求1所述的数据存储方法,其特征在于,将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中,包括:
对所述目标RDD中的数据进行聚合处理;
将聚合处理后的目标RDD存储到所述spark引擎对应的RDD缓存空间中。


6.如权利要求1所述的数据存储方法,其特征在于,在将所述目标RDD存储到所述spark引擎对应的RDD缓存空间中进一步包括:
将与所述目标RDD相关的关联参数记录至预设的RDD关联表中;
其中,所述关联参数至少包括所述目标时间戳、所述目标RDD在所述RDD缓存空间中的存储位置。


7.一种数据查询方法,其特征在于,该方法应用于电子设备,包括:
当收到由外部输入的查询指令时,按照所述查询指令的指示在本设备预设的RDD关联表中查询目标时间戳,并确定与目标时间戳对应的存储位置;
依据所述存储位置从本设备已加载的spark引擎所对应的RDD缓存空间中获取目标RDD;
将获取到的目标RDD按照指定格式记录至预设的查询结果表中;
其中,所述RDD关联表中记录了与已存入至所述RDD缓存空间中的RDD相关的关联参数,所述关联参数至少包括RDD的时间戳、及RDD在所述RDD缓存空间中的存储位置。


8.一种数据存储装置,其特征在于,该装置应用于电子设备,包括:
区间确定模块,用于依据目标时间戳确定需存储的目标数据所处的目标时间区间;
数据确定模块,用于将所述目标时间区间发送至本设备加载的spark引擎,以由所...

【专利技术属性】
技术研发人员:李森郭峰陈小龙
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1