[发明专利]一种基于向量化执行的数据库排序方法及系统有效
申请号: | 201810588554.6 | 申请日: | 2018-06-08 |
公开(公告)号: | CN109002467B | 公开(公告)日: | 2021-04-27 |
发明(设计)人: | 申毅杰;熊劲 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;梁挥 |
地址: | 100080 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种向量化执行的数据库排序方法,包括:将输入数据向量化为多个输入数据行组;在计算节点的内存中开辟大小为最适粒度的缓冲区;将该输入数据行组依次追加至该缓冲区的末尾空位;仅当该缓冲区满或所有该输入数据行组均已追加至该缓冲区时,将存入该缓冲区的输入数据行组调入该计算节点的处理器缓存进行排序以得到缓存输出数据行组,将该缓存输出数据行组输出至该内存并清空该缓冲区;当该内存满或所有该缓存输出数据行组均已输出至该内存时,将该内存中的该缓存输出行组排序以生成输出数据行组,将该输出数据行组保存至该计算结点的磁盘并释放内存;合并所有该输出数据行组以得到顺序排列的全序输出数据行组。 | ||
搜索关键词: | 一种 基于 量化 执行 数据库 排序 方法 系统 | ||
【主权项】:
1.一种向量化执行的数据库排序方法,其特征在于,包括:步骤1,将输入数据向量化为多个输入数据行组;步骤2,在计算节点的内存中开辟大小为最适粒度的缓冲区;步骤3,将该输入数据行组依次追加至该缓冲区的末尾空位;仅当该缓冲区满或所有该输入数据行组均已追加至该缓冲区时,将存入该缓冲区的输入数据行组调入该计算节点的处理器缓存进行排序以得到缓存输出数据行组,将该缓存输出数据行组输出至该内存并清空该缓冲区;重复步骤3直到所有该输入数据行组均已完成排序;步骤4,当该内存满或所有该缓存输出数据行组均已输出至该内存时,将该内存中的该缓存输出行组排序以生成输出数据行组,将该输出数据行组保存至该计算结点的磁盘并释放该内存;重复步骤4直到所有该缓存输出数据行组均已完成排序;步骤5,合并所有该输出数据行组以得到顺序排列的全序输出数据行组。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810588554.6/,转载请声明来源钻瓜专利网。