【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
在大规模并行处理(Massively Parallel Processing, MPP)系统中,商业智能(Business Intelligence, BI)和企业数据仓库(Enterprise Data Warehouse, EDW)应用处理大量的数据。该数据(关系表集)驻留在非常大的数据库系统中,该非常大的数据库系统依靠大数目的中央处理单元(CPU)来高效地执行数据库操作。MPP系统试图在可用的处理器之间均一地分配数据,并且然后并行地施行预期操作,而不是串行地施行该操作。基本且最常见的数据库操作之一是两个关系表之间的连接。连接操作器基于各表中的列之间的匹配准则组合来自两个表的记录。例如,通过匹配两个表上的列produc t_i d,可以把表LINEITEM连接到表PRODUCT,以得到具有它们的产品信息的所有行项集。在查询执行树中,连接操作常常是计算开销最高的操作,并且其性能指示了该查询的整体性能。 为了并行地高效施行连接操作,该系统基于连接列(上面的示例中的product_id)的值对来自两个表的数据流进行分区。也就是说,保证具有来自任一表、或者孩子的连接列的或连接的相同值的所有记录都被发送到同一中央处理单元(CPU)。因而,所有连接匹配都可以被在每个CPU中本地地且独立于其他CPU地找到。当记录被均匀地分配吋,此按值分区模式效果好。使用良好的哈希函数确保了不同的值被均匀地(或伪随机地)分配给所有处理器。然而,良好的哈希函数不保证记录被均一地分配,因为不是所有的不同的值在该数据集中都具有相同的出现频率。当ー个值具有比每个CPU的平均记录数高的出 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种对并行数据库管理系统执行外连接的计算机可执行方法,包括 接收外倾斜值列表(SVL),其包括对于所述外连接的外表而言被指示为是倾斜的ー个或多个值; 接收内SVL,其包括对于所述外连接的内表而言被指示为是倾斜的ー个或多个值; 基于所述外SVL和所述内SVL,跨多个连接实例对所述外表进行分区; 基于所述外SVL和所述内SVL,跨所述多个连接实例对所述内表进行分区; 标识缺失的倾斜值,所述缺失的倾斜值是所述内SVL的在所述内表中未找到的值;以及 基于所述缺失的倾斜值,使用所述多个连接实例施行所述外连接。2.如权利要求I所述的计算机可执行方法,其中施行所述外连接包括使用所述多个连接实例中的仅ー个连接实例针对所述缺失的倾斜值生成空实例化的行。3.如权利要求2所述的计算机可执行方法,包括选择所述仅ー个连接实例。4.如权利要求2所述的计算机可执行方法,其中生成所述空实例化的行包括 选择所述外表的外行; 确定所述外行包括所述缺失的倾斜值;以及 生成结果行,所述结果行包括针对所述外表的连接列值和针对所述内表的空值。5.如权利要求4所述的计算机可执行方法,包括生成包括所述内SVL的哈希表,其中确定所述外行包括所述缺失的倾斜值是基于所述哈希表的。6.如权利要求I所述的计算机可执行方法,包括编译所述查询,其中编译所述查询包括生成查询计划,所述查询计划接收所述外SVL、接收所述内SVL、对所述外表进行分区、对所述内表进行分区、标识所述缺失的倾斜值以及施行所述外连接。7.如权利要求6所述的计算机可执行方法,其中编译所述查询包括选择所述仅ー个连接实例。8.如权利要求6所述的计算机可执行方法,其中编译所述查询包括 生成所述内SVL ; 生成所述外SVL ;以及 协调所述内SVL和所述外SVL。9.如权利要求8所述的计算机可执行方法,其中协调所述内SVL和所述外SVL包括 标识所述外SVL和所述内SVL的共有值;以及 基于所述共有值是否以更小的频率出现在所述内表或者所述外表中,从所述内SVL和所述外SVL中的ー个去除所述共有值。10.如权利要求I所述的计算机可执行方法,其中对所述外表进行分区包括下列中的至少ー个 把所述外表的外行的拷贝指派给所述多个连接实例中的所有连接实例; 基于均匀分配算法把所述外行指派给所述多个连接实例中的ー个连接实例;以及 基于按值分区算法把所述外行指派给所述多个连接实例中的该ー个连接实例。11.ー种用于对并行数据库管理系统(DBMS)执行外连接的计算机系统,所述计算机系统包括 多个处理器,其被适配为执行存储的指令;和存储器设备,其存储指令,所述存储器设备包括 并行DBMS ; 被适配为对指定外连接的查询进行编译的计算机可执行代码; 被适配为接收外倾斜值列表(SVL)的计算机可执行代码,所述外倾斜值列表(SVL)包括被指示为倾斜的用于所述外连接的外表的一个或多个值; 被适配为接收内SVL的计算机可执行代码,所述内SVL包括被指示为倾斜的用于所述外连接的内表的一个或多个值; 被适配为基于所述外SVL和所述内SVL跨多个连接实例对所述外表进行分区的计算机可执行代码; 被适配为基于所述外SVL和所述内SVL跨多个连接实例对所述内表进行分区的计算机可执行代码; 被适配为标识缺失的倾斜值的计算机可执行代码,所述缺失的倾斜值是所述内SVL的不存在于所述内表中的值;以及 被适配为基于所述缺失的倾斜值、使用...
【专利技术属性】
技术研发人员:AK阿尔奥马里,Q陈,
申请(专利权)人:惠普发展公司,有限责任合伙企业,
类型:
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。