一种数据压缩方法、设备及系统技术方案

技术编号:11677342 阅读:90 留言:0更新日期:2015-07-06 04:04
本发明专利技术实施例公开了一种数据压缩方法,所述方法包括:获取目标网络数据;根据所述获取到的目标网络数据所属的网络应用数据流的冗余率,设置所述目标网络数据的数据分块参数;根据所述设置的数据分块参数,将所述目标网络数据进行数据分块从而获取至少一个目标数据块;依次将所述至少一个目标数据块与数据库中的数据块进行比较;删除与所述数据库中的数据块相同的目标数据块。本发明专利技术实施例还公开了一种设备及系统。采用本发明专利技术,可根据网络应用数据流对应的冗余率,设置划分数据块的粒度,以便于在不影响吞吐率的情况下提升数据去重率。

【技术实现步骤摘要】

本专利技术涉及通信
,尤其涉及一种数据压缩方法、设备及系统
技术介绍
重复数据删除技术是基于重复则删除的原则,通过一定的算法消除相同文件或者 相似文件之间的重复数据。数据块级的重复数据删除是指首先将文件划分成数据块并计算 出各个数据块的数据指纹,通过比较数据块的数据指纹判断是否有相同的数据块存储在数 据库中,若检测到目标数据块的数据指纹与数据库中的数据指纹相同,则删除该目标数据 块。 CDC (Content-Defined Qumking,基于内容的数据分块)算法是一种变长分块算 法,即通过数据指纹(如R油in指纹)将文件分割成长度大小不等的分块策略。CDC算法 使用一个固定大小(如48字节)的滑动窗口对文件数据计算数据指纹,如果数据指纹满足 某个条件,如所述数据指纹等于预定义值,则把窗口位置作为块的边界。但CDC算法划分数 据块的粒度绝大部分取决于数据块的设定,若设置的数据块较小,则粒度较细,重复数据查 找较为精确,但数据块索引W及数据块的对比等开销较大;若设置的数据块较大,则粒度较 粗,数据去重效率较低。
技术实现思路
本专利技术所要解决的技术问题在于,提供一种数据压缩方法、设备及系统,可在不影 响吞吐率的情况下提升数据去重率。 为了解决上述技术问题,本专利技术第一方面提供了一种数据压缩方法,所述方法包 括: 获取目标网络数据; 根据所述获取到的目标网络数据所属的网络应用数据流的兀余率,设置所述目标 网络数据的数据分块参数; 根据所述设置的数据分块参数,将所述目标网络数据进行数据分块从而获取至少 一个目标数据块; 依次将所述至少一个目标数据块与数据库中的数据块进行比较; 删除与所述数据库中的数据块相同的目标数据块。 在第一种可能的实现方式中,将与所述数据库中的所有数据块都不相同的目标数 据块存储到所述数据库中的所述目标网络数据所属的网络应用数据流对应的数据库容器 中。 结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述依次将所述至少一个目标数据块与数据库中的数据块进行比较包括; 分别计算所述至少一个目标数据块的数据指纹; 通过依次比较所述计算得到的至少一个目标数据块的数据指纹与所述数据库的 指纹索引表中的数据指纹,依次比较所述至少一个目标数据块与所述数据库中的数据块。 结合第一方面的第二种可能的实现方式,在第H种可能的实现方式中,所述将与 所述数据库中的所有数据块都不相同的目标数据块存储到所述数据库中的所述目标网络 数据所属的网络应用数据流对应的数据库容器中包括; 将与所述指纹索引表中的所有数据指纹都不相同的数据指纹对应的目标数据块 存储到所述数据库中的所述目标网络数据所属的网络应用数据流对应的数据库容器中; 将所述存储到所述数据库中的目标数据块的数据指纹及其元数据存储到所述指 纹索引表中,所述元数据包括所述目标数据块在所述数据库中的地址和长度。 结合第一方面的第二种可能的实现方式,在第四种可能的实现方式中,所述分别 计算所述至少一个目标数据块的数据指纹之后,将与所述指纹索引表中的所有数据指纹都 不相同的目标数据块的数据指纹及所述目标数据块封装到针对所述网络数据的编码后数 据中; 将与所述指纹索引表中的数据指纹相同的目标数据块的数据指纹封装到所述编 码后数据中; 将所述编码后数据发送给远端广域网优化设备。 结合第一方面或第一方面的第一种至第四种中的任一种可能的实现方式,在第五 种可能的实现方式中,所述获取目标网络数据之后,通过所述获取到的目标网络数据对应 的端口信息,确定所述获取到的目标网络数据所属的网络应用数据流。 结合第一方面的第四种可能的实现方式,在第六种可能的实现方式中,获取针对 所述目标网络数据的重组指令; 根据所述重组指令获取针对所述目标网络数据的编码后数据; 所述获取到的编码后数据中仅存在目标数据块的数据指纹时,在所述数据库中获 取所述数据指纹对应的数据块; 将所述获取到的编码后数据中的目标数据块和所述获取到的所述数据库中的数 据块组装成所述目标网络数据。 本专利技术第二方面提供了一种广域网优化设备,所述广域网优化设备包括: 获取单元,用于获取目标网络数据; 设置单元,用于根据所述获取单元获取到的目标网络数据所属的网络应用数据流 的兀余率,设置所述目标网络数据的数据分块参数; 数据分块单元,还用于根据所述设置单元设置的数据分块参数,将所述目标网络 数据进行数据分块从而获取至少一个目标数据块; 比较单元,用于依次将所述目标网络数据经过所述数据分块单元进行数据分块获 取到的至少一个目标数据块与数据库中的数据块进行比较; 删除单元,用于删除所述比较单元比较得到的与所述数据库中的数据块相同的目 标数据块。 在第一种可能的实现方式中,数据块存储单元用于将所述比较单元比较得到的与 所述数据库中的所有数据块都不相同的目标数据块存储到所述数据库中的所述目标网络 数据所属的网络应用数据流对应的数据库容器中。 结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述比较单元包括; 计算模块,用于分别计算所述目标数据网络经过所述数据分块单元进行数据分块 获取到的至少一个目标数据块的数据指纹;比较模块,用于通过依次比较所述计算模块计算得到的至少一个目标数据块的数 据指纹与所述数据库的指纹索引表中的数据指纹,依次比较所述至少一个目标数据块与所 述数据库中的数据块。 结合第二方面的第二种可能的实现方式,在第H种可能的实现方式中,所述数据 块存储单元包括; 数据块存储模块,用于将与所述指纹索引表中的所有数据指纹都不相同的数据指 纹对应的目标数据块存储到所述数据库中的所述目标网络数据所属的网络应用数据流对 应的数据库容器中; 指纹存储模块,用于将所述数据块存储模块存储到所述数据库中的目标数据块的 数据指纹及其元数据存储到所述指纹索引表中,所述元数据包括所述目标数据块在所述数 据库中的地址和长度。 结合第二方面的第二种可能的实现方式,在第四种可能的实现方式中,指纹封装 单元用于在所述比较单元分别计算所述至少一个目标数据块的数据指纹后,将与所述指纹 索引表中的所有数据指纹都不相同的目标数据块的数据指纹及所述目标数据块封装到针 对所述目标网络数据的编码后数据中; 所述指纹封装单元还用于在所述比较单元分别计算所述至少一个目标数据块的 数据指纹后,将与所述指纹索引表中的数据指纹相同的目标数据块的数据指纹封装到所述 编码后数据中; 发送单元用于将所述编码后数据发送给远端广域网优化设备。 结合第二方面或第二方面的第一种至第四种中的任一种可能的实现方式,在第五 种可能的实现方式中,确定单元用于通过所述获取单元获取到的目标网络数据对应的端口 信息,确定所述获取到的目标网络数据所属的网络应用数据流。 结合第二方面的第四种可能的实现方式,在第六种可能的实现方式中,所述获取 单元还用于获取针对所述目标网络数据的重组指令; 根据所述重组指令获取针对所述目标网络数据的编码后数据; 所述编码后数据中存在目标数据块的数据指纹时,在所述数据库中获取所当前第1页1 2 3 本文档来自技高网...

【技术保护点】
一种数据压缩方法,其特征在于,所述方法包括:获取目标网络数据;根据所述获取到的目标网络数据所属的网络应用数据流的冗余率,设置所述目标网络数据的数据分块参数;根据所述设置的数据分块参数,将所述目标网络数据进行数据分块从而获取至少一个目标数据块;依次将所述至少一个目标数据块与数据库中的数据块进行比较;删除与所述数据库中的数据块相同的目标数据块。

【技术特征摘要】

【专利技术属性】
技术研发人员:张亮刘屹葛雄资陆承涛吴俊
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1