[发明专利]数据库系统中的加速过滤、分组和聚合在审
申请号: | 201880088339.8 | 申请日: | 2018-11-30 |
公开(公告)号: | CN111699480A | 公开(公告)日: | 2020-09-22 |
发明(设计)人: | 米哈尔·诺娃凯维奇;埃里克·布廷 | 申请(专利权)人: | 麦模斯阔有限公司 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 沈丹阳 |
地址: | 美国加*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 系统 中的 加速 过滤 分组 聚合 | ||
1.一种用于使处理器对编码值的列存储表执行查询的方法,所述方法包括配置所述处理器以:
接收所述查询,所述查询包括要应用于所述编码值的至少第一列向量的过滤器;
处理针对所述第一列向量中的所述编码值中的每一个编码值的所述查询,从而生成指示通过所述过滤器或未通过所述过滤器的相应编码值的第一向量;
相对于所述第一列向量中的所述编码值,从所述第一向量确定通过所述过滤器的编码值和未通过所述过滤器的编码值的指示符;
确定所述第一列向量中的所述编码值的位长度;并且
针对所述第一列向量中的所述编码值的至少一个子集,基于所述指示符和所确定的所述编码值的位长度,从多个算法中选择用于处理所述查询的算法。
2.根据权利要求1所述的方法,其中,所选择的算法使所述处理器:
将位添加到所述第一列向量中的所述编码值的至少所述子集中的每一个子集中,从而生成所述第一列向量的解压缩的编码值,每个解压缩的编码值具有相同的长度;
将值的第一子集加载到第一寄存器的相应通道中,所述第一子集包括所述解压缩的编码值;
将值的第二子集加载到第二寄存器的相应通道中,所述第二子集包括所述第一向量的对应于值的所述第一子集的值;并且
利用单个指令基于所述第二子集中的值将通过所述过滤器的解压缩的编码值从所述第一寄存器输出到过滤的列向量中。
3.根据权利要求1所述的方法,其中,所选择的算法使所述处理器:
生成包括多个连续整数值的第二向量;
将值的第一子集加载到第一寄存器的相应通道中,所述第一子集包括所述第二向量的所述连续整数值;
将值的第二子集加载到第二寄存器的相应通道中,所述第二子集包括所述第一向量的值;
利用单个指令基于所述第二子集中的值将整数值从所述第一寄存器输出到第三向量中;
将所述第三向量的所述整数值与所述第一列向量的索引匹配;并且
基于所述匹配,检索并解码所述第一列向量的编码值。
4.根据权利要求1所述的方法,其中,所述查询还包括具有编码值的第二列向量的指示,所述查询的结果通过所述编码值被分组,所选择的算法使所述处理器:
将位添加到所述第二列向量中的编码值,从而生成所述第二列向量的解压缩的编码值,每个解压缩的编码值具有相同的长度;
将值的第一子集加载到第一寄存器的相应通道中,所述第一子集包括所述第二列向量的所述解压缩的编码值;
将值的第二子集加载到第二寄存器的相应通道中,所述第二子集包括所述第一向量的对应于值的所述第一子集的值;
利用单个指令将所述第一寄存器的对应于所述第二寄存器的包括未通过所述过滤器的指示的通道的通道中的解压缩的编码值更新为常数值,从而生成更新的第二列向量;并且
利用所更新的第二列向量对所述列存储表执行所述查询,从而生成所述查询的结果,所述结果包括除了对应于所述常数值的组之外的所有组的结果。
5.根据权利要求1所述的方法,其中,所述查询还包括具有编码值的第二列向量的指示,所述查询的结果通过所述编码值被分组,所选择的算法使所述处理器:
针对所述第二列向量中的每个唯一编码值,确定所述第二列向量中的所述唯一编码值的计数;
生成多个子阵列,每个子阵列与所述第二列向量中的不同唯一编码值相关联,并且具有基于对应于所述唯一编码值的所述计数的长度;
针对所述第二列向量的每一行,基于所述行处的所述编码值,将所述行的指示插入所述多个子阵列中的一个子阵列中;
级联所述多个子阵列中的每一个子阵列以生成第一阵列;
针对所述第一阵列的所述子阵列中的一个子阵列:
将所述子阵列中的行的指示与所述第一列向量的行匹配;
基于所述匹配,检索并解码所述第一列向量的编码值;并且
将所述第一列向量的解码值加载到第一寄存器的相应通道中;
利用单个指令将所述第一寄存器的每个通道中的所述解码值添加到其他寄存器中的对应通道中,从而在所述其他寄存器的对应通道中生成来自所述第一寄存器的对应通道的解码值的和。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于麦模斯阔有限公司,未经麦模斯阔有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880088339.8/1.html,转载请声明来源钻瓜专利网。