论文部分内容阅读
随着网民增长和电子商务的蓬勃发展,电商网站的规模越来越大,电商网站上的数据呈现爆炸式增长。由于电子购物也成越来越成为了人们日常生活的一部分,电商网站的数据也就成为研究人员最为研究人们日常经济活动的重要研究对象,因此高效率的搜集电商网站信息显得非常重要。但电商网站上不仅存在大量数据,也存在着大量的冗余数据,而大量的冗余数据会严重影响电商数据收集的时间效率以及数据的准确度,因此为了保证电商数据的高效动态抓取,在抓取过程中必须对数据进行动态检测。目前存在着许多数据查重算法,但这些算法都是相对普世性质的,没有充分利用电商网站数据的特点。因此本文先调研和总结国内各大主流电商网站的特点,然后通过电商网站的特点提出了基于网址特征的布隆过滤器和基于网址指纹的网页查重算法,最后利用提出的新算法设计并实现了分布式电商数据查重系统。(一)基于网址特征的布隆过滤器算法。本章节针对电商网站网页实时分析过程对效率的特殊要求,分析了基于传统布隆过滤器查重的原理,指出其网址查重中忽略了网址信息冗余的缺陷,提出了一种改进的网址查重的方法——基于网址特征提取的布隆过滤方法。该方法首先定义网址特征;并通过改进后的相应算法对其进行量化、提取;根据网址特征训练网址过滤规则;最后根据规则去除网址的冗余信息后对网址进行布隆查重。通过对200多万条数据实验发现改进后的布隆过滤器的时间效率有了很大的提升,并随着数据量的增加时间效率提升更明显,证明了所提方法有效,并能很好满足应用需求。(二)基于网址指纹的网页查重算法。通过对电商网站的分析可知,当多个网址对应于同一个页面时,两个网址的相似度非常大;同时通过对传统网页查重么算法分析可知,传统的网页查重算法必须先将网页下载后再进行查重,这样无法改善网页收集的效率。基于这两点考虑,本课题提出了基于网址指纹的网页查重算法,该算法通过对网址的属性提取、量化,指纹提取训练出网址指纹,最后通过相似度比较判断网址与其它网址的相似度。最后通过220万条数据实验发现:基于网址指纹的网页查重算法能够保证较小的误差率(1%)的前提下查重的时间效率的提高11%,而且随着数据量的增大效果更明显。(三)基于主题的分布式查重系统的设计与实现。首先分析传统布隆过滤器的原理和缺陷,设计了一种基于主题的分布式查重系统,为了保证分布式查重系统的高效性、可靠性以及可维护性,本章节使用了第三章和第四章所研究的查重方法,并通过zookeeper和thrift框架实现了该系统,最后通过分析可知基于主题的分布式查重系统具有良好的维护性、可靠性,比较传统分布式查重系统其时间效率更高。