[发明专利]一种数据处理方法及系统有效
申请号: | 201480000560.5 | 申请日: | 2014-04-04 |
公开(公告)号: | CN105210059B | 公开(公告)日: | 2018-12-07 |
发明(设计)人: | 李俊;施会华;方帆 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 系统 | ||
本发明实施例提供一数据处理方法及系统。该方法包括根据获取的查询语句形成执行树,其中,所述执行树的每个树节点为一个算子;遍历所述执行树上的算子获取各所述算子的分配策略,其中,所述分配策略根据设定的分配规则表中各类型的所述算子对应各处理器的性能参数确定,所述处理器包括异构处理器;根据各所述算子的所述分配策略分别将各所述算子分配到处理器中,以使得所述处理器对分配到的所述算子执行计算。能够在包括异构处理器的数据库系统中将不同的算子合理的分配到合适的执行主体。
技术领域
本发明实施例涉及通信领域,尤其涉及一种数据处理方法及系统。
背景技术
数据库是按照数据结构来组织、存储和管理数据的仓库,发展至今,数据管理不再仅仅是存储和管理数据,而转变成执行用户所需要的各种数据管理的方式。现有的数据库执行有一定的过程,先将(Structured Query Language,SQL)结构化查询语言转化为一个可执行的关系树,再将关系树映射到相应的执行函数上,最后通过执行这些函数完成查询过程的执行,其中,树节点则通过(Query Engine,QE)结构化引擎在处理器上执行,这些树节点被称为算子。
数据库是一个系统软件,他需要运行在一定的硬件平台上,数据库在硬件形态上可能会发生很大的变化,除了中央处理器(Central Processing Unit,CPU)之外,也会增加一些其他功能的处理器,如加速的处理器,典型的如(Graphic Processing Unit,GPU)图形处理单元,(Field Programmable Gate Array,FPGA)现场可编程门阵列,这些增加了其他功能的处理器称为异构处理器。
现有的数据库软件实现是基于普通的处理器(即CPU)的,关系树上的每个节点都是在普通的处理器上执行,那么增加了新功能的处理器即异构处理器不能突显其计算的优势,如加速的优势,因此,如何在包括异构处理器的数据库系统中将不同的算子合理的分配到合适的执行主体成为了亟待解决的问题。
发明内容
本发明的实施例提供一种数据处理方法及系统,能够在包括异构处理器的数据库系统中将不同的算子合理的分配到合适的执行主体。
本发明的第一方面,提供一种数据处理方法包括:
根据获取的查询语句形成执行树,其中,所述执行树的每个树节点为一个算子;
遍历所述执行树上的算子获取各所述算子的分配策略,其中,所述分配策略根据设定的分配规则表中各类型的所述算子对应各处理器的性能参数确定,所述处理器包括异构处理器;
根据各所述算子的所述分配策略分别将各所述算子分配到处理器中,以使得所述处理器对分配到的所述算子执行计算。
在第一种可能的实现方式中,根据第一方面,所述根据获取的查询语句形成执行树之前,还包括:
根据算子的类型得到各类型算子对应各处理器的性能参数;
将各类型算子对应各处理器的性能参数写入分配规则表,其中,所述算子的类型至少包括选择、投影和分组。
在第二种可能的实现方式中,结合第一方面和第一种可能的实现方式,
所述性能参数为所述权重值和所述性能分;
所述分配策略根据设定的分配规则表中各处理器对应各所述算子的性能参数确定包括:
分配策略根据设定的分配规则表中各所述处理器对应各所述算子的权重值和性能分的乘积,将乘积最高的所述权重值和所述性能分对应的处理器确定为所述算子的处理器。
在第三种可能的实现方式中,结合第一方面、第一种可能的实现方式和第二种可能的实现方式,所述根据各所述算子的所述分配策略对应将各所述算子分配到处理器中包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201480000560.5/2.html,转载请声明来源钻瓜专利网。