[发明专利]一种任务切分方法、装置、介质及电子设备有效
申请号: | 201811387630.3 | 申请日: | 2018-11-21 |
公开(公告)号: | CN109597810B | 公开(公告)日: | 2021-11-09 |
发明(设计)人: | 段勇 | 申请(专利权)人: | 金色熊猫有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2452 |
代理公司: | 隆天知识产权代理有限公司 72003 | 代理人: | 郑特强;章侃铱 |
地址: | 中国香港铜锣湾希慎*** | 国省代码: | 香港;81 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 切分 方法 装置 介质 电子设备 | ||
1.一种任务切分方法,其特征在于,包括:
获取待切分的查询语言数据;
根据切分前后任务的依赖关系,按照实际需求将所述查询语言数据进行分类,以在数据层面上,将所述查询语言数据的列数据切分至至少两个数据表或数据库中,和/或,按照预设规则,将所述查询语言数据的行数据切分至至少两个数据表或数据库中,以获得至少两个查询语言子数据;
基于所述查询语言子数据,生成对应数量的查询任务,并整合所述查询任务,生成查询任务列表;
输出所述查询任务列表,以用于任务管理器执行数据查询任务时,将所述查询任务列表中经垂直切分和/或水平切分后的查询任务进行优先排序。
2.根据权利要求1所述的任务切分方法,其特征在于,所述对所述查询语言数据进行垂直切分和/或水平切分之后,包括:
通过预设的主键规则生成主键,将垂直切分后所获得的查询语言子数据进行关联;
通过预设的拆分标识位,将水平切分后所获得的查询语言子数据进行关联。
3.一种数据查询方法,其特征在于,包括:
接收到查询任务列表后,将所述查询任务列表中经垂直切分和/或水平切分后的查询任务进行优先排序,获得排序后的查询任务列表,所述垂直切分和/或水平切分的切分方式由所述查询任务列表中待切分的前后任务的依赖关系确定,其中,所述垂直切分是指按照实际需求将所述查询语言数据进行分类,以在数据层面上,将所述查询语言数据的列数据切分至至少两个数据表或数据库中,所述水平切分是指按照预设规则,将所述查询语言数据的行数据切分至至少两个数据表或数据库中;
在所述排序后的查询任务列表中识别出垂直分割后的查询任务,根据预设的数据分片数量并行执行所述垂直分割后的查询任务;以及
在所述查询任务列表中识别出水平分割后的查询任务,根据预设的计算逻辑依次执行所述水平分割后的查询任务,其中,所述查询任务列表用于任务管理器执行数据查询任务时,将所述查询任务列表中经垂直切分和/或水平切分后的查询任务进行优先排序;
从数据源并行读取目标数据,获得包含有所述目标数据的查询结果;
输出所述查询结果。
4.根据权利要求3所述的数据查询方法,其特征在于,所述并行读取目标数据,包括:
当所述数据源为ES数据库时,同时从各个数据分片中读取目标数据;
当所述数据源为MangoDB数据库时,同时从各个数据主分片中读取目标数据。
5.根据权利要求3所述的数据查询方法,其特征在于,所述输出所述查询结果,包括:将所述查询结果写入NoSQL数据库。
6.一种任务切分单元,其特征在于,包括:
拆分模块,用于获取待切分的查询语言数据;根据切分前后任务的依赖关系,按照实际需求将所述查询语言数据进行分类,以在数据层面上,将所述查询语言数据的列数据切分至至少两个数据表或数据库中,和/或,按照预设规则,将所述查询语言数据的行数据切分至至少两个数据表或数据库中,以获得至少两个查询语言子数据;
生成模块,用于基于所述查询语言子数据,生成对应数量的查询任务,并整合所述查询任务,生成查询任务列表;
发送模块,用于输出所述查询任务列表,以用于任务管理器执行数据查询任务时,将所述查询任务列表中经垂直切分和/或水平切分后的查询任务进行优先排序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于金色熊猫有限公司,未经金色熊猫有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811387630.3/1.html,转载请声明来源钻瓜专利网。