CN102469142A - 重复数据删除程序的数据传输方法 - Google Patents
重复数据删除程序的数据传输方法 Download PDFInfo
- Publication number
- CN102469142A CN102469142A CN2010105501183A CN201010550118A CN102469142A CN 102469142 A CN102469142 A CN 102469142A CN 2010105501183 A CN2010105501183 A CN 2010105501183A CN 201010550118 A CN201010550118 A CN 201010550118A CN 102469142 A CN102469142 A CN 102469142A
- Authority
- CN
- China
- Prior art keywords
- block
- data
- service end
- client
- cryptographic hash
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种重复数据删除程序的数据传输方法,处理方法包括:对输入文件进行切分处理,产生多组数据区块;将数据区块进行哈希程序,用以哈希值;比对客户端中是否存在相同的哈希值;若不存在相同的哈希值,对数据区块进行压缩程序,并生成相应的已压缩区块;比对已压缩区块与数据区块的容量,判断两者的容量差值是否符合传输门槛值;两者的容量差值符合传输门槛值时,数据容量等于已压缩区块容量;将哈希值与数据容量传送给服务端;若数据区块不存在于服务端中,根据数据容量预分配存储空间,向客户端发出传送要求,将数据区块储存于服务端中。
Description
技术领域
本发明涉及一种重复数据删除的处理方法,特别涉及一种重复数据删除程序的数据传输方法。
背景技术
重复数据删除是一种数据缩减技术,通常用于基于磁盘的备份系统,主要目的在于减少存储系统中使用的存储容量。它的工作方式是在某个时间周期内查找不同文件中不同位置的重复可变大小数据块。重复的数据块用指示符取代。由于存储系统中总是充斥着大量的冗余数据。为了解决这个问题,节省更多空间,“重复删除”技术便顺理成章地成了人们关注的焦点。采用“重复删除”技术可以将存储的数据缩减为原来的1/20,从而让出更多的备份空间,不仅可以使存储系统上的备份数据保存更长的时间,而且还可以节约离线存储时所需的大量的带宽。请参考图1所示,其是为现有技术的运作流程示意图。
为能达到数据完整保存的目的,在进行重复数据删除的过程中,会对输入文件进行切分的处理。输入文件在经过切分处理后会产生多个数据区块。随后,将数据区块进行哈希处理,并产生相应各数据区块的一哈希值。将所得到的哈希值与储存于服务端中的哈希值进行比对,并判断有无相同的哈希值。若是存在相同的哈希值时,则代表此一数据区块曾经被存放于服务端中。服务端会通知客户端不需再将数据区块重复发送并储存于服务端中。如此一来,可以有效的降低服务端中的数据存储空间。
发明内容
鉴于以上的问题,本发明的目的在于提供一种重复数据删除程序的数据传输方法,应用于重复数据删除程序之中,用以降低客户端对服务端进行重复数据删除程序的数据传输量。
本发明所揭露的重复数据删除程序的数据传输方法包括以下步骤:由客户端对输入文件进行重复数据删除程序中的切分程序,并产生多组数据区块;将所述数据区块进行哈希(Hash)程序,产生相应的哈希值;比对客户端中是否存在相同的哈希值;若客户端中不存在相同的哈希值,则对数据区块进行压缩程序,并生成相应的已压缩区块;比对已压缩区块与数据区块的容量,判断已压缩区块与数据区块的容量差值是否符合传输门槛值;当已压缩区块与数据区块的容量差值符合传输门槛值时,则数据容量等于已压缩区块容量,并将哈希值与数据容量传送给服务端;由服务端根据哈希值判断数据区块是否已经存在于服务端中;若数据区块不存在于服务端中,则根据数据容量预分配存储空间,并向客户端发出传送要求,将数据区块传送至服务端并将数据区块储存于服务端中。
本发明应用在重复数据删除程序之中,将输入文件进行切分后所产生的数据区块进行压缩处理,藉以降低客户端与服务端之间的数据传输量。本发明还配合上述已压缩区块的存取,因此提出相应的已压缩区块的存取方法,藉以从已压缩区块中取得所要的数据。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1为现有技术的运作流程示意图;
图2为本发明的架构示意图;
图3为本发明的运作流程示意图。
其中,附图标记
210客户端
211哈希值列表
220服务端
221重复数据删除程序
具体实施方式
下面结合附图对本发明的结构原理和工作原理作具体的描述:
请参考图2所示,其为本发明的架构示意图。在本发明中所述的客户端210是用于运行重复数据删除程序的计算机装置,而服务端220则是用以储存经过重复数据删除程序221处理后的存储装置。因此,客户端210与服务端220可以同时为同一台计算机,或是不同一台的计算机装置所实现。客户端210用以接收输入文件与哈希值列表211。哈希值列表211用以记录服务端220中所存储的数据区块的哈希值。
在服务端220中则是运行本发明的数据压缩程序,请参考图3所示,其为本发明的运作流程示意图。本发明的数据压缩程序中包括以下步骤:
步骤S310:由客户端对输入文件进行重复数据删除程序中的切分程序,并产生多组数据区块;
步骤S320:对每一数据区块进行哈希程序,并产生相应的哈希值;
步骤S330:比对客户端中是否存在相同的哈希值;
步骤S340:若客户端中已存在相同的该哈希值,则向服务端发出禁止储存信息;
步骤S350:若客户端中不存在相同的哈希值,则对数据区块进行压缩程序,并生成相应的已压缩区块;
步骤S360:比对已压缩区块与数据区块的容量,判断已压缩区块与数据区块的容量差值是否大于传输门槛值;
步骤S371:当已压缩区块与数据区块的容量差值大于传输门槛值时,则将哈希值与数据容量传送给服务端;
步骤S372:当已压缩区块与数据区块的容量差值小于传输门槛值时,则把原始数据区块容量发给服务端;
步骤S380:由服务端根据哈希值与已压缩区块的数据容量判断已压缩区块是否已经存在于服务端中;以及
步骤S390:若已压缩区块不存在于服务端中,则向客户端发出传送要求,将已压缩区块传送至服务端并将已压缩区块储存于服务端中。
首先,客户端210接收输入文件,客户端210将输入文件进行重复数据删除程序221中的切分程序,用以产生多笔的数据区块。而切分程序可以是固定长度方式(fixed-size partition)或基于内容变长度分割方式(content-definedchunking,CDC)等方式。定长切分算法采用预先定义好的数据区块大小对输入文件进行切分。
定长分块算法的优点是简单、性能高。内容定义切分算法是一种变长分块算法,它应用指纹数据(例如通过Rabin指纹算法,将文件内容转换成预设的哈希值)将文件分割成长度大小不等的分块策略。与定长切分算法不同,内容定义切分算法是基于特定的指纹数据进行数据区块的切分处理,因此数据区块大小是可变化的。
接着,对每一个数据区块进行哈希程序的处理,藉以产生各数据区块的哈希值。其中,哈希程序的运算种类可以是但不限定为:MD5、SHA-1、SHA-256、SHA-512,单向哈希(One-way HASH)。
客户端210在计算各数据区块的哈希值后,由客户端210比对哈希值列表211中是否有相同的哈希值。若客户端210中已存在相同的该哈希值,则向服务端220发出禁止储存信息,用以向服务端220通知不储存此一数据区块。若是客户端210中不存在相同的哈希值,则对数据区块进行压缩程序,并生成相应数据区块的已压缩区块。压缩程序可以是但不限定为LZW压缩算法。
客户端210比对已压缩区块与数据区块的容量,并判断已压缩区块与数据区块的容量差值是否符合传输门槛值。由于不同的输入文件在压缩处理时,并不一定可以达到容量减缩的目的(例如:压缩比例、文件内容或文件长度都可能造成数据压缩的效能低落)。再加上数据区块压缩后,需要加上数据区块的压缩文件头与描述信息等数据,可能会产生已压缩区块的容量大于数据区块。因此在本发明中分别比对数据区块压缩前后的容量差值,藉以确认是否对数据区块进行压缩及传送的判断。
当已压缩区块与数据区块的容量差值小于传输门槛值时,则客户端210将把原始数据区块容量发给服务端220,使得服务器可以有效的提供预分配空间。当已压缩区块与数据区块的容量差值大于传输门槛值时,则表示数据区块的容量已确实的压缩。所以数据容量等于已压缩区块容量。接着,客户端210将哈希值与已压缩区块的数据容量传送给服务端220。服务端220将已压缩区块进行注记,用以记录属于哪一个数据区块及其顺序。
服务端220在接收数据区块(或已压缩区块)与数据容量后,由服务端220根据哈希值与已压缩区块的数据容量判断数据区块是否已经存在于服务端220中。若数据区块已存在于服务端220中,则服务端220命令客户端210不需储存数据区块。若已压缩区块不存在于服务端220中,则向客户端210发出传送要求,将已压缩区块传送至服务端220并将已压缩区块储存于服务端220中。于此同时,客户端210同时会向服务端220指定已压缩区块的存储空间。最后,服务端220向客户端210发出一通知信息。用以命令客户端210将已压缩区块的哈希值记录至哈希值列表211中。
本发明应用在重复数据删除程序221之中,将输入文件进行切分后所产生的数据区块进行压缩处理,藉以降低客户端210与服务端220之间的数据传输量。本发明还配合上述已压缩区块的存取,因此提出相应的已压缩区块的存取方法,藉以从已压缩区块中取得所要的数据。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (7)
1.一种重复数据删除程序的数据传输方法,应用于一重复数据删除程序之中,用以降低一客户端对一服务端传输该重复数据删除程序的数据传输量,其特征在于,该重复数据删除程序的数据传输方法包括以下步骤:
由该客户端对一输入文件进行该重复数据删除程序中的一切分程序,并产生多组数据区块;
对每一该数据区块进行一哈希程序,并产生相应的一哈希值;
比对该客户端中是否存在相同的该哈希值;
若该客户端中不存在相同的该哈希值,则对该数据区块进行一压缩程序,并生成相应的一已压缩区块;
比对该已压缩区块与该数据区块的容量,判断该已压缩区块与该数据区块的容量差值是否大于一传输门槛值;
当该已压缩区块与该数据区块的容量差值大于该传输门槛值时,则将该哈希值与该已压缩区块的一数据容量传送给服务端;
由该服务端根据该哈希值与该已压缩区块的该数据容量判断该已压缩区块是否已经存在于该服务端中;以及
若该已压缩区块不存在于该服务端中,则向该客户端发出一传送要求,将该已压缩区块传送至该服务端并将该已压缩区块储存于该服务端中。
2.根据权利要求1所述的重复数据删除程序的数据传输方法,其特征在于,在比对该客户端中是否存在相同的该哈希值的步骤后还包括:
若该客户端中已存在相同的该哈希值,则向该服务端发出一禁止储存信息。
3.根据权利要求1所述的重复数据删除程序的数据传输方法,其特征在于,判断该已压缩区块与该数据区块的容量差值是否符合该传输门槛值的步骤后还包括:
当该已压缩区块与该数据区块的容量差值小于该传输门槛值时,则该哈希值与该数据区块的该数据容量传送给该服务端。
4.根据权利要求3所述的重复数据删除程序的数据传输方法,其特征在于,将该已压缩区块的该数据容量传送至该服务端的步骤中还包括:
在该服务端中记录该数据区块为已压缩。
5.根据权利要求3所述的重复数据删除程序的数据传输方法,其特征在于,将该数据区块的该数据容量传送至该服务端的步骤中还包括:
在该服务端中记录该数据区块未压缩。
6.根据权利要求1所述的重复数据删除程序的数据传输方法,其特征在于,判断该数据区块是否已经存在于该服务端的步骤后还包括:
若该数据区块已存在于该服务端中,该服务端命令该客户端不需储存该数据区块。
7.根据权利要求1所述的重复数据删除程序的数据传输方法,其特征在于,该数据区块储存于该服务端的步骤后还包括:
由该服务端向所连接的该客户端发出一通知信息,在该通知信息中储存新储存的该压缩区块的该哈希值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105501183A CN102469142A (zh) | 2010-11-16 | 2010-11-16 | 重复数据删除程序的数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105501183A CN102469142A (zh) | 2010-11-16 | 2010-11-16 | 重复数据删除程序的数据传输方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102469142A true CN102469142A (zh) | 2012-05-23 |
Family
ID=46072305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105501183A Pending CN102469142A (zh) | 2010-11-16 | 2010-11-16 | 重复数据删除程序的数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102469142A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246730A (zh) * | 2013-05-08 | 2013-08-14 | 网易(杭州)网络有限公司 | 文件存储方法和设备、文件发送方法和设备 |
WO2014117729A1 (en) * | 2013-01-29 | 2014-08-07 | Huawei Technologies Co., Ltd. | Scalable data deduplication |
CN104239575A (zh) * | 2014-10-08 | 2014-12-24 | 清华大学 | 一种虚拟机镜像文件存储、分发方法及装置 |
CN104468028A (zh) * | 2013-09-25 | 2015-03-25 | 华为技术有限公司 | 一种数据编解码方法及设备 |
CN105426272A (zh) * | 2015-12-23 | 2016-03-23 | 北京奇虎科技有限公司 | 应用程序备份方法及装置 |
CN105656981A (zh) * | 2014-12-03 | 2016-06-08 | 仁宝电脑工业股份有限公司 | 数据传输方法及系统 |
CN106844090A (zh) * | 2015-12-07 | 2017-06-13 | 国际商业机器公司 | 基于压缩比历史的数据复制 |
WO2017168730A1 (ja) * | 2016-03-31 | 2017-10-05 | 富士通株式会社 | データ送信プログラム、データ送信方法及びデータ送信装置 |
CN108243256A (zh) * | 2018-01-19 | 2018-07-03 | 网宿科技股份有限公司 | 一种数据存储方法、编码设备及解码设备 |
CN113709510A (zh) * | 2021-08-06 | 2021-11-26 | 联想(北京)有限公司 | 高速率数据实时传输方法及装置、设备、存储介质 |
CN114091111A (zh) * | 2021-09-09 | 2022-02-25 | 深圳前海微众银行股份有限公司 | 一种区块链智能合约的存储方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706825A (zh) * | 2009-12-10 | 2010-05-12 | 华中科技大学 | 一种基于文件内容类型的重复数据删除方法 |
CN101741536A (zh) * | 2008-11-26 | 2010-06-16 | 中兴通讯股份有限公司 | 数据级容灾方法、系统和生产中心节点 |
CN101814045A (zh) * | 2010-04-22 | 2010-08-25 | 华中科技大学 | 一种用于备份服务的数据组织方法 |
WO2010114856A1 (en) * | 2009-03-30 | 2010-10-07 | Exar Corporation | System and method for data deduplication |
-
2010
- 2010-11-16 CN CN2010105501183A patent/CN102469142A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741536A (zh) * | 2008-11-26 | 2010-06-16 | 中兴通讯股份有限公司 | 数据级容灾方法、系统和生产中心节点 |
WO2010114856A1 (en) * | 2009-03-30 | 2010-10-07 | Exar Corporation | System and method for data deduplication |
CN101706825A (zh) * | 2009-12-10 | 2010-05-12 | 华中科技大学 | 一种基于文件内容类型的重复数据删除方法 |
CN101814045A (zh) * | 2010-04-22 | 2010-08-25 | 华中科技大学 | 一种用于备份服务的数据组织方法 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014117729A1 (en) * | 2013-01-29 | 2014-08-07 | Huawei Technologies Co., Ltd. | Scalable data deduplication |
CN103246730B (zh) * | 2013-05-08 | 2016-08-10 | 网易(杭州)网络有限公司 | 文件存储方法和设备、文件发送方法和设备 |
CN103246730A (zh) * | 2013-05-08 | 2013-08-14 | 网易(杭州)网络有限公司 | 文件存储方法和设备、文件发送方法和设备 |
CN104468028B (zh) * | 2013-09-25 | 2018-11-16 | 华为技术有限公司 | 一种数据编解码方法及设备 |
CN104468028A (zh) * | 2013-09-25 | 2015-03-25 | 华为技术有限公司 | 一种数据编解码方法及设备 |
CN104239575A (zh) * | 2014-10-08 | 2014-12-24 | 清华大学 | 一种虚拟机镜像文件存储、分发方法及装置 |
CN105656981A (zh) * | 2014-12-03 | 2016-06-08 | 仁宝电脑工业股份有限公司 | 数据传输方法及系统 |
US11281691B2 (en) | 2015-12-07 | 2022-03-22 | International Business Machines Corporation | Data replication based on compression ratio history |
CN106844090A (zh) * | 2015-12-07 | 2017-06-13 | 国际商业机器公司 | 基于压缩比历史的数据复制 |
CN106844090B (zh) * | 2015-12-07 | 2021-06-08 | 国际商业机器公司 | 基于压缩比历史的数据复制 |
CN105426272B (zh) * | 2015-12-23 | 2019-10-15 | 北京奇虎科技有限公司 | 应用程序备份方法及装置 |
CN105426272A (zh) * | 2015-12-23 | 2016-03-23 | 北京奇虎科技有限公司 | 应用程序备份方法及装置 |
JPWO2017168730A1 (ja) * | 2016-03-31 | 2018-12-27 | 富士通株式会社 | データ送信プログラム、データ送信方法及びデータ送信装置 |
US10637969B2 (en) | 2016-03-31 | 2020-04-28 | Fujitsu Limited | Data transmission method and data transmission device |
WO2017168730A1 (ja) * | 2016-03-31 | 2017-10-05 | 富士通株式会社 | データ送信プログラム、データ送信方法及びデータ送信装置 |
CN108243256A (zh) * | 2018-01-19 | 2018-07-03 | 网宿科技股份有限公司 | 一种数据存储方法、编码设备及解码设备 |
CN108243256B (zh) * | 2018-01-19 | 2020-08-04 | 网宿科技股份有限公司 | 一种数据存储方法、编码设备及解码设备 |
CN113709510A (zh) * | 2021-08-06 | 2021-11-26 | 联想(北京)有限公司 | 高速率数据实时传输方法及装置、设备、存储介质 |
CN114091111A (zh) * | 2021-09-09 | 2022-02-25 | 深圳前海微众银行股份有限公司 | 一种区块链智能合约的存储方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102469142A (zh) | 重复数据删除程序的数据传输方法 | |
US9477682B1 (en) | Parallel compression of data chunks of a shared data object using a log-structured file system | |
CN102467572B (zh) | 支持重复数据删除程序的数据区块查询方法 | |
CN102456059A (zh) | 重复数据删除的处理系统 | |
CN102799598A (zh) | 重复数据删除的数据复原方法 | |
US20120150824A1 (en) | Processing System of Data De-Duplication | |
CN106874348B (zh) | 文件存储和索引方法、装置及读取文件的方法 | |
US10585856B1 (en) | Utilizing data access patterns to determine compression block size in data storage systems | |
US20140358872A1 (en) | Storage system and method for performing deduplication in conjunction with host device and storage device | |
CN102378973A (zh) | 用于数据重复删除的系统及方法 | |
US20130067237A1 (en) | Providing random access to archives with block maps | |
CN105069111A (zh) | 云存储中基于相似性的数据块级数据去重方法 | |
CN106611035A (zh) | 一种云存储中重复数据删除的检索算法 | |
US10795860B1 (en) | WAN optimized micro-service based deduplication | |
CN105656981A (zh) | 数据传输方法及系统 | |
US11249987B2 (en) | Data storage in blockchain-type ledger | |
CN107391761B (zh) | 一种基于重复数据删除技术的数据管理方法及装置 | |
CN105893169A (zh) | 一种基于纠删码的文件存储方法和系统 | |
WO2017132797A1 (zh) | 数据整理方法、存储设备、存储控制器以及存储阵列 | |
CN103152430A (zh) | 一种缩减数据占用空间的云存储方法 | |
WO2021068891A1 (en) | Method, system, electronic device, and storage medium for storing and collecting temperature data | |
CN105630923A (zh) | 一种实现档案管理信息化的方法 | |
WO2021027252A1 (zh) | 块链式账本中的数据存储方法、装置及设备 | |
CN111274245B (zh) | 一种用于优化数据存储的方法和装置 | |
CN104965835A (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120523 |