【技术实现步骤摘要】
本专利技术属于大规模数据处理
,尤其涉及数据聚合查询方法及装置。
技术介绍
在数据库集群中,聚合查询是数据查询与分析的主要手段之一。数据库集群的查询涉及到数据库集群中的多个节点。现有的对数据库集群进行聚合查询的方式将分布在多个节点的数据汇聚到主节点后,由主节点执行聚合查询。现有的数据聚合查询的方式在将多个节点的数据汇聚到主节点的过程中需要传输大量数据,网络开销很大。此外,现有的数据聚合查询的方式仅由主节点对大量数据进行聚合查询,数据聚合查询的执行受到主节点的数据处理能力的限制,导致现有的数据聚合查询的效率较低。
技术实现思路
鉴于此,本专利技术实施例提供了一种数据聚合查询的方法及装置,以解决现有的数据聚合查询的网络开销较大且效率较低的问题。第一方面,本专利技术实施例提供了一种数据聚合查询的方法,包括:当接收到针对数据库集群的查询请求时,确定所述查询请求对应的哈希表,并确定所述哈希表对应的多个分区表,多个所述分区表在所述数据库集群中相关联;根据所述查询请求确定每个所述分区表对应的查询条件,并根据每个所述分区表对应的查询条件生成MapReduce查询任务;通过HadoopYarn框架中的调度节点根据所述MapReduce查询任务确定多个子任务,并将多个所述子任务分配到多个计算节点;通过多个所述计算节点执行多个所述子任务,得到多个计算结果,并通过多个所述计算节点将多个所 ...
【技术保护点】
一种数据聚合查询的方法,其特征在于,包括:当接收到针对数据库集群的查询请求时,确定所述查询请求对应的哈希表,并确定所述哈希表对应的多个分区表,多个所述分区表在所述数据库集群中相关联;根据所述查询请求确定每个所述分区表对应的查询条件,并根据每个所述分区表对应的查询条件生成MapReduce查询任务;通过Hadoop Yarn框架中的调度节点根据所述MapReduce查询任务确定多个子任务,并将多个所述子任务分配到多个计算节点;通过多个所述计算节点执行多个所述子任务,得到多个计算结果,并通过多个所述计算节点将多个所述计算结果反馈给所述调度节点;通过所述调度节点对多个所述计算结果进行化简,得到所述查询请求对应的查询结果。
【技术特征摘要】
1.一种数据聚合查询的方法,其特征在于,包括:
当接收到针对数据库集群的查询请求时,确定所述查询请求对应的哈希
表,并确定所述哈希表对应的多个分区表,多个所述分区表在所述数据库集群
中相关联;
根据所述查询请求确定每个所述分区表对应的查询条件,并根据每个所述
分区表对应的查询条件生成MapReduce查询任务;
通过HadoopYarn框架中的调度节点根据所述MapReduce查询任务确定多
个子任务,并将多个所述子任务分配到多个计算节点;
通过多个所述计算节点执行多个所述子任务,得到多个计算结果,并通过
多个所述计算节点将多个所述计算结果反馈给所述调度节点;
通过所述调度节点对多个所述计算结果进行化简,得到所述查询请求对应
的查询结果。
2.如权利要求1所述的方法,其特征在于,所述根据每个所述分区表对
应的查询条件生成MapReduce查询任务具体为:
根据每个所述分区表对应的查询条件,每个所述分区表的分区描述信息以
及所述数据库集群在所述HadoopYarn框架中的数据格式生成所述MapReduce
查询任务。
3.如权利要求1所述的方法,其特征在于,所述通过HadoopYarn框架
中的调度节点根据所述MapReduce查询任务确定多个子任务包括:
通过HadoopYarn框架中的调度节点确定所述HadoopYarn框架的初始配
置参数,所述初始配置参数包括所述HadoopYarn框架中的所有计算节点的总
CPU资源和总内存资源;
通过所述调度节点根据所述初始配置参数将所述MapReduce查询任务划
分为多个子任务。
4.如权利要求1所述的方法,其特征在于,所述将多个所述子任务分配
到多个计算节点包括:
根据每个所述计算节点的CPU资源、内存资源、硬盘资源和/或网络吞吐
量确定每个所述计算节点的计算能力;
根据每个所述计算节点的计算能力将多个所述子任务分配到多个所述计
算节点。
5.如权利要求4所述的方法,其特征在于,所述将多个所述子任务分配
到多个计算节点还包括:
通过所述调度节点实时监控所述HadoopYarn框架中的所有所述计算节点
的资源使用情况,并根据所有所述计算节点的资源使用情况对未分配的所述子
任务进行分配。
6.一种数据聚合查询的装置,其特征在于,包括:
分...
【专利技术属性】
技术研发人员:胡伟,黄晓慧,黄齐仁,李浩,陈晓攀,熊志强,
申请(专利权)人:国家超级计算深圳中心深圳云计算中心,深圳市汉云科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。