一种网址存储匹配方法及装置.pdf

上传人:1****2 文档编号:4043584 上传时间:2018-08-12 格式:PDF 页数:17 大小:980.70KB
返回 下载 相关 举报
摘要
申请专利号:

CN201510020607.0

申请日:

2015.01.15

公开号:

CN104537107A

公开日:

2015.04.22

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 17/30申请日:20150115|||公开

IPC分类号:

G06F17/30

主分类号:

G06F17/30

申请人:

中国联合网络通信集团有限公司

发明人:

尹为强; 罗云彬; 赵锡成; 王伟华

地址:

100033北京市西城区金融大街21号

优先权:

专利代理机构:

北京安信方达知识产权代理有限公司11262

代理人:

白莹; 栗若木

PDF下载: PDF下载
内容摘要

本发明公开了一种网址存储匹配方法及装置,上述方法包括以下步骤:预处理URL库中的每个原始URL,得到保留域名的URL;将所述保留域名的URL转换为大写字母并进行域名倒排,得到待存储的URL;为所述待存储的URL创建字典树;根据所述创建的字典树,查询待匹配的URL。本发明公开的网址存储匹配方法及装置,能够解决现有的URL存储匹配方法无法实现精确匹配、占用空间较大及部分匹配正确率不高等问题。

权利要求书

权利要求书
1.  一种网址存储匹配方法,其特征在于,包括以下步骤:
预处理统一资源定位符(URL)库中的每个原始URL,得到保留域名 的URL;
将所述保留域名的URL转换为大写字母并进行域名倒排,得到待存储 的URL;
为所述待存储的URL创建字典树;
根据所述创建的字典树,查询待匹配的URL。

2.  如权利要求1所述的网址存储匹配方法,其特征在于,所述根据所 述创建的字典树,查询所述待匹配的URL包括:预处理所述待匹配的URL, 得到保留域名的URL,将所述保留域名的URL转换为大写字母并进行域名 倒排,得到处理后的URL,依次查询所述字典树的节点,判断是否匹配所 述处理后的URL。

3.  如权利要求1或2所述的网址存储匹配方法,其特征在于:所述预 处理URL,得到保留域名的URL包括:去除所述URL的http协议标识、 路径部分以及端口号,得到保留域名的URL。

4.  如权利要求1所述的网址存储匹配方法,其特征在于,将所述保留 域名的URL转换为大写字母并进行域名倒排,得到待存储的URL包括:将 所述保留域名的URL转换为大写字母,将转换为大写字母的URL以点号为 间隔从左至右的域名按照以点号为间隔从右至左的顺序排列,得到待存储的 URL。

5.  如权利要求1所述的网址存储匹配方法,其特征在于:为所述待存 储的URL创建字典树前,还包括:为所述字典树的每个节点初始化用于存 储字符“.”及大写字母字符的字符数组。

6.  一种网址存储匹配装置,其特征在于:包括第一处理模块、第二处 理模块、字典树创建模块以及查询模块,
所述第一处理模块,用于预处理URL库中的每个原始URL,得到保留 域名的URL;
所述第二处理模块,用于将所述保留域名的URL转换为大写字母并进 行域名倒排,得到待存储的URL;
所述字典树创建模块,用于为所述待存储的URL创建字典树;
所述查询模块,用于根据所述创建的字典树,查询待匹配的URL。

7.  如权利要求6所述的网址存储匹配装置,其特征在于:所述查询模 块,用于根据所述创建的字典树,查询所述待匹配的URL包括:预处理所 述待匹配的URL,得到保留域名的URL,将所述保留域名的URL转换为大 写字母并进行域名倒排,得到处理后的URL,依次查询所述字典树的节点, 判断是否匹配所述处理后的URL。

8.  如权利要求6或7所述的网址存储匹配装置,其特征在于:所述第 一处理模块或所述查询模块,用于预处理URL,得到保留域名的URL包括: 去除所述URL的http协议标识、路径部分以及端口号,得到保留域名的 URL。

9.  如权利要求6所述的网址存储匹配装置,其特征在于:所述第二处 理模块,用于将所述保留域名的URL转换为大写字母并进行域名倒排,得 到待存储的URL包括:将所述保留域名的URL转换为大写字母,将转换为 大写字母的URL以点号为间隔从左至右的域名按照以点号为间隔从右至左 的顺序排列,得到待存储的URL。

10.  如权利要求6所述的网址存储匹配装置,其特征在于:所述字典树 创建模块,于创建所述字典树前,还用于为所述字典树的每个节点初始化用 于存储字符“.”及大写字母字符的字符数组。

说明书

说明书一种网址存储匹配方法及装置
技术领域
本发明涉及海量数据存储和查询领域,尤其涉及一种网址存储匹配方法 及装置。
背景技术
目前,随着网络通信的日益发展,移动终端无线上网每天产生的是数以 亿计,占用存储空间TB量级的海量数据,一个月的海量数据更是达到万亿、 PB量级。从该海量数据库中能够挖掘各种有用信息,比如统计每月Top1000 网站点击次数排名。由于上网记录中包含的网址信息是详细的统一资源定位 符(Uniform Resource Locator,URL)链接,因此,当需要针对同一个网站 的不同URL进行归类统计时,会遇到如何将URL转换匹配到网站名称的问 题。比如:两个URL:www.baidu.com和map.baidu.com都转换匹配为网站 名称“百度”。
目前为了解决上述URL检索匹配问题,主要有两种方法:基于哈希表 存储匹配方法和基于字典树存储匹配方法。
于此,以表1所示的URL库内容以及表2所示的手机无线上网记录提 取URL为基础说明基于哈希表存储匹配方法以及基于字典树存储匹配方 法。
表1URL库内容表


其中,如表1所示,URL库内容表中每条记录分为URL和网站名称两 个字段。
表2 手机无线上网记录URL提取表


如表2所示,从每月手机无线上网记录中提取的访问网址URL每条表 示一次点击访问。该URL是完整网址,包括http协议标识、路径目录以及 可能的域名端口号等信息。
具体而言,基于哈希表存储方法包括:遍历URL库(即表1),将每 条URL预处理,使用URL作为哈希表键值对的key,使用URL对应的网站 名称作为哈希表键值对的value。于此,哈希表例如表3所示。
表3URL库载入的哈希表
m.sohu.com 搜狐手机 taobao.com 淘宝网 qzone.qq.com QQ空间 m.taobao.com 手机版淘宝网 google.com 谷歌
接着,对待匹配的URL进行预处理。预处理主要分为去掉http协议标 识、去掉域名后面部分、去掉端口号等过程。以网址 http://m.sohu.com:8080/images/logo-icon.png为例,首先去掉http协议标识得 到:m.sohu.com:8080/images/logo-icon.png,其次,去掉域名后面部分得到: m.sohu.com:8080,接着,去掉端口号得到:m.sohu.com。
URL经过预处理之后,就可以查询哈希表进行匹配操作。预处理后的 URL作为键值在哈希表中查询,如果查询值不为空表示匹配上,否则没有 匹配上。若没有匹配上,需要将域名从前面去掉一个段之后继续进行匹配。 上述预处理之后的m.sohu.com能够在表3的哈希表中匹配到,即匹配搜狐 手机。
另外,以网址http://news.m.sohu.com/?fr=3w&jump=front为例进行说明, 经过预处理后URL变为news.m.sohu.com,该预处理之后的URL在表3所 示的哈希表中匹配不到记录,则需要将该URL从前面去掉一个段再进行匹 配。该URL去掉一个段之后变成m.sohu.com,则该URL在表3所示的哈希 表中能够匹配到。
综上,基于哈希表存储匹配法,其匹配过程是:(1)将网址URL库载 入到哈希表;(2)针对每个待匹配URL进行预处理,且URL预处理过程 是先去掉http协议标识,然后去掉域名后面部分,最后去掉端口号;(3) 预处理后的URL在哈希表中匹配,如果匹配到则结束;否则进行下一步骤; (4)将预处理后的URL从前面去掉一个段,然后再进行哈希表匹配,如果 匹配到则结束;否则重复步骤(4),直到顶级域名为止。
具体而言,基于字典树存储匹配法是先将URL库载入到字典树中,然 后对于手机上网记录中提取的URL进行匹配操作。其中,每个字典树节点 构造时,初始化100个字节数组,用于存储ASCII编码表中可见字符。由于, 可见字符为从33到127,因此,可见字符存放在字节数组中的下标是ASCII 值减去33。
其中,字典树构造方法是依次扫描URL库每条URL,然后逐个字符扫 描该URL,从字典树顶端开始查询,如果该字符在树枝节点中,继续下一 个字符查找;否则新建一个树枝节点,将该字符赋值该树枝节点,继续下一 个字符查找,直至该URL处理完所有字符。图1所示为构造m.sohu.com的 字典树的示意图,图2所示为在图1基础上添加网址taobao.com之后的字典 树的示意图。
如图2所示,包括两个URL之后的字典树,末端叶子节点内容为顶级 域名的末字母,则为m、n、t、g、u等。末端叶子节点只有一个有效字节, 浪费较多空间。
以网址http://m.sohu.com/images/logo-icon.png的查找过程为例进行说 明,首先对该URL进行预处理成为m.sohu.com。接着,先扫描第一个字符 为“m”,在字典树的子节点查找到存在节点node1,然后第二个字符“.” 在node1的子节点中查找存在节点node2,然后第三个字符“s”在node2的 子节点中查找存在节点node3,依次类推,直到该URL扫描完成。如果匹 配到最终的叶子节点,则匹配成功,否则匹配失败。
基于哈希表存储匹配方法和基于字典树存储匹配方法中,根据查询匹配 结果可以进行网站点击次数累积的计算。
综上所述,基于哈希表存储匹配方法是将URL库载入到哈希表中,在 URL匹配时进行查询匹配;基于字典树存储匹配方法是将URL载入到字典 树中,在URL匹配时进行查询匹配。方法一(即基于哈希表存储匹配方法) 的主要问题在于当URL库数据巨大时,导致哈希键值冲突概率很大,而且 匹配查询只能进行精确完全匹配查询;方法二(即基于字典树存储匹配方法) 的主要问题在于URL库正序载入到字典树中,占用空间巨大,而且对于URL 域名部分匹配正确率不高。
发明内容
本发明提供了一种网址存储匹配方法及装置,用来解决现有的URL存 储匹配方法无法实现精确匹配、占用空间较大及部分匹配正确率不高等问 题。
为了解决上述技术问题,本发明提供一种网址存储匹配方法,包括以下 步骤:预处理URL库中的每个原始URL,得到保留域名的URL;将所述保 留域名的URL转换为大写字母并进行域名倒排,得到待存储的URL;为所 述待存储的URL创建字典树;根据所述创建的字典树,查询待匹配的URL。
进一步地,根据所述创建的字典树,查询所述待匹配的URL包括:预 处理所述待匹配的URL,得到保留域名的URL,将所述保留域名的URL转 换为大写字母并进行域名倒排,得到处理后的URL,依次查询所述字典树 的节点,判断是否匹配所述处理后的URL。
进一步地,预处理URL,得到保留域名的URL包括:去除所述URL 的http协议标识、路径部分以及端口号,得到保留域名的URL。
进一步地,将所述保留域名的URL转换为大写字母并进行域名倒排, 得到待存储的URL包括:将所述保留域名的URL转换为大写字母,将转换 为大写字母的URL以点号为间隔从左至右的域名按照以点号为间隔从右至 左的顺序排列,得到待存储的URL。
进一步地,为所述待存储的URL创建字典树前,还包括:为所述字典 树的每个节点初始化用于存储字符“.”及大写字母字符的字符数组。
本发明还提供一种网址存储匹配装置,包括第一处理模块、第二处理模 块、字典树创建模块以及查询模块。所述第一处理模块,用于预处理URL 库中的每个原始URL,得到保留域名的URL;所述第二处理模块,用于将 所述保留域名的URL转换为大写字母并进行域名倒排,得到待存储的URL; 所述字典树创建模块,用于为所述待存储的URL创建字典树;所述查询模 块,用于根据所述创建的字典树,查询待匹配的URL。
进一步地,所述查询模块,用于根据所述创建的字典树,查询所述待匹 配的URL包括:预处理所述待匹配的URL,得到保留域名的URL,将所述 保留域名的URL转换为大写字母并进行域名倒排,得到处理后的URL,依 次查询所述字典树的节点,判断是否匹配所述处理后的URL。
进一步地,所述第一处理模块或所述查询模块,用于预处理URL,得 到保留域名的URL包括:去除所述URL的http协议标识、路径部分以及端 口号,得到保留域名的URL。
进一步地,所述第二处理模块,用于将所述保留域名的URL转换为大 写字母并进行域名倒排,得到待存储的URL包括:将所述保留域名的URL 转换为大写字母,将转换为大写字母的URL以点号为间隔从左至右的域名 按照以点号为间隔从右至左的顺序排列,得到待存储的URL。
进一步地,所述字典树创建模块,于创建所述字典树前,还用于为所述 字典树的每个节点初始化用于存储字符“.”及大写字母字符的字符数组。
本发明提供的网址存储匹配方法及装置基于变形倒排字典树实现,于本 发明中,在把URL库载入字典树时,除了现有的预处理过程,每个URL还 会进行格式转换,转换为大写字母格式,以及域名倒排,最后将倒排转换后 的URL加入到字典树中。本发明提供的上述方法,既能够避免现有的方法 一(即基于哈希表存储匹配方法)只能进行精确URL匹配以及哈希键值冲 突概率很大的问题,又能够避免方法二(即基于字典树存储匹配方法)中占 用空间巨大的问题以及对URL域名部分匹配正确率不高的问题。
附图说明
图1所示为根据现有技术构造的m.sohu.com的字典树的示意图;
图2所示为在图1基础上添加网址taobao.com之后的字典树的示意图;
图3所示为根据本发明较佳实施例提供的网址存储匹配方法的流程图;
图4所示为根据本发明较佳实施例构造的m.sohu.com的字典树的示意 图;
图5所示为在图4基础上添加网址taobao.com之后的字典树的示意图;
图6所示为待匹配网址taobao.com在图5所示的字典树中的匹配过程示 意图;
图7所示为网址m.taobao.com的单支变形倒排字典树的示意图;
图8所示为根据本发明较佳实施例提供的网址存储匹配装置的示意图。
具体实施方式
如图3所示,本发明较佳实施例提供一种网址存储匹配方法,包括以下 步骤:预处理统一资源定位符(URL)库中的每个原始URL,得到保留域 名的URL;将所述保留域名的URL转换为大写字母并进行域名倒排,得到 待存储的URL;为所述待存储的URL创建字典树;根据所述创建的字典树, 查询待匹配的URL。
于此,仍以表1所示的URL库内容以及表2所示的手机无线上网记录 提取URL为基础说明本发明较佳实施例提供的网址存储匹配方法。
具体而言,首先对URL库(即表1)中每条URL进行预处理。预处理 主要分为去掉http协议标识、去掉路径部分、去掉端口号等过程。以网址 http://m.sohu.com:8080/images/logo-icon.png为例,首先去掉http协议标识得 到:m.sohu.com:8080/images/logo-icon.png,其次,去掉域名后面的路径部分 得到:m.sohu.com:8080,接着,去掉端口号得到:m.sohu.com。
之后,对预处理之后的URL进行字母格式转换以及域名倒排转换,得 到大写字母格式且域名倒排的URL。其中,域名倒排指将URL以点号为间 隔从左至右的域名按照以点号为间隔从右至左的顺序排列。于此,以 m.sohu.com为例,经过域名倒排转换得到:com.sohu.m,经过大写字母格式 转换得到:COM.SOHU.M。于此,本发明并不限定大写字母格式转换和域 名倒排转换的顺序,仅需要最终得到大写字母格式且域名倒排的URL即可。 如此,既能极大地降低占用空间,又能较大地提高URL域名部分匹配准确 率。
具体而言,由于网址URL的域名中字母不区分大小写,且ASCII码表 中大写字母相比小写字母距离字符“.”更近,因此,在进行URL处理时, 将预处理后的URL转换为大写字母,使得字典树每个节点的大小不用初始 化100个字符,只需要初始化50个字符即可,用以存储字符“.”及大写字 母字符。如此,大大节省了字典树占用的存储空间。于本实施例中,字典树 的每个节点初始化50个字符数组,用于存储字符“.”到字符“Z”。然而, 本发明并不限定每个节点存储空间的实现方式,于其他实施例中,字典树的 每个节点存储的节点数据亦可通过哈希表实现。
图4所示为根据本发明较佳实施例构造的m.sohu.com的字典树的示意 图;图5所示为在图4基础上添加网址taobao.com之后的字典树的示意图。 如图4和图5所示,添加两个网址m.sohu.com和taobao.com之后,本发明 较佳实施例提供的字典树有多个共用节点,而图2所示的普通字典树共用节 点很少,由此可以得出本发明较佳实施例提供的变形倒排字典树比普通字典 树节省了大量节点所占用的空间。
接着,参照图6,以待匹配网址taobao.com为例,说明基于本发明较佳 实施例提供的变形倒排字典树的匹配过程。如图6所示,首先,对网址 taobao.com进行处理,得到COM.TAOBAO,然后逐个字符在变形倒排字典 树中查询,其查询匹配流程如图6粗体箭头所示。
接下来以m.taobao.com作为变形倒排字典树节点构造,使用多个taobao 相关URL进行精确和部分域名的查找匹配测试。
如图7所示,该单支变形倒排字典树的构造使用URL为m.taobao.com, 一共12个有效节点。下面使用三个URL(taobao.com、m.taobao.com、 shop123005.m.taobao.com)进行该单支字典树的测试。
待匹配URL:taobao.com的匹配过程如表4所示。
表4taobao.com匹配过程


待匹配URL:m.taobao.com的匹配过程如表5所示。
表5m.taobao.com匹配过程

待匹配URL:shop123005.m.taobao.com的匹配过程如表6所示。
表6shop123005.m.taobao.com匹配过程

根据表4、表5及表6所示的三个URL匹配测试过程,可以得出基于 本发明较佳实施例提供的变形倒排字典树的存储匹配方法既能精确匹配,又 能进行域名中部分匹配。
另外,以测试样本URL库大小为110万条记录,待匹配的URL列表为 5万条记录为基础,进行三种URL存储匹配方法的测试比较。表7为进行 三种URL存储匹配方法测试的结果对比表。
表7 三种URL存储匹配方法测试结果对比表


由表7可知,本发明较佳实施例提供的基于变形倒排字典树的网址存储 匹配方法是最优的,其占用空间小,URL库载入时间短,且不存在键值冲 突问题,而且匹配正确率较高。
另外,如图8所示,本发明较佳实施例还提供一种网址存储匹配装置, 包括第一处理模块101、第二处理模块102、字典树创建模块103以及查询 模块104。第一处理模块101,用于预处理URL库中的每个原始URL,得 到保留域名的URL;第二处理模块102,用于将所述保留域名的URL转换 为大写字母并进行域名倒排,得到待存储的URL;字典树创建模块103,用 于为所述待存储的URL创建字典树;查询模块104,用于根据所述创建的 字典树,查询待匹配的URL。关于所述装置的具体操作过程同上述方法所 述,故于此不再赘述。
综上所述,本发明较佳实施例提供的基于变形倒排字典树的网址存储匹 配方法既能解决哈希表存储匹配法的键值冲突,以及无法实现域名部分匹配 的问题,也能解决现有的字典树存储匹配法占用空间过大,而且域名部分匹 配正确率不高的问题。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本发 明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的 原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进, 这些变化和改进都落入要求保护的本发明范围内。

一种网址存储匹配方法及装置.pdf_第1页
第1页 / 共17页
一种网址存储匹配方法及装置.pdf_第2页
第2页 / 共17页
一种网址存储匹配方法及装置.pdf_第3页
第3页 / 共17页
点击查看更多>>
资源描述

《一种网址存储匹配方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种网址存储匹配方法及装置.pdf(17页珍藏版)》请在专利查询网上搜索。

本发明公开了一种网址存储匹配方法及装置,上述方法包括以下步骤:预处理URL库中的每个原始URL,得到保留域名的URL;将所述保留域名的URL转换为大写字母并进行域名倒排,得到待存储的URL;为所述待存储的URL创建字典树;根据所述创建的字典树,查询待匹配的URL。本发明公开的网址存储匹配方法及装置,能够解决现有的URL存储匹配方法无法实现精确匹配、占用空间较大及部分匹配正确率不高等问题。。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1