[发明专利]IP区间查找方法和装置有效

专利信息
申请号: 201410134781.3 申请日: 2014-04-03
公开(公告)号: CN103902715B 公开(公告)日: 2017-12-22
发明(设计)人: 洪超 申请(专利权)人: 北京国双科技有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京康信知识产权代理有限责任公司11240 代理人: 李志刚,吴贵明
地址: 100086 北京市海淀区*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: ip 区间 查找 方法 装置
【说明书】:

技术领域

发明涉及数据库领域,具体而言,涉及一种IP区间查找方法和装置。

背景技术

在数据库使用过程中,经常会存在一些区间匹配的情况,如根据IP(Internet Protocol,互联网之间互联的协议,简称IP)在IP数据库里查找出其所属的IP网段,进而得知该IP对应的地理信息等。以IP的区间匹配做举例说明,从IPLocationV3数据库的IPLocation表里通过e_session(会话数据表)里的IP进行区间查找匹配,返回匹配成功的行计数:

select count(*)from E_Session s

inner join IPLocationV3.dbo.IpLocation l on s.ip between l.BeginIp and l.EndIp

where s.updatetime>'2013-3-5'

通过上述方式执行IP区间匹配会非常慢,原因如下:从上述代码中可以看出,在查询区间值(ip between beginIp and EndIp)时,首先从IP数据库的IPLocation表中为driver表里的每一行查找出IP>=BeginIp的所有行(SeekPredicates),再从查找出来的所有行进行筛选比较IP<=EndIP(Predicate),这样会导致筛选查询的数据量特别大。假设driver表里的每一行都是最大IP,那么IP>=BeginIP所得出的行将是driver表条目数与Inner表条目数乘积的个数,得出的行的数量非常庞大,导致对IP区间匹配的速度慢。

针对现有技术中对IP区间匹配的速度慢的问题,目前尚未提出有效的解决方案。

发明内容

本发明的主要目的在于提供一种IP区间查找方法和装置,以解决对IP区间匹配的速度慢的问题。

为了实现上述目的,根据本发明的一个方面,提供了一种IP区间查找方法。根据本发明的IP区间查找方法包括:获取用于进行IP区间查找的多个IP地址;获取多个IP地址的统计信息,统计信息包括多个IP地址中IP地址的数量;以及基于IP地址的数量采用多个匹配条件同时对多个IP地址执行IP区间查找,其中,多个匹配条件为用于对多个IP地址执行IP区间查找的条件。

进一步地,基于数量采用多个匹配条件同时对多个IP地址执行IP区间查找包括:从统计信息确定多个IP地址中IP地址的数量;如果多个IP地址中IP地址的数量大于1,则建立所有IP区间对应的值的临时表;以及通过临时表对多个IP地址执行IP区间查找。

进一步地,获取的多个IP地址为IP列表,在获取多个IP地址的统计信息之前,IP区间查找方法还包括:获取IP列表的过滤条件,过滤条件用于对IP列表进行过滤;判断IP列表是否具有索引;如果判断出IP列表不具有索引,则建立过滤条件对应的索引,过滤条件对应的索引用于过滤掉IP列表中不满足过滤条件的IP地址;以及将过滤条件对应的索引作为统计信息。

进一步地,基于IP地址的数量采用多个匹配条件同时对多个IP地址执行IP区间查找包括:利用过滤条件对应的索引从多个IP地址选取满足过滤条件的IP地址;以及对满足过滤条件的IP地址执行IP区间查找。

进一步地,在获取用于IP进行区间查找的多个IP地址之后,IP区间查找方法还包括:对获取的多个IP地址进行去重,其中,基于IP地址的数量采用多个匹配条件同时对多个IP地址执行IP区间查找包括:基于IP地址的数量采用多个匹配条件同时对去重后的多个IP地址执行IP区间查找。

为了实现上述目的,根据本发明的另一方面,提供了一种IP区间查找装置。根据本发明的IP区间查找装置包括:第一获取单元,用于获取用于进行IP区间查找的多个IP地址;第二获取单元,用于获取多个IP地址的统计信息,统计信息包括多个IP地址中IP地址的数量;以及查找单元,用于基于IP地址的数量采用多个匹配条件同时对多个IP地址执行IP区间查找,其中,多个匹配条件为用于对多个IP地址执行IP区间查找的条件。

进一步地,查找单元包括:确定模块,用于从统计信息确定多个IP地址中IP地址的数量;建立模块,用于当多个IP地址中IP地址的数量大于1时,建立所有IP区间对应的值的临时表;以及第一查找模块,用于通过临时表对多个IP地址执行IP区间查找。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410134781.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top