【技术实现步骤摘要】
一种数据归并排序方法及装置
本专利技术实施例涉及数据库
,尤其涉及一种数据归并排序方法及装置。
技术介绍
随着信息技术和互联网的不断迅速发展,数据库技术已发展成为信息科学里一项十分重要的技术,广泛应用于商业管理、政府办公、科学研究以及工程开发等领域。在数据库应用中,常常采用两阶段多路归并排序算法来解决对海量数据的排序问题,该算法包括以下两个阶段:1、将待排序数据分成N个片段,对每个片段进行排序之后以形成N个子表,其中,N为正整数;2、归并N个子表以形成单个的排序表,归并过程为:对每一个子表进行数据分块处理,加载N个子表中的第一个数据块至排序缓冲区,将N个子表中第一个数据块的第一个数据进行比较,输出比较结果中的最小值之后,将最小值对应的数据块中的下一数据提升至该数据块的第一位,继续比较N个子表中的第一个数据,如此循环,若某个数据块的数据已输出完毕,则将该数据块对应的子表中下一数据块加载至排序缓冲区,继续循环比较所有数据块的第一个数据,直至N个子表的所有数据全部输出完毕为止。现有技术的缺陷在于:在数据库的实际应用中,往往会出现资源使用限制的情况,即,仅提供内存中 ...
【技术保护点】
一种数据归并排序方法,其特征在于,包括:根据与待排序数据对应的至少两个已排序子表,生成与各所述已排序子表分别对应的子表控制信息,其中,所述子表控制信息包括已排序子表中数据的最小值、最大值以及已排序子表的访问地址;根据排序类型,对各所述子表控制信息进行排序,得到子表控制信息队列;按照所述子表控制信息队列中的子表控制信息的排布顺序,顺序获取至少一个满足归并条件的已排序子表加入归并队列,其中,所述归并条件包括归并队列中任意两个归并子表之间具有部分重叠的取值范围;按照所述排序类型,对所述归并队列中的已排序子表进行归并排序,获取并输出所述待排序数据的归并排序结果;如果确定所述归并队列 ...
【技术特征摘要】
1.一种数据归并排序方法,其特征在于,包括:根据与待排序数据对应的至少两个已排序子表,生成与各所述已排序子表分别对应的子表控制信息,其中,所述子表控制信息包括已排序子表中数据的最小值、最大值以及已排序子表的访问地址;根据排序类型,对各所述子表控制信息进行排序,得到子表控制信息队列;按照所述子表控制信息队列中的子表控制信息的排布顺序,顺序获取至少一个满足归并条件的已排序子表加入归并队列,其中,所述归并条件包括归并队列中任意两个归并子表之间具有部分重叠的取值范围;按照所述排序类型,对所述归并队列中的已排序子表进行归并排序,获取并输出所述待排序数据的归并排序结果;如果确定所述归并队列中至少一个已排序子表中的数据已经全部输出,则返回执行按照所述子表控制信息队列中的子表控制信息的排布顺序,顺序获取至少一个满足归并条件的已排序子表加入归并队列的操作,直至完成将全部已排序子表加入所述归并队列。2.根据权利要求1所述的方法,其特征在于,所述排序类型包括:将待排序数据按照从小到大的顺序进行排序;根据排序类型,对各所述子表控制信息进行排序,得到子表控制信息队列,包括:对各所述子表控制信息按照最小值从小到大的顺序进行排序,得到子表控制信息队列。3.根据权利要求2所述的方法,其特征在于,对各所述子表控制信息按照最小值从小到大的顺序进行排序,得到子表控制信息队列包括:获取一个所述子表控制信息作为当前待处理子表控制信息;根据设定排序标准,将所述当前子表控制信息加入至所述子表控制信息队列之后,更新所述子表控制信息队列;返回执行获取一个所述子表控制信息作为当前待处理子表控制信息的操作,直至完成对所有所述子表控制信息的排序操作。4.根据权利要求2所述的方法,其特征在于,按照所述子表控制信息队列中的子表控制信息的排布顺序,顺序获取至少一个满足归并条件的已排序子表加入归并队列,包括:获取所述归并队列中的归并阈值,所述归并队列在未使用时,所述归并阈值为初始化阈值;按照所述子表控制信息队列中的子表控制信息中最小值从小到大的顺序,顺序获取一个子表控制信息作为当前操作控制信息;如果确定所述当前操作控制信息中的最小值小于所述归并阈值或者所述归并阈值为初始化阈值,则将与所述当前操作控制信息对应的已排序子表加入所述归并队列中,并重新确定归并阈值;返回执行按照所述子表控制信息队列中的子表控制信息中最小值从小到大的顺序,顺序获取一个子表控制信息作为当前操作控制信息的操作,直至所述当前操作控制信息中的最小值大于等于所述归并阈值或者所述当前操作控制信息为所述子表控制信息队列中的最后一个子表控制信息。5.根据权利要求4所述的方法,其特征在于,重新确定归并阈值,包括:如果确定所述归并阈值为初始化阈值,则将所述归并阈值确定为所述当前操作控制信息中的最大值;如果确定所述当前操作控制信息中的最小值小于所述归并阈值,则比较所述归并阈值与所述当前操作控制信息中的最大值的大...
【专利技术属性】
技术研发人员:王攀,望声宜,
申请(专利权)人:上海达梦数据库有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。