[发明专利]一种基于固态硬盘的数据库并行排序连接系统在审
申请号: | 202110778813.3 | 申请日: | 2021-07-09 |
公开(公告)号: | CN113568572A | 公开(公告)日: | 2021-10-29 |
发明(设计)人: | 范玉雷;周郑杰;王俊凯;赵懂佳;许铃冰;周科宇 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 杭州斯可睿专利事务所有限公司 33241 | 代理人: | 王利强 |
地址: | 310014 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 固态 硬盘 数据库 并行 排序 连接 系统 | ||
1.一种基于固态硬盘的数据库并行排序连接系统,其特征在于,包括内存、固态硬盘、系统判别模块、并行读固态硬盘管理模块、并行排序模块、并行写固态硬盘管理模块和并行连接模块,所述内存作为并行读固态硬盘管理模块的数据页缓冲区、同时作为并行排序模块排序缓冲区、并行写固态硬盘管理模块的归并缓冲区和并行连接模块的连接缓冲区;所述固态硬盘中存储有待排序数据和数据字典;所述系统判别模块根据数据字典中对待排序数据的统计信息判断内存数据页缓冲区大小与待排序数据量之间的关系,决定系统采用哪种具体排序方法;所述并行读固态硬盘管理模块并行读取固态硬盘并把数据存入内存数据页缓冲区;所述并行排序模块对内存排序缓冲区中的数据进行排序;所述并行写固态硬盘管理模块把排好序的数据从归并缓冲区写入固态硬盘;所述并行连接模块对内存连接缓冲区中的数据进行连接。
2.如权利要求1所述的基于固态硬盘的数据库并行排序连接系统,其特征在于,设内存大小为M,固态硬盘并行域数量为N,所述系统判别模块的系统判别步骤如下:
1.1)、从固态硬盘读取待排序数据集的统计描述信息;
1.2)、通过待排序数据量和内存数据页缓冲区大小确定采用哪种具体的排序算法。
3.如权利要求1或2所述的基于固态硬盘的数据库并行排序连接系统,其特征在于,所述并行排序模块的并行排序步骤如下:
2.1)、先按固态硬盘并行域的数量对内存进行均等分,每块大小为M/N;
2.2)、从固态硬盘并行读取待排序的数据写入内存的数据缓冲页,每块大小为M/N,共N块;
2.3)、根据系统判别模块确定具体的排序算法,然后对每一块数据并行排序;
2.4)、将排序好的数据块从内存并行写入固态硬盘;
2.5)、从固态硬盘按域并行读取排序好的数据,写入内存的数据缓冲页;
2.6)、扫描每一个数据缓冲页,比较并找到最小的数据;
2.7)、依次将最小的数据写入固态硬盘,直至数据全排列结束。
4.如权利要求3所述的基于固态硬盘的数据库并行排序连接系统,其特征在于,所述2.4)中,将数据按原本域的位置向前移一位写入在固态硬盘上新的位置,改进后的并行排序算法对数据块要求小于等于M*M或者小于等于(M-1)*M。
5.如权利要求1或2所述的基于固态硬盘的数据库并行排序连接系统,其特征在于,设两个关系R和S,大小分别为Rn和Sn,Rn=M*M,Sn=M*M,所述并行连接模块的步骤如下:
3.1)、把R和S按顺序存放在固态硬盘中;
3.2)、使用并行排序模块先对R块进行排序,然后再对S块进行排序;
3.3)、将完全排序好的R和S进行连接。
6.如权利要求1或2所述的基于固态硬盘的数据库并行排序连接系统,其特征在于,所述3.1)中,同时从固态硬盘中并行读取R和S,要求关系R和S的数据块个数比例为Rn:Sn=NR:NS,且NR+NS=N。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110778813.3/1.html,转载请声明来源钻瓜专利网。