[发明专利]一种基于向量化执行的数据库排序方法及系统有效

专利信息
申请号: 201810588554.6 申请日: 2018-06-08
公开(公告)号: CN109002467B 公开(公告)日: 2021-04-27
发明(设计)人: 申毅杰;熊劲 申请(专利权)人: 中国科学院计算技术研究所
主分类号: G06F16/2455 分类号: G06F16/2455
代理公司: 北京律诚同业知识产权代理有限公司 11006 代理人: 祁建国;梁挥
地址: 100080 北*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 量化 执行 数据库 排序 方法 系统
【说明书】:

发明涉及一种向量化执行的数据库排序方法,包括:将输入数据向量化为多个输入数据行组;在计算节点的内存中开辟大小为最适粒度的缓冲区;将该输入数据行组依次追加至该缓冲区的末尾空位;仅当该缓冲区满或所有该输入数据行组均已追加至该缓冲区时,将存入该缓冲区的输入数据行组调入该计算节点的处理器缓存进行排序以得到缓存输出数据行组,将该缓存输出数据行组输出至该内存并清空该缓冲区;当该内存满或所有该缓存输出数据行组均已输出至该内存时,将该内存中的该缓存输出行组排序以生成输出数据行组,将该输出数据行组保存至该计算结点的磁盘并释放内存;合并所有该输出数据行组以得到顺序排列的全序输出数据行组。

技术领域

本发明涉及数据管理领域,具体涉及一种基于向量化执行的数据库排序方法及系统。

背景技术

在数据库领域中,排序(Sort)是最为重要的操作之一,广泛被用于实现:分组(grouping)、聚合(aggregation)、连接(join)和shuffle等操作。为了处理任意大小的数据集(可能大于内存容量),数据库中的sort一般均指的是外部排序(external sort)。外部排序算法可分为两个阶段,被称为两阶段多路归并排序(Two-phase,Multiway Merge-sort,TPMMS),其过程如下:

1)基于内存的排序,将需要排序的数据在内存中进行缓存,当无更多可用内存时,进行一次基于内存数据的局部排序,并将结果溢写(spill)到磁盘文件中。

2)当所有需要排序的数据都进行完内存排序,形成多个局部序时,采用多路归并算法同时处理多个局部序,并生成最终的、全局的序。

向量化执行(Vectorized Execution)是最早在分析型数据库MonetDB中提出的,提升分析类(analytical)查询执行性能的执行引擎优化技术。

为了执行一条SQL查询,执行引擎会按照其语义将执行逻辑组织成一棵算子树,如图1A所示,传统执行引擎的算子树每次处理一条记录最终产生结果,而Vectorizedexecution将迭代粒度从一行变成了行组(Record Batch),如图1B所示,在Record Batch内逻辑数据行Record(如图2A所示)逐列组织在一起(如图2B所示),并逐列处理。

通过将迭代粒度变为每次处理Record Batch,Record Batch内按列组织、逐列处理,Vectorized execution被证明可以有效提升分析类查询的执行效率。其优势具体在于减少解释执行开销:从每次处理一行变为每次处理行组(N行),函数调用数目减少为原来的1/N;更好的数据局部性和代码局部性,因而可以更好地利用到CPU Cache;为编译器和CPU提供了进一步自动优化的可能性。

为了在分析型数据库中实现向量执行,其关键问题之一就在于如何高效地实现向量化Sort。

TimSort是结合了合并排序(merge sort)和插入排序(insertion sort)的混合排序算法,这种算法首先识别数据中已经存在的顺序,而后利用这些局部序的知识来更高效地排出全序。概括地说,TimSort分成了两个过程:1)识别(排列)大于最小个数序列(identifyruns),顺序扫描要sort的序列,识别其中的有序部分(或对无序数据进行插入排序),使得有序部分长度达到算法设定的最小值(minimum size);2)将识别出的最小序两两合并(merge sort)最终拿到全序。

针对Sort的优化当前有:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810588554.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top