[发明专利]一种文档的压缩、解压方法和装置有效
申请号: | 201510927028.4 | 申请日: | 2015-12-14 |
公开(公告)号: | CN105335531B | 公开(公告)日: | 2019-06-04 |
发明(设计)人: | 武志刚;魏少俊 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F16/174 | 分类号: | G06F16/174 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 赵娟 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文档 压缩 解压 方法 装置 | ||
本发明实施例提供了一种文档的压缩方法和装置,该方法包括:提取预先存储的多个文档;从所述多个文档中查找内容相似的多个目标文档,每个目标文档中具有行号;根据所述行号对所述多个目标文档进行序列化,获得一个或多个数据块;将所述一个或多个数据块进行压缩处理,获得压缩对象。本发明实施例利用了网页本身的业务特性进行压缩,大大提高了压缩率,减少了存储空间的占用。
技术领域
本发明涉及计算机处理的技术领域,特别是涉及一种文档的压缩方法、一种文档的解压方法、一种文档的压缩装置和一种文档的解压装置。
背景技术
为了构建索引及更新索引,搜索引擎的网络爬虫(又称蜘蛛,Spider)每天都要从互联网抓取海量的网页,数量高达几十亿的级别。
除了完全可以判别为垃圾的网页,蜘蛛每天抓取的大部分网页都会按照一定的格式存储在数据库中,这个数据库一般称为网页库。
经过长时间的积累,网页库中存储了多达几千亿张网页,平均每张原始网页大小为30~50KB,几千亿张网页的总存储量十分之高。
因此,一般在存储前都会对网页库中的网页进行压缩,采用的压缩算法有GZip,LZO,Zlib等。
但是,这些压缩算法都具有通用性,针对性较差,在压缩网页时,压缩率较低,占用较多的存储空间。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种文档的压缩方法、一种文档的解压方法和相应的一种文档的压缩装置、一种文档的解压装置。
依据本发明的一个方面,提供了一种文档的压缩方法,包括:
提取预先存储的多个文档;
从所述多个文档中查找内容相似的多个目标文档,每个目标文档中具有行号;
根据所述行号对所述多个目标文档进行序列化,获得一个或多个数据块;
将所述一个或多个数据块进行压缩处理,获得压缩对象。
可选地,所述从所述多个文档中查找内容相似的多个目标文档的步骤包括:
计算所述多个文档的URL的相似性;
当所述相似性超过预设的相似性阈值时,确认所述多个文档为多个目标文档。
可选地,所述根据所述行号对所述多个目标文档进行序列化,获得一个或多个数据块的步骤包括:
提取所述多个目标文档中,行号相同的文档数据;
将行号相同的文档数据写入同一个数据块中。
可选地,所述根据所述行号对所述多个目标文档进行序列化,获得一个或多个数据块的步骤还包括:
对所有多个目标文档行号相同的文档数据进行编号。
可选地,所述多个文档以Host逆序的URL为行键,存储在数据库中。
根据本发明的另一方面,提供了一种文档的解压方法,包括:
提取预先压缩的压缩对象,所述压缩对象中具有一个或多个数据块;
对所述一个或多个数据块进行解压处理;
根据行号对解压处理之后的一个或多个数据块进行反序列化,获得多个目标文档。
可选地,所述根据行号对解压处理之后的数据块进行反序列化,获得多个目标文档的步骤包括:
读取解压处理之后的一个或多个数据块中的文档数据,所述文档数据具有编号和行号;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510927028.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于微信的自媒体传播平台及方法
- 下一篇:生成用户偏好信息的方法及装置