[发明专利]最小索引标识ID查找方法及装置有效
| 申请号: | 201010292704.2 | 申请日: | 2010-09-20 |
| 公开(公告)号: | CN101957853A | 公开(公告)日: | 2011-01-26 |
| 发明(设计)人: | 郭跃山 | 申请(专利权)人: | 中兴通讯股份有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 余刚;韩建伟 |
| 地址: | 518057 广*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 最小 索引 标识 id 查找 方法 装置 | ||
技术领域
本发明涉及通信领域,具体而言,涉及一种最小索引ID查找方法及装置。
背景技术
在网管系统的后台数据库中,为了避免出现重复数据,同时为了检索和编辑方便,需要为每一条记录指定一个唯一的索引ID(Identity,标识),原则是在当前数据库中查找一条最小的没有被使用的整数作为索引ID。随着业务量的增加,每个表的记录可能达到数万甚至数十万条,这时查找一条可用的索引ID就成了非常耗时的操作,造成严重的性能瓶颈。
目前的网管应用中,查找最小索引ID的方法是,建立一个存放所有索引ID的辅助表,利用关系数据库的多表联合查询技术,在数据表中查找没有被使用的所有的索引ID,然后取其中的最小值。
虽然目前的数据库都对SQL(Structured Query Language,结构化查询语言)查询语句的效率进行了优化,但这种技术仍然是低效的,在进行大数据量操作时,每查询一次索引ID需要1秒以上,时耗较大,会造成后续其他操作时间的延误。
针对相关技术中时耗较大的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种最小索引标识ID查找方法及装置,以至少解决上述时耗过大的问题。
根据本发明的一个方面,提供了一种最小索引标识ID查找方法方法,包括:在指定的查找区间中,查询已用于指定索引的索引ID的记录数;
当所述记录数小于所述指定的查找区间的区间容量时,缩小所述指定的查找区间的上限,其中,缩小后的上限大于所述记录数与所述指定区间的下限之和;
重复上述操作,直到所述缩小后的查找区间内的记录数为0时,选择所述当前查找区间的下限作为最小索引ID;或者,直到当前查找区间内的记录数不为0且当前查找区间的区间容量已缩小到2时,选择所述当前查找区间的上限作为最小索引ID。
较优的,在指定的查找区间中,查询已用于指定索引的索引ID的记录数之前,还包括:
利用预设的分割因子e将已有的查找区间W[w1,w2]分割为左半区间W1[w1,A)和右半区间W2[A,w2],其中,0≤e≤1,e取决于所述已有的查找区间W[w1,w2]中已用于指定索引的索引ID的分布特征,分割点A为:w1+(w2-w1)*e后向下取余得到的整数;
查询所述左半区间W1[w1,A)中已用于指定索引的索引ID的记录数;
若所述左半区间W1[w1,A)中已用于指定索引的索引ID的记录数小于所述左半区间W1[w1,A)的区间容量,选择所述左半区间W1[w1,A)作为所述指定的查找区间;
若所述左半区间W1[w1,A)中已用于指定索引的索引ID的记录数等于所述左半区间W1[w1,A)的区间容量,选择所述右半区间W2[A,w2]作为所述指定的查找区间。
较优的,当所述记录数小于所述查找区间的区间容量时,缩小所述查找区间的上限,包括:
当所述指定的查找区间为所述左半区间W1[w1,A)时,在所述W1[w1,A)中查询已用于指定索引的索引ID的记录数C1,若所述C1小于A-w1,所述A减小为w1+C1+1;以及
当所述指定的查找区间为所述右半区间W2[A,w2]时,在所述W2[A,w2]中查询已用于指定索引的索引ID的记录数C2,若所述C2小于w2-A+1,所述w2减小为A+C2+1。
较优的,当所述记录数等于所述指定的查找区间的区间容量时,若所述指定的查找区间是所述左半区间W1[w1,A),将其更换为所述右半区间W2[A,w2];若所述指定的查找区间是所述右半区间W2[A,w2],则确定已有的查找区间W[w1,w2]中不存在未被使用的索引ID。
较优的,选择所述当前查找区间的上限作为最小索引ID时,还包括:
检验所述当前查找区间的上限是否已被使用,若否,确定所述当前查找区间的上限作为最小索引ID;若是,表明本次查找失败。
较优的,还包括:利用确定的最小索引ID标识当前记录。
根据本发明的另一方面,提供了一种最小索引标识ID查找装置装置,包括查询模块、缩小模块、触发模块和选择模块:
所述查询模块,用于在指定的查找区间中,查询已用于指定索引的索引ID的记录数;
所述缩小模块,用于当所述记录数小于所述指定的查找区间的区间容量时,缩小所述指定的查找区间的上限,其中,缩小后的上限大于所述记录数与所述指定区间的下限之和;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010292704.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电连接器
- 下一篇:变电站标准化管理触摸查询系统





