首页> 中国专利> 一种IP地址与域名对应关系的更新方法及装置

一种IP地址与域名对应关系的更新方法及装置

摘要

本发明实施例提供了一种IP地址与域名对应关系的更新方法及装置,该方法包括:获取至少一个话单文件,对所述至少一个话单文件进行预处理,得到待入库数据文件,其中,所述待入库数据文件包括至少一条待入库数据记录,每条待入库数据记录包括:第一IP地址、第一域名及第一日期;确定所述待入库数据文件中的相同第一IP地址对应相同第一域名的第一连续出现天数;根据所述至少一条待入库数据记录中的第一IP地址、第一域名、第一日期及所述第一连续出现天数,更新第二IP地址在数据库表中所在的数据记录。应用本发明实施例,提高了IP地址和域名对应关系的准确性,提高了存储空间的利用率。

著录项

  • 公开/公告号CN106603742A

    专利类型发明专利

  • 公开/公告日2017-04-26

    原文格式PDF

  • 申请/专利权人 北京邮电大学;

    申请/专利号CN201611155172.1

  • 发明设计人 刘芳;常思源;刘军;齐勇刚;

    申请日2016-12-14

  • 分类号H04L29/12(20060101);

  • 代理机构北京柏杉松知识产权代理事务所(普通合伙);

  • 代理人项京;马敬

  • 地址 100876 北京市海淀区西土城路10号

  • 入库时间 2023-06-19 02:03:52

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-04-26

    授权

    授权

  • 2017-05-24

    实质审查的生效 IPC(主分类):H04L29/12 申请日:20161214

    实质审查的生效

  • 2017-04-26

    公开

    公开

说明书

技术领域

本发明涉及域名解析技术领域,特别是涉及一种IP地址与域名对应关系的更新方法及装置。

背景技术

网络之间互连的协议(Internet Protocol,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地址在数据库表中所在的数据记录,包括:

针对所述第一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地址和域名对应关系的更新方法的一种流程图;

图2为本发明实施例提供的IP地址和域名对应关系的更新方法的另一种流程图;

图3为本发明实施例提供的IP地址和域名对应关系的更新方法的另一种流程图;

图4为本发明实施例提供的将待入库数据记录存储于数据库表的一种示意图;

图5为本发明实施例提供的将待入库数据记录存储于数据库表的另一种示意图;

图6为本发明实施例提供的将待入库数据记录存储于数据库表的另一种示意图;

图7为本发明实施例提供的将待入库数据记录存储于数据库表的又一种示意图;

图8为本发明实施例提供的另一种将待入库数据记录存储于数据库表的又一种示意图;

图9为本发明实施例提供的另一种将待入库数据记录存储于数据库表的再一种示意图;

图10为本发明实施例提供的IP地址和域名对应关系的更新装置的一种结构示意图;

图11为本发明实施例提供的IP地址和域名对应关系的更新装置中的获取单元的结构示意图;

图12为本发明实施例提供的IP地址和域名对应关系的更新装置中的更新单元的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了解决现有技术问题,本发明实施例提供了一种IP地址和域名对应关系的更新方法及装置,以提高IP地址和域名对应关系的准确性。

下面首先对本发明实施例提供的一种IP地址和域名对应关系的更新方法进行介绍。

如图1所示,本发明实施例提供了一种IP地址与域名对应关系的更新方法,包括如下步骤:

S101,获取至少一个话单文件,对所述至少一个话单文件进行预处理,得到待入库数据文件;

可以理解的是,话单文件的个数可以为多个,一个话单文件对应一个日期,至少一个话单文件为不同日期的话单文件。其中,话单文件中包括多列数据。对话单文件进行预处理,可以得到用户所需要的待入库数据文件。其中,预处理可以包括:通过预设算法处理至少一个话单文件,得到待入库数据文件,预设算法可以包括:映射函数(map function)、简化函数(reduce function)。

其中,所述待入库数据文件包括至少一条待入库数据记录,每条待入库数据记录包括:第一IP地址、第一域名及第一日期;

具体的,所述获取至少一个话单文件,对所述至少一个话单文件进行预处理,得到待入库数据文件,包括:

获取至少一个话单文件,其中,每个话单文件包括至少两列数据;从所述至少两列数据中提取初始IP地址数据列和用户请求主机名称信息数据列,其中,所述初始IP地址和用户请求主机名称信息一一对应;过滤所述初始IP地址及所述用户请求主机名称信息两列数据,得到第一IP地址和第一用户请求主机名称信息两列数据;根据已存储的白名单文件,从所述第一用户请求主机名称信息中提取第一域名;所述第一IP地址与所述第一域名一一对应;获取所述至少一个话单文件的名称,其中,所述名称包括生成所述至少一个话单文件的第一日期;将所述第一日期对应添加到所述第一IP地址和所述第一域名中,生成至少一条待入库数据记录;针对所述第一日期中的相同日期,将同一第一IP地址对应的所有第一域名去重,得到所述待入库数据文件。

实际应用中,在获取的至少一个话单文件中,提取初始IP地址数据列和用户请求主机名称信息数据列,这里的IP地址为服务器IP地址,即用户访问的服务器地址,其中,提取出来的初始IP地址数据列和用户请求主机名称信息数据列中,初始IP地址和用户请求主机名称信息一一对应,也就是,一个初始IP地址对应一个用户请求主机名称信息,但是相同的初始IP地址不是唯一对应同一个用户请求主机名称信息,例如,表1示出了初始IP地址数据列和host数据列,用户请求主机名称信息可表示为“host”。

表1

通常,从话单文件中提取的初始IP地址数据列和用户请求主机名称信息数据列中既包括合法的IP地址与host,也包括非法IP地址、内网IP地址及非法host。需要注意的是,这里需要对初始IP地址数据列和用户请求主机名称信息数据列进行过滤,得到过滤后的初始IP地址数据列和用户请求主机名称信息数据列。

具体的,所述过滤所述初始IP地址及所述用户请求主机名称信息两列数据,得到第一IP地址和第一目标用户请求主机名称信息两列数据,包括:

在所述初始IP地址数据列及所述用户请求主机名称信息数据列,查找预设条件范围内的初始IP地址和用户请求主机名称信息,将查找获得的预设条件范围内的初始IP地址和用户请求主机名称信息删除,得到第一IP地址和第一用户请求主机名称信息两列数据。

需要注意的是,非法IP地址和非法host是在生成话单文件进行数据采集时采集到的错误的非法IP地址和非法host,所以,在执行入库逻辑(将话单文件输入到数据库表的操作)之前,过滤掉这些非法IP地址和非法host,提高了存储空间的利用率。

具体的,在本发明实施例的一种可能的实现方式中,预设条件范围包括:非法IP地址、内网IP地址、非法host。

其中,非法IP地址包括:不完整的IP地址(例如,101.226)、或者初始IP地址实际上不是IP地址,例如,tel:12679。

本方案是针对外网IP地址的研究,对应内网IP需要全部过滤掉,其中,内网IP地址包括:a类内网范围10.0.0.0至10.255.255.255,b类内网范围172.16.0.0至172.31.255.255,c类内网范围192.168.0.0至192.168.255.255。

在话单文件中,有很多非法的host字段,这些host字段大多是由于采集话单文件时,生成的不完整的host。例如:“tjajtg,m”、“wap.3xiaren.comhttp:”、“www,baido.com”、“www...moc”、“cat.sh.cn.”、“::”等。但是,类似于“test.mzread.com:8080”的host虽然多了端口号“8080”,但是“test.mzread.com:8080”是合法的、完整的,需要将的host从“test.mzread.com”提取出来。另外,有的host字段为IP地址形式的,这类host也能够在一定程度从上反映主机信息,故不删除形式为IP地址的host过滤。

将预设条件范围内的非法IP地址、内网IP地址及非法host过滤后,得到过滤后的初始IP地址数据列及用户请求主机名称信息数据列作为第一IP地址和第一用户请求主机名称信息两列数据。

实际应用中,待入库数据文件中没有host,而是该host对应的域名,所以,需要从host提取域名,host表示用户请求主机名称信息,域名是指用户请求的域名,例如,用户请求主机名称信息“www.sohu.com”的域名为“sohu”,“www.sports.sina.com.cn”的域名为“sports.sina”。可见,从host中提取域名,需要准确的识别host结尾中不属于域名部分等字符,这里,引入一个白名单,其中,白名单包括:“com”、“com.cn”“com.co”“com.hk”“edu.cn”“net”“net.cn”等所有常见的host结尾字符串,但不限于此。这种提取域名的方式,能够准确识别host的结尾字符,从而将正确的域名从host中提取出来。通常域名用“domain”来表示。

在host中提取出来域名后,为每一条待入库数据记录添加一个日期,其中,每个话单文件的名称包括生成该话单文件的日期,例如,话单文件的名称以生成话单文件的日期命名,或者话单文件的名称以话单文件的内容的类型及日期命名。在话单文件的名称中提取生成该话单文件的日期,并将该日期作为第一日期,添加到待入库数据文件中的每条待入库数据记录中,例如,待入库数据记录为“166.88.8.172 baidu”,提取该待入库数据记录对应的话单文件的名称中的日期为“20160102”,将“20160102”添加到该待入库数据记录中,待入库数据记录更新为“166.88.8.172 baidu 20160102”。

需要注意的是,待入库数据文件可能来自于不同的日期的话单文件,所以待入库数据记录中第一日期可以包括多个日期。例如,表2所示的待入库数据文件。

表2

166.88.8.172baidu2016010223.44.156.40sina20160202120.25.240.235sina0120160303114.113.101.47google20160303………………23.44.156.56hao12320130509………………

具体的,如图2所示,所述针对所述第一日期中的相同日期,将同一第一IP地址对应的所有第一域名去重,得到所述待入库数据文件的具体步骤包括:

步骤1,针对所述第一日期中的相同日期,通过预设算法,计算同一第一IP地址对应的所有第一域名中任意两个第一域名对应的第一汉明距离;

可理解的是,将待入库数据文件中,相同日期的待入库数据记录中,同一第一IP地址对应的所有第一域名去重,例如,日期为“20160202”的待入库数据记录有5条,其中,IP地址为“1.1.1.1”共对应3个域名,例如:“1.1.1.1 baidu 20160202”、“1.1.1.1 sina 20160202”、“1.1.1.1 google 20160202”。

这里,预设算法为:计算一个字符串变换成另外一个字符串所需要替换的字符个数的算法,优选的,预设算法包括:汉明距离算法。其中,一个域名为一个字符串,两个等长字符串之间的汉明距离是两个字符串对应位置的不同字符的个数。所以,通过汉明距离算法,计算同一第一IP地址对应的所有域名中任意两个第一域名之间的汉明距离。

举例而言,第一IP地址对应两个第一域名,分别为域名“sina”与域名“sina 01”,根据公式:

计算域名“sina”与域名“sina 01”的汉明距离,其中,H为域名“sina”与域名“sina 01”的汉明距离,n为域名“sina 01”中字符个数,需要注意的是,n通常取两个域名的字符个数较多的域名所对应的字符个数,Vi为域名“sina”或域名“sina>j为域名“sina”或域名“sina>i为域名“sina”中的第i字符时,当Vj为域名“sina>i为域名“sina>j为域名“sina”中的第j字符。上述公式用于计算同一第一IP地址对应的所有域名中任意两个第一域名之间的汉明距离,将该汉明距离作为第一汉明距离。

步骤2,根据所述第一汉明距离,通过预设公式,得到所述任意两个第一域名的字符串的第一相似度;

具体的,通过预设公式,获得任意两个第一域名的字符串的第一相似度,例如,域名1的字符串为P,域名2的字符串为T,域名1和域名2的汉明距离为H,根据预设公式:

获得域名1对应的字符串P和域名2对应的字符串T之间的第一相似度。

其中,Adj(P,T)为域名1对应的字符串P和域名2对应的字符串T之间的第一相似度,H为域名1和域名2的汉明距离,max H为域名1和域名2的最大第一汉明距离。

步骤3,判断所述第一相似度是否大于第一预设阈值;

步骤4,当判断结果为是时,保留所述任意两个第一域名在所述入库数据文件中;

步骤5,当判断结果为否时,删除所述任意两个第一域名中的任一第一域名所在的待入库数据记录,得到更新后的待入库数据文件。

例如,第一预设阈值为A,Adj(P,T)为域名1对应的字符串P和域名2对应的字符串T之间的第一相似度,当Adj(P,T)>A时,确定域名1和域名2为不相同的域名,对域名1和域名2不进行任何操作,即保留域名1和域名2在入库数据文件中。当Adj(P,T)≤A时,确定域名1和域名2为相同的域名,删除域名1和域名2所在的待入库数据记录,得到更新后的待入库数据文件。

S102,确定所述待入库数据文件中的相同第一IP地址对应相同第一域名的第一连续出现天数;

其中,所述第一连续出现天数为所述待入库数据文件中相同第一IP地址对应相同第一域名连续日期内出现的天数;

例如,确定待入库数据文件中,第一IP地址“1.1.1.1”对应第一域名“baidu”的连续出现的天数,当待入库数据文件中第一IP地址“1.1.1.1”对应第一域名“baidu”所在的待入库数据记录中的第一日期包括:“20160102”、“20160103”及“20160104”出现,则第一IP地址“1.1.1.1”对应第一域名“baidu”的连续出现的天数为3。

S103,根据所述至少一条待入库数据记录中的第一IP地址、第一域名、第一日期及所述第一连续出现天数,更新第二IP地址在数据库表中所在的数据记录;

其中,所述第二IP地址在数据库表中所在的数据记录包括:所述第二IP地址第二域名、第二日期及第二连续出现天数。

具体的,如图3所示,所述根据所述至少一条待入库数据记录中的第一IP地址、第一域名、第一日期及所述第一连续出现天数,更新第二IP地址在数据库表中所在的数据记录,包括如下步骤:

步骤1,针对所述第一IP地址,判断所述数据库表中是否存在第二IP地址与所述第一IP地址相同;

需要强调的是,在将待入库数据文件中的待入库数据记录存储到数据库表时,需要逐条读取待入库数据文件中的待入库数据记录,并判断在数据库表中是否存在第二IP地址与待入库数据记录中的第一IP地址是否相同。

步骤2,当判断结果为否时,将所述第一IP地址所在的待入库数据记录及所述第一连续出现天数存储于所述数据库表中;

具体的,将第一IP地址和第二IP地址进行比对,当数据库表中不存在第二IP地址与第一IP地址相同时,直接将该第一IP地址所在的待入库数据记录存储于数据库表中,也就是将第一IP地址、第一域名、第一日期存储于所述数据库表中。

如图4所示,本发明实施例提供的将待入库数据记录存储于数据库表的一种示意图,包括数据库表410、待入库数据文件420及数据库表430,其中,数据库表410为将一条待入库数据记录存储该数据库表410之前的数据库表,待入库数据文件包括多条待入库数据记录,数据库表430为将一条待入库数据记录存储于该数据库表410之后的数据库表。这里,第一IP地址所在的待入库数据记录为“1.1.1.1 sina 20160101”,该第一IP地址“1.1.1.1”在数据库表中不存在,且该待入库数据记录的第一连续出现天数为1,则将第一IP地址所在的待入库数据记录为“1.1.1.1 sina 20160101”及该待入库数据记录的第一连续出现天数存储到数据库表410后,得到数据库表430,其中,数据库表430内包括数据记录为“1.1.1.1 sina 20160101 1”。

步骤3,当判断结果为是时,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期及第二连续出现天数。

当所述数据库表中存在第二IP地址与第一IP地址相同时,需要将该第二IP地址在数据库表中的数据记录进行更新,即更新该第二IP地址在所数据记录中的第二域名、第二日期及第二连续出现天数。

具体的,所述当判断结果为是时,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期及第二连续出现天数,包括:

当判断结果为是时,判断所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名是否相同;

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同时,将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中;

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名相同时,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期、及第二连续出现天数。

实际应用中,当数据库表中存在第二IP地址与待入库数据记录中的第一IP地址相同时,需要判断该第一IP地址对应的第一域名与第二IP对应的第二域名是否相同,根据第一域名和第二域名是否相同的判断结果,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期及第二连续出现天数。

其中,所述判断所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名是否相同,包括:

计算所述第一域名与所述第二域名的第二汉明距离;

根据所述第二汉明距离,通过预设公式,确定所述第一域名与所述第二域名的第二相似度;

当所述第二相似度大于第二预设阈值时,判断为所述第一IP地址在所述数据库表中对应的第二域名与所述第一域名不相同;

当所述第二相似度小于等于所述第二预设阈值时,判断为所述第一IP地址在所述数据库表中对应的第二域名与所述第一域名相同。

举例而言,在判断数据库表中存在第二IP地址与待入库数据记录中的第一IP地址相同的基础上,判断第二IP地址对应的第二域名与第一IP地址对应的第一域名是否相同,首先,需要计算第一域名和第二域名的第二汉明距离。

具体的,第一域名为“google”,第二域名为“baidu”,根据公式:

计算第一域名为“google”,第二域名为“baidu”的第二汉明距离,其中,H为第一域名“google”与第二域名“baidu”的第二汉明距离,n为第一域名或第二域名的字符个数,需要注意的是,n通常取第一域名或第二域名的字符个数较多的域名所对应的字符个数,Vi为第一域名或第二域名中的第i个字符,Vj为第二域名或第一域名中的第j个字符,需要注意的是,当Vi为第一域名中的第i字符时,当Vj为第二域名中的第j字符,或者,当Vi为第二域名中的第i字符时,当Vj为第一域名中的第j字符。

其次,根据预设公式:

确定第一域名“google”和第二域名“baidu”的第二相似度。其中,Adj(P,T)为第一域名对应的字符串P(即,google)和第二域名对应的字符串T(即,baidu)之间的第二相似度,H为第一域名和第二域名的第二汉明距离,max H为第一域名和第二域名的最大第二汉明距离。

例如,第二预设阈值为B,当Adj(P,T)>B时,第一域名和第二域名不相同;当Adj(P,T)≤B时,第一域名和第二域名相同。

具体的,在本发明实施例的一种实现方式中,所述当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同时,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期、及第二连续出现天数,包括:

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同,且所述第一连续出现天数小于所述第二连续出现天数时,将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中;

如图5所示,本发明实施例提供的将待入库数据记录存储于数据库表的另一种示意图,包括数据库表510、待入库数据文件520及数据库表530,其中,数据库表510为将一条待入库数据记录存储该数据库表510之前的数据库表,待入库数据文件包括多条待入库数据记录,数据库表530为将一条待入库数据记录存储于该数据库表510之后的数据库表。这里,第一IP地址所在的待入库数据记录为“1.1.1.1 sina01 20160106”,且该第一IP地址所在的待入库数据记录的第一连续出现天数为2,数据库表510中的数据记录“1.1.1.1 sina 20160101 5”的第二域名“sina”与第一域名“sina01”不同,第二连续出现天数为“5”,可见,第一连续出现天数“2”小于第二连续出现天数“5”,则将第一IP地址所在的待入库数据记录为“1.1.1.1 sina01 20160106”及该待入库数据记录的第一连续出现天数“2”存储到数据库表510后,得到数据库表530,其中,数据库表530内的数据记录包括:“1.1.1.1 sina 20160101 5”及“1.1.1.1 sina01 20160106 2”。

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同,且所述第一连续出现天数大于所述第二连续出现天数时,删除所述第二IP地址所在的数据记录,并将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中;

举例而言,如图6所示,本发明实施例提供的将待入库数据记录存储于数据库表的另一种示意图,包括数据库表610、待入库数据文件620及数据库表630,其中,数据库表610为将一条待入库数据记录存储该数据库表510之前的数据库表,待入库数据文件包括多条待入库数据记录,数据库表630为将一条待入库数据记录存储于该数据库表610之后的数据库表。这里,第一IP地址所在的待入库数据记录为“1.1.1.1 sina01 20160106”,且该第一IP地址所在的待入库数据记录的第一连续出现天数为3,数据库表610内包括:数据记录“1.1.1.1 sina 20160101 2”,且该数据记录中的第二域名“sina”与第一域名“sina01”不同,第二连续出现天数为“2”,可见,第一连续出现天数“3”大于第二连续出现天数“2”,则将第一IP地址所在的待入库数据记录为“1.1.1.1 sina01 20160106”及该待入库数据记录的第一连续出现天数“3”存储到数据库表610后,并删除数据库表内的数据记录“1.1.1.1 sina 20160101 2”,得到数据库表630,其中,数据库表630内的数据记录包括:“1.1.1.1 sina01 201601016 3”。

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同、所述第二IP地址在所述数据库表中对应的第三域名与所述第一域名不相同,且所述第一连续出现天数小于所述第二连续出现天数、大于第三连续出现天数时,删除所述第三域名所在的数据记录,并将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中,其中,所述第三域名与所述第一域名及所述第二域名均不相同,所述第三连续出现天数为所述第二IP地址对应所述第三域名所在的数据记录的连续出现的天数。

如图7所示,本发明实施例提供的将待入库数据记录存储于数据库表的又一种示意图,包括数据库表710、待入库数据文件720及数据库表730,其中,数据库表710为将一条待入库数据记录存储该数据库表710之前的数据库表,待入库数据文件包括多条待入库数据记录,数据库表730为将一条待入库数据记录存储于该数据库表710之后的数据库表。这里,第一IP地址所在的待入库数据记录为“1.1.1.1 google 20160106”,且该第一IP地址所在的待入库数据记录的第一连续出现天数为3,数据库表710包括:数据记录“1.1.1.1 sina 20160101 6”及数据记录“1.1.1.1 baidu 20160101 2”,其中,第二域名“sina”及第三域名“baidu”均分别与第一域名“google”不同,数据记录“1.1.1.1 sina 20160101 6”中的第二连续出现天数为“6”,数据记录“1.1.1.1 baidu 20160101 2”的第三连续出现天数为“2”,可见,第一连续出现天数“3”小于第二连续出现天数“6”、大于第三连续出现天数“2”,则将第一IP地址所在的待入库数据记录为“1.1.1.1 google 20160106”及该待入库数据记录的第一连续出现天数“3”存储到数据库表710后,删除数据库表内的数据记录“1.1.1.1 baidu 20160101 2”,得到数据库表730,其中,数据库表730内的数据记录包括:“1.1.1.1 sina 20160101 6”及“1.1.1.1 google 20160106 3”。

具体的,在本发明实施例的一种实现方式中,所述当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名相同时,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期、及第二连续出现天数,包括:

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名相同,且所述第一连续出现天数等于所述第二连续出现天数时,更新所述第二IP地址在所述数据库表中对应的第二日期为所述第一日期,更新所述第二连续出现天数为第三连续出现天数,其中,所述第三连续出现天数等于所述第一日期减去所述第二日期的差,与所述第一连续出现天数的和;

如图8所示,本发明实施例提供的另一种将待入库数据记录存储于数据库表的又一种示意图,包括数据库表810、待入库数据文件820及数据库表830,其中,数据库表810为将一条待入库数据记录存储该数据库表810之前的数据库表,待入库数据文件包括多条待入库数据记录,数据库表830为将一条待入库数据记录存储于该数据库表810之后的数据库表。这里,第一IP地址所在的待入库数据记录为“1.1.1.1 sina 20160106”,且该第一IP地址所在的待入库数据记录的第一连续出现天数为3,数据库表810中包括:数据记录“1.1.1.1 sina 20160101 3”的第二域名“sina”与第一域名“sina”相同,第二连续出现天数为“3”,可见,第一连续出现天数“3”等于第二连续出现天数“3”,则将数据库表810内的数据记录“1.1.1.1 sina 20160101 3”的第二日期“20160101”更新为第一日期“20160106”、第二连续出现天数“3”更新为第三连续出现天数“8”,其中,第三连续出现天数等于第一日期(20160106)减去第二日期(20160101)的差(5),差(5)再加上第一连续出现天数“3”的和“8”,“8”为第三连续出现天数。这样,得到数据库表830内的数据记录包括:“1.1.1.1 sina 20160106 8”。

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名相同,且所述第一连续出现天数小于所述第二连续出现天数、所述第一连续出现天数大于所述第二IP地址对应的第三连续出现天数,更新所述第二IP地址在所述数据库表中对应的第二日期为所述第一日期,更新所述第二连续出现天数为第四连续出现天数,删除所述第三连续出现天数所在的数据记录,其中,所述第四连续出现天数等于所述第一日期减去所述第二日期的差,与所述第一连续出现天数的和;所述第三连续出现天数所在的数据记录中的第三域名与所述第一域名不相同。

如图9所示,本发明实施例提供的另一种将待入库数据记录存储于数据库表的再一种示意图,包括数据库表910、待入库数据文件920及数据库表930,其中,数据库表910为将一条待入库数据记录存储该数据库表910之前的数据库表,待入库数据文件包括多条待入库数据记录,数据库表930为将一条待入库数据记录存储于该数据库表910之后的数据库表。这里,第一IP地址所在的待入库数据记录为“1.1.1.1 sina 20160106”,且该第一IP地址所在的待入库数据记录的第一连续出现天数为3,数据库表910内包括:数据记录“1.1.1.1 sina 20160101 6”和数据记录“1.1.1.1 baidu 20160101 1”,且数据记录“1.1.1.1 sina 20160101 6”中的第二域名“sina”与第一域名“sina”相同,数据记录“1.1.1.1 sina 20160101 6”中的第二连续出现天数为“6”,数据记录“1.1.1.1 baidu 20160101 1”的第三域名“baidu”与第一域名不相同,且数据记录“1.1.1.1 baidu 20160101 1”中的第三连续出现天数为“2”,可见,第一连续出现天数“3”小于第二连续出现天数“6”,大于第三连续出现天数“2”,则更新所述第二IP地址在所述数据库表中对应的第二日期“20160101”为第一日期“20160106”,更新第二连续出现天数“6”为第四连续出现天数“11”,删除数据记录“1.1.1.1 baidu 20160101 2”,其中,第四连续出现天数“11”等于第一日期“20160106”减去第二日期“20160101”的差“5”,差“5”与第一连续出现天数“6”的和该和即为“11”,其中,数据库表930内的数据记录包括:“1.1.1.1 sina 20160101 11”。

本发明实施例中,获取至少一个话单文件,并对至少一个话单文件进行预处理,得到待入库数据文件,确定该待入库数据文件中的相同第一IP地址对应相同第一域名的第一连续出现天数,根据至少一条待入库数据记录中的第一IP地址、第一域名、第一日期及第一连续出现天数,更新第二IP地址在数据库表中所在的数据记录。本方案中,根据待入库数据记录的第一IP地址、第一域名、第一日期及第一连续出现天数,不断更新数据库表中的IP地址与域名对应关系,提高了IP地址和域名对应关系的准确性。

如图10所示,本发明实施例提供的一种IP地址和域名对应关系的更新装置,该装置1000包括:

获取单元1010,用于获取至少一个话单文件,对所述至少一个话单文件进行预处理,得到待入库数据文件,其中,所述待入库数据文件包括至少一条待入库数据记录,每条待入库数据记录包括:第一IP地址、第一域名及第一日期;

确定单元1020,用于确定所述待入库数据文件中的相同第一IP地址对应相同第一域名的第一连续出现天数,其中,所述第一连续出现天数为所述待入库数据文件中相同第一IP地址对应相同第一域名连续日期内出现的天数;

更新单元1030,用于根据所述至少一条待入库数据记录中的第一IP地址、第一域名、第一日期及所述第一连续出现天数,更新所述第一IP地址在数据库表中对应的第二域名、第二日期及第二连续出现天数;其中,所述第二连续出现天数由所述第一连续出现天数、第一日期及第二日期确定。

可选的,如图11所示,所述获取单元1010包括:

第一获取子单元1011,用于获取至少一个话单文件,其中,每个话单文件包括至少两列数据;

第一提取子单元1012,用于从所述至少两列数据中提取初始IP地址数据列和用户请求主机名称信息数据列,其中,所述初始IP地址和用户请求主机名称信息一一对应;

过滤子单元1013,用于过滤所述初始IP地址数据列及所述用户请求主机名称信息数据列,得到第一IP地址和第一用户请求主机名称信息两列数据;

第二提取子单元1014,用于根据已存储的白名单文件,从所述第一用户请求主机名称信息中提取第一域名;所述第一IP地址与所述第一域名一一对应;

第二获取子单元1015,用于获取所述至少一个话单文件的名称,其中,所述名称包括生成所述至少一个话单文件的第一日期;

添加子单元1016,用于将所述第一日期对应添加到所述第一IP地址和所述第一域名中,生成至少一条待入库数据记录;

去重子单元1017,用于针对所述第一日期中的相同日期,将同一第一IP地址对应的所有第一域名去重,得到所述待入库数据文件。

可选的,过滤子单元1013具体用于,

在所述初始IP地址数据列及所述用户请求主机名称信息数据列中,查找预设条件范围内的初始IP地址和用户请求主机名称信息,将查找获得的预设条件范围内的初始IP地址和用户请求主机名称信息删除,得到第一IP地址和第一用户请求主机名称信息两列数据。

可选的,所述去重子单元1017具体用于,

针对所述第一日期中的相同日期,通过预设算法,计算同一第一IP地址对应的所有第一域名中任意两个第一域名对应的第一汉明距离;

根据所述第一汉明距离,通过预设公式,得到所述任意两个第一域名的字符串的第一相似度;

判断所述第一相似度是否大于第一预设阈值;

当判断结果为是时,保留所述任意两个第一域名在所述入库数据文件中;

当判断结果为否时,删除所述任意两个第一域名中的任一第一域名所在的待入库数据记录,得到更新后的待入库数据文件。

可选的,如图12所示,所述更新单元1030包括:

判断子单元1031,用于针对所述第一IP地址,判断所述数据库表中是否存在第二IP地址与所述第一IP地址相同;

存储子单元1032,用于当判断结果为否时,将所述第一IP地址所在的待入库数据记录及所述第一连续出现天数存储于所述数据库表中;

更新子单元1033,用于当判断结果为是时,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期及第二连续出现天数。

可选的,所述更新子单元1033具体用于,当判断结果为是时,判断所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名是否相同;

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同时,将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中;

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名相同时,更新所述第二IP地址在所述数据库表中对应的第二域名、第二日期、及第二连续出现天数。

可选的,所述更新子单元1033具体用于,计算所述第一域名与所述第二域名的第二汉明距离;

根据所述第二汉明距离,通过预设公式,确定所述第一域名与所述第二域名的第二相似度;

当所述第二相似度大于第二预设阈值时,判断为所述第一IP地址在所述数据库表中对应的第二域名与所述第一域名不相同;

当所述第二相似度小于或等于所述第二预设阈值时,判断为所述第一IP地址在所述数据库表中对应的第二域名与所述第一域名相同。

可选的,所述更新子单元1033具体用于,当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同,且所述第一连续出现天数小于所述第二连续出现天数时,将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中;

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同,且所述第一连续出现天数大于所述第二连续出现天数时,删除所述第二IP地址所在的数据记录,并将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中;

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名不相同、所述第二IP地址在所述数据库表中对应的第三域名与所述第一域名不相同,且所述第一连续出现天数小于所述第二连续出现天数、大于第三连续出现天数时,删除所述第三域名所在的数据记录,并将所述第一IP地址、所述第一域名、所述第一日期、所述第一连续出现天数存储于所述数据库表中,其中,所述第三域名与所述第一域名及所述第二域名均不相同,所述第三连续出现天数为所述第二IP地址对应所述第三域名所在的数据记录的连续出现的天数。

可选的,所述更新子单元1033具体用于,当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名相同,且所述第一连续出现天数等于所述第二连续出现天数时,更新所述第二IP地址在所述数据库表中对应的第二日期为所述第一日期,更新所述第二连续出现天数为第三连续出现天数,其中,所述第三连续出现天数等于所述第一日期减去所述第二日期的差,与所述第一连续出现天数的和;

当所述第二IP地址在所述数据库表中对应的第二域名与所述第一域名相同,且所述第一连续出现天数小于所述第二连续出现天数、所述第一连续出现天数大于所述第二IP地址对应的第三连续出现天数,更新所述第二IP地址在所述数据库表中对应的第二日期为所述第一日期,更新所述第二连续出现天数为第四连续出现天数,删除所述第三连续出现天数所在的数据记录,其中,所述第四连续出现天数等于所述第一日期减去所述第二日期的差,与所述第一连续出现天数的和;所述第三连续出现天数所在的数据记录中的第三域名与所述第一域名不相同。

本发明实施例中,获取至少一个话单文件,并对至少一个话单文件进行预处理,得到待入库数据文件,确定该待入库数据文件中的相同第一IP地址对应相同第一域名的第一连续出现天数,根据至少一条待入库数据记录中的第一IP地址、第一域名、第一日期及第一连续出现天数,更新第二IP地址在数据库表中所在的数据记录。本方案中,根据待入库数据记录的第一IP地址、第一域名、第一日期及第一连续出现天数,不断更新数据库表中的IP地址与域名对应关系,提高了IP地址和域名对应关系的准确性。

对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号