System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于数据处理,具体涉及一种加速农业大规模时序数据查询的方法、装置、设备及介质。
技术介绍
1、随着农业及互联网技术的发展,从农业生产到农产品加工、仓储、物流运输以及销售的各个环节均可通过农业互联网平台进行统筹管理。农业互联网平台可对接各作为农业参与主体的用户,进行农产生产过程管理、农产品加工过程管理、农产品运输过程管理、农产品交易管理、以及农产品溯源管理,在管理过程中会产生大量的数据,这些数据通常以时序进行存储,称为农业时序数据。
2、农业互联网平台为存储的农业时序数据进行保存的同时,还提供给各用户进行查询,以进一步进行数据分析,因此数据查询速度是关系到数据分析质量的关键因素。常用的数据分析前的查询加速方法主要有以下几种:一是缓存,通过将数据从慢存储介质缓存到快存储介质,例如内存中,可以在分析数据过程中获得更快的数据读取响应,从而实现加速效果。二是并行计算和分布式计算方式,将多个计算任务分解为多个子任务并行处理,重复利用计算资源,提高分析查询的速度和效率。三是数据分区和索引,检索查询时需要扫描和分析的数据量,从而达到加速的效果。
3、但随着农业时序数据的增加,以上方式均不能满足数据分析的查询速度要求,现有的物化视图方式可以提前对数据进行计算和聚合,并将结果进行雾化存储,使得查询时直接使用计算好的结果进行加速。虽然使用物化视图进行预计算可以一定程度上加速数据查询速度,但由于农业互联网平台的农业时序数据的更新速度非常快,物化结果会随着新的农业时序数据的产生而失效,而使用农业时序数据进行全量更新相当费
4、因此,针对上述缺陷,提供一种加速农业大规模时序数据查询的方法、装置、设备及介质,是非常有必要的。
技术实现思路
1、针对上述农业时序数据的查询时数据分析的关键,现有的加速数据查询方式不能满足农业时序数据的增长,而物化数据虽然可以一定程度上加速数据查询,但快速增长的农业时序数据进行物化数据的更新十分费时的缺陷,本专利技术提供一种加速农业大规模时序数据查询的方法、装置、设备及介质,以解决上述技术问题。
2、第一方面,本专利技术提供一种加速农业大规模时序数据查询的方法,包括如下步骤:
3、s1.对原始农业时序数据进行数据分片,对每个数据分片进行预计算得到物化分片,将每个物化分片按照查询精度进行时间分桶,保存数据分片及完成时间分桶的各物化分片;
4、s2.以事件驱动方式捕捉原始农业时序数据的各数据分片进行预计算的条件,并在某个数据分片满足预计算条件时,启动预计算,再根据时间分桶将计算结果更新到物化分片;
5、s 3.获取数据查询的查询时间窗,将查询时间窗与数据分片、物化分片以及时间分桶进行比对,确定完全落入查询时间窗内的物化分片、时间分桶的数据作为第一数据,确定部分落入查询时间窗的时间分桶的数据作为的第二数据及未落盘的数据为第三数据,对第二数据从数据分片查询后与第三数据进行聚合,再与第一数据合并后输出。
6、进一步地,步骤s1具体步骤如下:
7、s11.获取原始农业时序数据;
8、s12.确定分片参数,使用自动时间分片算法对原始农业时序数据进行分片,得到若干数据分片,根据数据分片配置信息生成元数据,对数据分片及元数据进行保存;
9、s13.将在农业时序数据查询的操作中查询次数超过设定阈值的操作项作为预计算,在每个数据分片进行预计算得到物化分片,保存物化分片;
10、s14.确定查询时间精度,将每个物化分片按照查询时间精度进行时间分桶。
11、进一步地,分片参数包括分片的开始时间、结束时间、分片的最大时间间隔以及分片字段。
12、进一步地,步骤s2具体步骤如下:
13、s21.预先为原始农业时序数据的各数据分片确定预计算触发条件,以及创建事件队列;
14、s22.判断各数据分片是否满足预计算触发条件;
15、若是,进入步骤s24;
16、若否,进入步骤s23;
17、s23.等待设定时间段,返回步骤s22;
18、s24.将满足触发条件数据分片启动预计算请求保存到事件队列;
19、s25.事件队列按照先进先出的顺序为各数据分片启动预计算,按照分桶时间将数据分片中数据更新到对应物化分片,同时更新元数据。
20、进一步地,步骤s21中确定预计算的触发条件为数据分片存在新数据或达到设定的预计算设定周期。
21、进一步地,步骤s 3具体步骤如下:
22、s 31.获取农业时序数据查询请求并解析,得到请求数据配置信息及查询时间窗;
23、s 32.将数据请求配置信息与元数据进行比对确定相关联数据分片及物化分片;
24、s 33.将查询时间窗与相关联的物化分片及数据分片进行比对,确定落入查询时间窗内的第一物化分片、后端部分落入查询时间窗的第二物化分片以及前端未落盘的数据;
25、s 34.将查询时间窗与后端部分落入时间窗的第二物化分片数据的时间分桶进行比对,确定落入查询时间窗内的完整时间分桶数据以及剩余的散落数据;
26、s 35.从数据分片查询散落数据,从内存查询前端未落盘的数据,并对查询到的散落数据和前端未落盘数据进行与预计算等同的聚合;
27、s 36.将第一物化分片数据、完整时间分桶数据与完成聚合的散落数据及前端未落盘数据进行合并后输出给数据分析使用。
28、进一步地,步骤s 34具体步骤如下:
29、s 341.获取部分落入查询时间窗的第二物化分片的所有时间分桶;
30、s 342.将查询时间窗与第二物化分片的时间分桶进行比对,设定完全录入的查询时间窗的时间分桶数据为完整时间分桶数据,而将部分落入查询时间窗的时间分桶数据作为散落数据。
31、第二方面,本专利技术提供一种加速农业大规模时序数据查询的装置,包括:
32、数据物化分片及分桶模块,用于对原始农业时序数据进行数据分片,对每个数据分片进行预计算得到物化分片,将每个物化分片按照查询精度进行时间分桶,保存数据分片及完成时间分桶的各物化分片;
33、预计算驱动模块,用于以事件驱动方式捕捉原始农业时序数据的各数据分片进行预计算的条件,并在某个数据分片满足预计算条件时,启动预计算,再根据时间分桶将计算结果更新到物化分片;
34、数据查询模块,用于获取数据查询的查询时间窗,将查询时间窗与数据分片、物化分片以及时间分桶进行比对,确定完全落入查询时间窗内的物化分片、时间分桶的数据作为第一数据,确定部分落入查询时间窗的时间分桶的数据作为的第二数据及未落盘的数据为第三数据,对第二数据从数据分片查询后与第三数据进行聚合,再与第一数据合并后输出。
35、进一步地,数据物化分片及分桶模块包括:
36、原始农业时序数据获取单元,用于获取原始农业时序数据本文档来自技高网...
【技术保护点】
1.一种加速农业大规模时序数据查询的方法,其特征在于,包括如下步骤:
2.如权利要求1所述的加速农业大规模时序数据查询的方法,其特征在于,步骤S1具体步骤如下:
3.如权利要求2所述的加速农业大规模时序数据查询的方法,其特征在于,分片参数包括分片的开始时间、结束时间、分片的最大时间间隔以及分片字段。
4.如权利要求2所述的加速农业大规模时序数据查询的方法,其特征在于,步骤S2具体步骤如下:
5.如权利要求4所述的加速农业大规模时序数据查询的方法,其特征在于,步骤S21中确定预计算的触发条件为数据分片存在新数据或达到设定的预计算设定周期。
6.如权利要求1所述的加速农业大规模时序数据查询的方法,其特征在于,步骤S3具体步骤如下:
7.如权利要求6所述的加速农业大规模时序数据查询的方法,其特征在于,步骤S34具体步骤如下:
8.一种加速农业大规模时序数据查询的装置,其特征在于,包括:
9.一种计算机设备,其特征在于,包括处理器和存储器;
10.一种存储介质,其特征在于,
【技术特征摘要】
1.一种加速农业大规模时序数据查询的方法,其特征在于,包括如下步骤:
2.如权利要求1所述的加速农业大规模时序数据查询的方法,其特征在于,步骤s1具体步骤如下:
3.如权利要求2所述的加速农业大规模时序数据查询的方法,其特征在于,分片参数包括分片的开始时间、结束时间、分片的最大时间间隔以及分片字段。
4.如权利要求2所述的加速农业大规模时序数据查询的方法,其特征在于,步骤s2具体步骤如下:
5.如权利要求4所述的加速农业大规模时序数据查询的方...
【专利技术属性】
技术研发人员:张健,张厚森,
申请(专利权)人:浪潮山东农业互联网有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。