[发明专利]一种去重方法及系统在审
申请号: | 201310478890.2 | 申请日: | 2013-10-14 |
公开(公告)号: | CN103530369A | 公开(公告)日: | 2014-01-22 |
发明(设计)人: | 郭美思;何志平;吴楠 | 申请(专利权)人: | 浪潮(北京)电子信息产业有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 王丹;栗若木 |
地址: | 100085 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 方法 系统 | ||
技术领域
本发明涉及分布式网络技术,尤其涉及一种去重方法及系统。
背景技术
随着互联网技术的不断发展与网络信息量的不断剧增,用户能够从海量的信息中快速高效的搜索有价值的信息对于互联网的发展至关重要。因此对于同一资源定位符(URL,Uniform Resource Locator)数据的去重尤为重要。例如,对于搜索信息来说,网络信息采集是其重要组成部分,URL去重直接影响网络信息采集的效率。因此,URL的去重方案设计与实现是非常重要的。
目前,对于去重设计方案主要有基于哈希计算算法的去重方案和基于BloomFilter算法的去重方案等。其中,
哈希计算算法去重方案的主要思路大致包括:对每个URL进行哈希计算,得到唯一的校验和来标识URL;通过查找该校验和是否出现在已采集的URL库中,如果出现,则丢弃;如果未出现,查找是否出现在待采集的URL库中,出现则丢弃,否则将该URL保存在待采集的URL库中。但是哈希算法的计算复杂度高,效率差。
BloomFilter算法的去重方案的主要思路大致包括:将同一个URL通过多个不同的哈希计算函数映射到同一个位数组中的不同位上,根据其位数组中多个不同位的状态识别该URL的采集状态(该URL是否已采集)。BloomFilter算法的优点是,只需要在内存中保存位数组这样一个数据结构,就能够判别URL的采集状态,不需要保存具体的URL,占用的存储空间小,同时查找计算的速度快。但是,BloomFilter算法在判断一个元素是否属于某个集合时,有可能会把不属于这个集合的元素误认为属于这个集合。因此BloomFilter算法的缺点是不能做到精确无误,存在一定的误差。
发明内容
为了解决上述技术问题,本发明提供了一种去重方法及系统,能够在Hadoop集群中并发的访问、处理数据,保证去重的高效性和准确性。
为了达到本发明的目的,本发明提供了一种去重方法,包括:获取存储于Hadoop集群系统中的任意一个或多个节点中,或者分布于任意网络资源中的URL数据;
按照所述Hadoop集群系统的映射框架中所指定的输入类格式,对获得的URL数据进行映射处理;
按照所述Hadoop集群系统的归约框架中指定的类格式,对所述映射处理的结果进行归约处理;
其中,所述映射处理在所述Hadoop集群系统的一个或多个节点中执行,所述归约处理在所述Hadoop集群系统的一个或多个节点中执行,所述映射处理和所述归约处理分别在所述Hadoop集群系统的一个或多个节点中并发、或顺序执行。
进一步地,所述映射处理所在节点与所述归约处理所在节点相同;或者,所述映射处理所在节点与所述归约处理所在节点不同。
进一步地,所述映射处理包括:判断所述获得的URL数据是否已被采集,如果已被采集,则写入中间数据文件中;否则,根据所述获得的URL数据所对应的原始网页中的链接,计算采集权值,并将所述获得的URL数据标记为已采集状态。
进一步地,所述归约处理包括:将所述映射处理的结果放在同一个归约任务中批量执行。
进一步地,所述执行映射处理的节点的数量为预先设置。
进一步地,所述执行归约处理的节点的数量为预先设置。
本发明提供了一种去重系统,包括:
数据获取设备,用于获取存储于Hadoop集群系统中的任意一个或多个节点中,或者分布于任意网络资源中的URL数据;
映射处理设备,用于按照所述Hadoop集群系统的映射框架中指定的输入类格式,对获得的URL数据进行映射处理;
归约处理设备,用于按照所述Hadoop集群系统的归约框架中指定的类格式,对所述映射处理的结果进行归约处理,归约处理的结果为对URL去重的结果;
其中,所述映射处理在所述Hadoop集群系统的一个或多个节点中执行,所述归约处理在所述Hadoop集群系统的一个或多个节点中执行,所述映射处理和所述归约处理分别在所述Hadoop集群系统的一个或多个节点中并发、或顺序执行。
进一步地,所述映射处理和所述归约处理在所述Hadoop集群系统的相同的节点中执行或、所述映射处理和所述归约处理在所述Hadoop集群系统的不同的节点中执行。
进一步地,所述映射处理设备具体用于:判断获得的URL数据是否已被采集,如果已被采集,则写入中间数据文件中;否则根据所述URL数据所对应的原始网页中的链接,计算采集权值,并将所述URL数据标记为已采集状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮(北京)电子信息产业有限公司,未经浪潮(北京)电子信息产业有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310478890.2/2.html,转载请声明来源钻瓜专利网。