[发明专利]使用并行处理执行哈希连接有效
| 申请号: | 201880047106.3 | 申请日: | 2018-07-16 |
| 公开(公告)号: | CN111095193B | 公开(公告)日: | 2022-03-25 |
| 发明(设计)人: | E·P·哈丁;A·D·赖利;C·H·金斯利;S·威斯纳 | 申请(专利权)人: | 奥特瑞克斯股份有限公司 |
| 主分类号: | G06F7/00 | 分类号: | G06F7/00;G06F12/02;G06F16/22 |
| 代理公司: | 永新专利商标代理有限公司 72002 | 代理人: | 张立达 |
| 地址: | 美国加利*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 使用 并行 处理 执行 连接 | ||
1.一种使用计算机来连接数据记录的方法,所述方法包括:
识别第一多个数据记录和第二多个数据记录;
为所述第一多个数据记录和所述第二多个数据记录中的每个数据记录计算哈希;
基于计算出的所述第一多个数据记录的哈希,将所述第一多个数据记录中的数据记录分配给多个第一分组,其中,每个第一分组与被包括在所述第一分组中的数据记录的所述计算出的哈希中的位的集合相关联;
基于所述计算出的所述第二多个数据记录哈希,将所述第二多个数据记录中的数据记录分配给多个第二分组,其中,每个第二分组与被包括在所述第二分组中的数据记录的所述计算出的哈希中的位的集合相关联;
将相应第一分组和相应第二分组中的每一个分配给相应工作线程,其中,所述相应第一分组和所述相应第二分组与相同的位的集合相关联;
基于为被分配给所述相应工作线程的所述第一分组和所述第二分组中的数据记录所计算的哈希,通过所述相应工作线程确定是否要将所述第一分组中的数据记录与所述第二分组中的数据记录相连接;
响应于确定要将所述第一分组中的一个或多个数据记录与所述第二分组中的一个或多个数据记录相连接,通过所述相应工作线程连接所述数据记录;以及
通过所述相应工作线程输出所述第一分组和所述第二分组中的经连接的数据记录。
2.根据权利要求1所述的方法,其中,所述数据记录包括具有值的多个字段,并且其中,为所述第一多个数据记录和所述第二多个数据记录中的每个数据记录计算哈希包括:
识别所述数据记录的所述多个字段的子集,所述子集是所述第一多个数据记录和所述第二多个数据记录中的数据记录所共有的;以及
计算所述第一多个数据记录和所述第二多个数据记录中的数据记录所共有的所述多个字段的所述子集的值的哈希。
3.根据权利要求1所述的方法,其中,基于为被分配给所述相应工作线程的所述第一分组和所述第二分组中的数据记录所计算的哈希,通过所述相应工作线程确定是否要将所述第一分组中的数据记录与所述第二分组中的数据记录相连接包括:
响应于所述第一分组中的第一数据记录和所述第二分组中的第二数据记录具有匹配的哈希,确定要将所述第一数据记录与所述第二数据记录相连接。
4.根据权利要求1所述的方法,其中,确定是否要将所述第一分组中的数据记录与所述第二分组中的数据记录相连接包括:
基于所述数据记录的所述哈希,对所述第一分组中的所述数据记录和所述第二分组中的所述数据记录进行排序。
5.根据权利要求1所述的方法,其中,所述计算机具有一定数量的处理器内核,并且其中,响应于所述处理器内核的数量来确定所述第一分组的数量和所述第二分组的数量。
6.根据权利要求1所述的方法,其中,不同的工作线程并行地处理相应的第一分组和第二分组。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于奥特瑞克斯股份有限公司,未经奥特瑞克斯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880047106.3/1.html,转载请声明来源钻瓜专利网。





