[发明专利]哈希连接方法和装置有效
申请号: | 201480037464.8 | 申请日: | 2014-05-23 |
公开(公告)号: | CN105359142B | 公开(公告)日: | 2019-04-05 |
发明(设计)人: | 桑永嘉;李俊;施会华 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F16/00 | 分类号: | G06F16/00 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 连接 方法 装置 数据库 管理 系统 | ||
1.一种哈希连接方法,其特征在于,应用于数据库,包括:
接收包含有连接Join操作的结构化查询语言SQL语句,解析获取至少两个待连接的目标数据组;
以矢量vector为数量单位将每一目标数据组划分为多个数据段;
基于预设分组规则依次对每一目标数据组中的数据段进行N次哈希hash分组,其中,在每次hash分组时,基于第1次hash分组计算所述数据段中的原始数据所得的用bit位表示的hash值,将当前hash分组过程中指定bit位上取值相同的hash值所对应的原始数据划分在同一小组内,并对划分在同一小组内的各个原始数据,按照各个原始数据在所述目标数据组中的位置在同一小组内进行排序并保存,N取大于或等于1的正整数;
对每一目标数据组经过N次hash分组后获得的小组,在所述目标数据组中,按照各个小组中所包含的原始数据对应的hash值由小至大的对各个小组进行排序;
按照排序依次取所述两个待连接的目标数据组中经由N次hash分组后获得的各个小组中的原始数据进行Join操作。
2.根据权利要求1所述的方法,其特征在于,所述基于预设分组规则依次对每一目标数据组中的数据段进行N次hash分组中的第1次hash分组包括:
计算当前所述数据段内包含的原始数据的hash值,并用bit位表示计算所得hash值;
将位于指定bit位上取值相同的hash值所对应的原始数据划分在同一小组内,并对划分在同一小组内的各个原始数据,按照各个原始数据在所述目标数据组中的位置在同一小组内进行排序和保存;
将每一个原始数据对应的hash值中未被指定的bit位与该原始数据进行关联,并保存;
所述基于预设分组规则依次对每一目标数据组中的数据段进行N次hash分组中的第2次至第n次hash分组包括:
对上一次hash分组后得到的任意一小组中的原始数据进行hash分组,n包含于N,取大于2的正整数包括:
基于当前小组内的原始数据所关联并保存的上一次hash分组中未被指定的bit位,将当前hash分组过程中指定bit位上取值相同的hash值所对应的各个原始数据划分在同一小组内,并对划分在同一小组内的各个原始数据,按照各个原始数据在所述目标数据组中的位置在同一小组内进行排序和保存;
将每一个原始数据关联的剩余的未被指定的bit位再次保存。
3.根据权利要求1或2所述的方法,其特征在于,所述预设分组规则包括:预设hash分组次数N,或者预设分组总数S,或者预设hash分组次数N和预设分组总数S;
当所述预设分组规则是预设hash分组次数N时,依次对每一所述目标数据中的数据段进行hash分组,直至完成N次hash分组;
当所述预设分组规则是预设分组总数S时,依次对每一所述目标数据组中的数据段进行hash分组,直至每一所述目标数据组的分组数等于预设分组数;
当所述预设分组规则是预设hash分组次数N和预设分组总数S,且预设hash分组次数N的优先级高于预设分组总数S时,依次对每一所述目标数据组中的数据段进行hash分组,直至完成N次hash分组;
当所述预设分组规则是预设hash分组次数N和预设分组总数S,且预设分组总数S的优先级高于预设hash分组次数N时,依次对每一所述目标数据组中的数据段进行hash分组,直至每一所述目标数据组的分组数等于预设分组总数S;
当所述预设分组规则是预设hash分组次数N和预设分组总数S,且预设hash分组次数N的优先级和预设分组总数S的优先级一致,依次对每一所述目标数据组中的数据段进行hash分组,直至完成N次hash分组且每一所述目标数据组的分组数等于预设分组总数S;
其中,N的取值由页表缓冲TLB的存储大小决定,为大于等于1的正整数,N包含n;S的取值由数据库缓存cache的大小决定,为大于等于2的正整数;
所述预设hash分组次数N与预设分组总数S的优先级由TLB的存储大小和cache的大小决定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201480037464.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:高纯度头孢硫脒的制备方法
- 下一篇:反射式显示器设备