[发明专利]基于数据库的数据文件更新方法和装置有效
申请号: | 201910411968.6 | 申请日: | 2019-05-17 |
公开(公告)号: | CN111949439B | 公开(公告)日: | 2023-08-01 |
发明(设计)人: | 李永辉;裴照华;鄢兵安;马杰;郭强;李远 | 申请(专利权)人: | 中国移动通信集团河南有限公司;中国移动通信集团有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F16/21 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 朱文杰;南霆 |
地址: | 450008*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 数据库 数据文件 更新 方法 装置 | ||
1.一种基于数据库的数据文件更新方法,所述方法包括:
在内存中的键值数据持久化至存储空间生成数据文件时,若参数K的值小于参数N,则循环执行以下方法:
获取第K层数据文件中至少一个数据列表的长度m和所述第K层数据文件中的键值数据的数目n;
基于所述至少一个数据列表的长度m和所述键值数据的数目n,将所述第K层数据文件与第K+1层数据文件进行合并排序,以更新所述第K+1层数据文件;
其中,K为整数,初始值为0,N为所述数据文件的层级数量,N 0,第0层数据文件为访问的最底层数据文件;
基于所述至少一个数据列表的长度m和所述键值数据的数目n,将所述第K层数据文件与第K+1层数据文件进行合并排序,包括:
基于所述至少一个数据列表的长度m和所述第K层数据文件中的键值数据的数目n,确定满足执行第K层数据文件中多个数据列表排序所需要的排序时间;
基于所述至少一个数据列表的长度m与所述排序时间的关系,确定目标合并排序方式;
基于所述目标合并排序方式,将所述第K层数据列表合并至所述第K+1层数据列表中,并对合并后的第K+1层数据列表进行排序,以更新所述第K+1层数据文件;
确定目标合并排序方式,包括:
若所述至少一个数据列表的长度m大于所述排序时间数据量Θ(logn),则确定K路合并排序为所述目标合并排序方式;
若所述至少一个数据列表的长度m小于或等于所述排序时间数据量Θ(logn),则确定插入合并排序为所述目标合并排序方式。
2.如权利要求1所述的方法,其特征在于,所述数据列表包括键值名和与所述键值名对应的键值内容,所述方法还包括:
若所述第K层数据文件存在与所述第K+1层数据文件的目标键值名相同的键值名,则删除所述第K+1层数据文件中的目标键值名、以及与所述目标键值名对应的键值内容,以完成所述第K+1层数据文件的更新。
3.如权利要求1所述的方法,其特征在于,获取第K层数据文件中所述至少一个数据列表的长度m和所述第K层数据文件中的键值数据的数目n,包括:
基于数据库系统查询字典,获取所述第K层数据文件中所述至少一个数据列表的长度m;
基于getter查询方式,获取所述第K层数据文件中的键值数据的数目n。
4.一种基于数据库的数据文件更新装置,包括:
获取单元,用于在内存中的键值数据持久化至存储空间生成数据文件时,若参数K的值小于参数N,则获取第K层数据文件中至少一个数据列表的长度m和所述第K层数据文件中的键值数据的数目n;
更新单元,用于基于所述至少一个数据列表的长度m和所述键值数据的数目n,将所述第K层数据文件与第K+1层数据文件进行合并排序,以更新所述第K+1层数据文件;
其中,K为整数,初始值为0,N为所述数据文件的层级数量,N 0,第0层数据文件为访问的最底层数据文件;
还包括:
第一确定单元,用于基于所述至少一个数据列表的长度m和所述第K层数据文件中的键值数据的数目n,确定满足执行第K层数据文件中多个数据列表排序所需要的排序时间;
第二确定单元,用于基于所述至少一个数据列表的长度m与所述排序时间的关系,确定目标合并排序方式;
所述更新单元用于基于所述目标合并排序方式,将所述第K层数据列表合并至所述第K+1层数据列表中,并对合并后的第K+1层数据列表进行排序,以更新所述第K+1层数据文件;
所述第二确定单元用于:
若所述至少一个数据列表的长度m大于所述排序时间数据量Θ(logn),则确定K路合并排序为所述目标合并排序方式;
若所述至少一个数据列表的长度m小于或等于所述排序时间数据量Θ(logn),则确定插入合并排序为所述目标合并排序方式。
5.如权利要求4所述的装置,其特征在于,所述数据列表包括键值名和与所述键值名对应的键值内容,所述更新单元还用于:
若所述第K层数据文件存在与所述第K+1层数据文件的目标键值名相同的键值名,则删除所述第K+1层数据文件中的目标键值名、以及与所述目标键值名对应的键值内容,以更新所述第K+1层数据文件。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至3中任一项所述的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团河南有限公司;中国移动通信集团有限公司,未经中国移动通信集团河南有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910411968.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智能化机车故障诊断系统及方法
- 下一篇:阿立哌唑口腔速溶膜剂及其制备方法