CN101158954B - 一种在计算机存储中识别重复数据的方法 - Google Patents

一种在计算机存储中识别重复数据的方法 Download PDF

Info

Publication number
CN101158954B
CN101158954B CN200710047904XA CN200710047904A CN101158954B CN 101158954 B CN101158954 B CN 101158954B CN 200710047904X A CN200710047904X A CN 200710047904XA CN 200710047904 A CN200710047904 A CN 200710047904A CN 101158954 B CN101158954 B CN 101158954B
Authority
CN
China
Prior art keywords
data
sub
type
pending
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200710047904XA
Other languages
English (en)
Other versions
CN101158954A (zh
Inventor
贺鸿富
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Eisoo Information Technology Co Ltd
Original Assignee
Shanghai Eisoo Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Eisoo Software Co Ltd filed Critical Shanghai Eisoo Software Co Ltd
Priority to CN200710047904XA priority Critical patent/CN101158954B/zh
Publication of CN101158954A publication Critical patent/CN101158954A/zh
Application granted granted Critical
Publication of CN101158954B publication Critical patent/CN101158954B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种在计算机数据存储中根据待处理数据的类型来识别是否存在重复数据的方法,该方法旨在解决计算机存储中对重复数据的识别问题,其特征是利用待处理数据的类型将其分割为长度不等的子数据块并对每一子数据块生成一个特定标识符来识别是否存在重复数据。本发明通常在计算机数据归档、存储及备份中用来识别完全重复的数据并仅保存其中一份而忽略其余,以达到提高计算机存储空间的有效利用率。

Description

一种在计算机存储中识别重复数据的方法
技术领域
本发明涉及一种计算机数据识别方法,尤其是涉及一种在计算机数据存储、归档及备份中识别重复数据的方法。
背景技术
目前,随着我国信息化程度的提高,越来越多的企事业单位和组织利用建立本单位计算机局域网络来使其工作人员更好地共享信息与协同工作,然而,利用网络办公环境常常使内容相同的一份电子数据或以相同或不同的文件名或以相同或不同的文件形式(如邮件、工作文档等)在多台计算机中保存。我们知道,一个局域网内的所有客户端的数据通常会定期地在服务器中集中归档、存储或者进行备份。这样在归档、存储或者备份时,会产生大量完全重复的数据。
为了解决计算机重复数据的识别问题,现有技术通常将待处理数据的内容分割为很多长度固定的子数据块,并为每一子数据块生成一个相应的标识符,然后保存数据块内容的同时保存每一块数据的标识符,再通过将数据块的标识符在服务器中搜索标识符数据库,判断要存储或传输的子数据块是否已存在,如果存在,则判断其为重复的数据;如果不存在,则判断其为不重复的数据。
然而,上述技术的不足之处在于,由于不同类型的文件的储存结构是完全不同的,例如文本文件的存储结构是以原内容方式保存,而字处理器软件生成的文件则以对象的半结构化方式保存,数据库系统生成的数据库文件则以块状的结构化方式保存,如果一律采用相同长度分割待处理数据,而不考虑不同类型数据的存储结构的差异,则在判断分割后的子数据块是否为重复数据时常常会出现识别率不高的问题。
发明内容
为了提高计算机存储中重复数据的识别率,本发明提供了一种根据待处理数据的类型将其分割为长度相等或不相等子数据块的方法,并通过以下技术方案实现:
判断待处理数据的类型;根据判断出来的不同数据类型调用不同的数据分割器(即本发明提供的一组程序模块,其功能是分析待处理数据的存储结构,并根据特定的存储结构将该类型的待处理数据生成与该数据的存储结构相匹配的子数据块)将待处理数据分割为若干长度相同或不等的子数据块;为每一子数据块生成一个相应的标识符;在存储器中查找是否存在相同的标识符;存在相同标识符,则为重复数据;不存在相同标符,则不为重复数据。
本发明的具体步骤是:
将待处理的计算机数据分为文件数据和应用系统数据两种类型;
当待处理数据为文件数据类型时,根据文件的扩展名从配置文件中查找是否存在与其对应的数据分割器,若不存在该类型的数据分割器,则使用通用数据分割器(是一种无对应类型的数据分割器,其功能是将待处理数据分割成长度相等的若干子数据块)将待处理数据分割为大小相等且一定的子数据块;若存在相应类型的数据分割器,则获得该数据分割器,并由该数据分割器将待处理的文件数据分割为与该文件数据的存储结构相匹配的子数据块;
当待处理数据为应用系统数据类型时,直接获得该应用系统的数据类型,并从配置文件中查找是否存在与其对应的数据分割器,若不存在该类型的数据分割器,则使用通用数据分割器将待处理数据分割为大小相等且一定的子数据块;若存在相应类型的数据分割器,则获得该数据分割器,并由该数据分割器将待处理数据分割为与该应用系统数据的存储结构相匹配的子数据块;
如果存在网络数据传输的情况,可在数据传输前将待处理数据分割为若干子数据块,并将这些子数据块逐个传输到接收端;或者将待处理数据传输到接收端后,再根据传输的待处理数据类型在接收端查找是否存在相应的数据分割器,并将待处理数据分割成若干子数据块。
与现有技术相比,本发明能有效地提高计算机中重复数据的识别率,尤其能提高对结构化重复数据的识别率。
附图说明
图1为某待处理数据的存储结构及其对应的分割的方式
图2为获得文件类型的数据分割器的流程图
图3为获是应用系统类型的数据分割器的流程图
图4为在网络传输前识别重复数据的流程图
图5为在网络传输后识别重复数据的流程图
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述:
如图1所示,如果待处理数据采用结构化的存储方式保存,且假设其文件头长度为16KB,其它数据块(块1、块2、块3、块4...块n)长度固定为8KB,则本发明提供的与该待处理数据对应的数据分割器分析出该数据的存储结构为:文件头16KB,其余数据块8KB。数据分割器即将待处理数据的第一块子数据块分割为16KB,其余的字数据块则固定分割为8KB。在将待处理数据块分割为子数据块时,数据分割器并不重新在内存中创建新的子数据块,而是在待处理数据中采用位置参数0,1,2,3,4,5...n来表示任一子数据块的开始位置与结束位置,上层调用者通过位置参数在原数据块中定位到子数据块。
如图2所示,待处理数据为文件数据类型时,首先获得其文件名,然后根据文件名的扩展名类型从配置文件splitter.dat中查找是否存在相应类型的数据分割器,若不存在相应类型的数据分割器,则使用通用数据分割器替代。
如图3所示,待处理数据为应用系统数据类型时,首先获得应用系统的类型,然后根据该类型从配置文件splitter.dat中查找是否存在相应的数据分割器,若不存在相应的数据分割器,则使用通用数据分割器替代。
图4和图5表示在存在网络数据传输的存储、归档或备份时,可以在待处理数据传输前或待处理数据传输后将待处理数据根据其数据类型分割为子数据块。
图4所示的方法是对待处理数据在传输前进行数据分块,其具体步骤是:
数据处理系统首先判断其是否为文件数据,如果是文件数据,则根据图2所示方法获得数据分割器,并将文件的内容从硬盘中装载到内存中;如果是应用系统数据,则根据图3所示方法获得数据分割器;
将待处理数据传入数据分割器并由数据分割器将待处理数据根分割为若干与其存储结构相匹配的子数据块,分割算法由获得的数据分割器决定,可以是将待处理数据分割成长度相等的子数据块,也可以是将待处理数据分割成长度不相等的子数据块;
将每一子数据块逐一按如下方式处理:使用散列算法为子数据块生成一个标识符,散列算法可为MD5或SHA1、SHA2等,该标识符与子数据块是唯一对应关系,再将该标识符发送到接收存储的目标计算机;
目标计算机收到标识符后,再根据标识符在存储器上查找是否已经存在该标识符;
如果不存在相同标识符,则在传输端将子数据块发送到目标计算机;
目标计算机接收子数据块,将其保存在存储器上,同时保存其位置及标识符以便再次查找;
如果存在相同标识符,则表明子数据块已经在存储器上保存,则在目标计算机上仅保存该标识符对应的子数据块在存储器的位置,以避免相同内容的子数据块的再次传输以及存储。
图5所示的方法是对待处理数据在传输后进行数据分块,其具体步骤是:
对于待处理数据,首先判断其是否为文件数据,如果是文件数据,则根据图2所示方法获得数据块分割器,并将文件的内容从硬盘中装载到内存中;如果是应用系统数据,则根据图3所示方法获得数据块分割器;
将待处理数据及相应的数据分割器类型发送到用于接收存储的目标计算机;
目标计算机接收到待处理数据及其对应的数据分割器类型后,首先根据数据分割器的类型创建数据分割器,再将接收到的待处理数据传入数据分割器并将其分割为若干与该数据的存储结构匹配的子数据块,分割算法由获得的待处理数据的数据分割器决定。可以将待处理数据分割成长度相等子数据块,也可以将待处理数据块分割长度不相等的子数据块。
将每一子数据块逐一按如下方式处理:使用散列算法为子数据块生成一个标识符,散列算法可为MD5或SHA1、SHA2等,该标识符与子数据块是唯一对应关系,然后根据该标识符在目标计算机的存储器上查找是否已经存在该标识符;
不存在相同标识符,则将子数据块保存在存储器上,同时保存其位置及标识符,以便下次查找;
如果存在相同标识符,则表明该子数据块已经在目标计算机的存储器上保存,仅获得该标识符对应的子数据块在存储器的位置并保存,以避免了相同内容的子数据块再次存储。

Claims (4)

1.一种在计算机存储中识别重复数据的方法,其特征为以下步骤:
判断待处理数据的类型;
根据判断出来的不同数据类型调用不同的数据分割器,根据待处理数据的类型将一块数据块分割为长度相等且一定的若干子数据块或者长度不等的若干子数据块;若根据待处理数据的类型将数据块分割为长度相等且一定的若干子数据块,所述子数据块的长度由待处理数据类型的数据格式或存放该数据类型的文件格式决定;若根据待处理数据的类型将数据块分割为长度不等的若干子数据块,所述子数据块的长度由待处理数据类型的数据格式或存放该数据类型的文件格式决定;
为每一子数据块生成一个相应的标识符;
在存储器中查找是否存在相同的标识符;存在相同标识符,则为重复数据;不存在相同标符,则不为重复数据。
2.根据权利要求1所述的一种在计算机存储中识别重复数据的方法,其特征是将待处理的计算机数据分为文件数据和应用系统数据两种类型。
3.根据权利要求2所述的一种在计算机存储中识别重复数据的方法,当待处理数据为文件数据类型时,根据文件的扩展名获得对应的数据分割器,若不存在该类型的数据分割器,则使用通用类型的数据分割器;若存在相应类型的数据分割器,则根据该数据分割器将待处理的文件数据分割为若干子数据块;当待处理数据为应用系统数据类型时,获得该应用系统的数据类型,并根据数据类型获得对应的数据分割器,若不存在该类型的数据分割器,则使用通用类型的数据分割器;若存在相应类型的数据分割器,则根据该数据分割器将待处理数据分割为若干子数据块。
4.根据权利要求1所述的一种在计算机存储中识别重复数据的方法,其特征是:如果存在网络数据传输的情况,则在数据传输前将待处理数据分割为若干子数据块,并将这些子数据块逐个传输到接收端;或者将待处理数据传输到接收端后,再根据传输的待处理数据类型在接收端获得相应的数据分割器,并根据获得的数据分割器将待处理数据分割成若干子数据块。
CN200710047904XA 2007-11-07 2007-11-07 一种在计算机存储中识别重复数据的方法 Expired - Fee Related CN101158954B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710047904XA CN101158954B (zh) 2007-11-07 2007-11-07 一种在计算机存储中识别重复数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710047904XA CN101158954B (zh) 2007-11-07 2007-11-07 一种在计算机存储中识别重复数据的方法

Publications (2)

Publication Number Publication Date
CN101158954A CN101158954A (zh) 2008-04-09
CN101158954B true CN101158954B (zh) 2011-09-28

Family

ID=39307056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710047904XA Expired - Fee Related CN101158954B (zh) 2007-11-07 2007-11-07 一种在计算机存储中识别重复数据的方法

Country Status (1)

Country Link
CN (1) CN101158954B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101231653B (zh) * 2008-01-24 2010-09-22 创新科存储技术(深圳)有限公司 数据块拆分方法及其装置
US8731190B2 (en) 2009-06-09 2014-05-20 Emc Corporation Segment deduplication system with encryption and compression of segments
US8762348B2 (en) 2009-06-09 2014-06-24 Emc Corporation Segment deduplication system with compression of segments
WO2010144123A1 (en) * 2009-06-09 2010-12-16 Emc Corporation Segment deduplication system with encryption segments
CN101916171A (zh) * 2010-07-16 2010-12-15 中国科学院计算技术研究所 一种并发层次式的重复数据消除方法和系统
CN102043903A (zh) * 2010-12-23 2011-05-04 福建星网视易信息系统有限公司 电子菜谱重复点单检测方法及系统
CN103917960A (zh) * 2011-08-19 2014-07-09 株式会社日立制作所 存储装置和副本数据检测方法
CN103414759B (zh) * 2013-07-22 2016-12-28 华为技术有限公司 网盘文件传输方法和装置
CN103970852A (zh) * 2014-05-06 2014-08-06 浪潮电子信息产业股份有限公司 一种备份服务器的数据重删方法
CN105373452B (zh) * 2015-12-11 2019-02-01 上海爱数信息技术股份有限公司 一种数据备份方法
CN106534282A (zh) * 2016-10-26 2017-03-22 努比亚技术有限公司 一种移动终端上传文件的方法和装置
CN115470186A (zh) * 2022-07-29 2022-12-13 天翼云科技有限公司 一种数据切片方法、装置和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1295292A (zh) * 1999-11-05 2001-05-16 国际商业机器公司 用于多语言万维网服务器的方法和系统
CN1314634A (zh) * 2000-03-17 2001-09-26 索尼株式会社 文档转换方法、文档转换器、以及文档显示系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1295292A (zh) * 1999-11-05 2001-05-16 国际商业机器公司 用于多语言万维网服务器的方法和系统
CN1314634A (zh) * 2000-03-17 2001-09-26 索尼株式会社 文档转换方法、文档转换器、以及文档显示系统

Also Published As

Publication number Publication date
CN101158954A (zh) 2008-04-09

Similar Documents

Publication Publication Date Title
CN101158954B (zh) 一种在计算机存储中识别重复数据的方法
US9467460B1 (en) Modularized database architecture using vertical partitioning for a state machine
US8615499B2 (en) Estimating data reduction in storage systems
CN102411637B (zh) 分布式文件系统的元数据管理方法
CN102375837B (zh) 数据采集系统和方法
US20100312749A1 (en) Scalable lookup service for distributed database
CN109299157B (zh) 一种分布式大单表的数据导出方法及装置
CN102833298A (zh) 分布式的重复数据删除系统及其处理方法
CN102142032B (zh) 一种分布式文件系统的数据读写方法及系统
CN104618304A (zh) 数据处理方法及数据处理系统
US20110264628A1 (en) Data collector
CN107291768A (zh) 一种索引建立的方法及装置
CN111667141A (zh) 未决任务案件的处理方法、装置、设备及存储介质
CN104956340A (zh) 可扩展数据重复删除
CN111460038A (zh) 一种数据准实时同步方法及装置
CN108241639B (zh) 一种数据去重方法
CN112969198A (zh) 数据传输方法、终端及存储介质
CN109271431B (zh) 数据抽取方法、装置、计算机设备及存储介质
CN109165259B (zh) 基于网络附属存储的索引表更新方法、处理器及存储装置
CN110516477A (zh) 文件处理方法及装置
CN114401239B (zh) 元数据传输方法、装置、计算机设备和存储介质
US9092338B1 (en) Multi-level caching event lookup
CN109213972B (zh) 确定文档相似度的方法、装置、设备和计算机存储介质
CN113806803B (zh) 一种数据存储方法、系统、终端设备及存储介质
CN107070987B (zh) 用于分布式对象存储系统的数据获取方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C57 Notification of unclear or unknown address
DD01 Delivery of document by public notice

Addressee: He Hongfu

Document name: the First Notification of an Office Action

DD01 Delivery of document by public notice

Addressee: He Hongfu

Document name: Notification of Passing Examination on Formalities

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 201112 Shanghai, Minhang District, United Airlines route 1188, building second layer A-1 unit 8

Patentee after: SHANGHAI EISOO INFORMATION TECHNOLOGY CO., LTD.

Address before: 201103 Shanghai city Minhang District town of Pujiang United Road No. 1188 Building 2 layer 10

Patentee before: Shanghai Eisoo Software Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110928

Termination date: 20191107