CN105955675B - 一种用于去中心云环境的重复数据删除系统及方法 - Google Patents

一种用于去中心云环境的重复数据删除系统及方法 Download PDF

Info

Publication number
CN105955675B
CN105955675B CN201610456843.1A CN201610456843A CN105955675B CN 105955675 B CN105955675 B CN 105955675B CN 201610456843 A CN201610456843 A CN 201610456843A CN 105955675 B CN105955675 B CN 105955675B
Authority
CN
China
Prior art keywords
file
fingerprint value
uploaded
data
module
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.)
Active
Application number
CN201610456843.1A
Other languages
English (en)
Other versions
CN105955675A (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.)
Nanjing digital poly Technology Co., Ltd
Original Assignee
Nanjing Post and Telecommunication University
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 Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201610456843.1A priority Critical patent/CN105955675B/zh
Publication of CN105955675A publication Critical patent/CN105955675A/zh
Application granted granted Critical
Publication of CN105955675B publication Critical patent/CN105955675B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Abstract

本发明公开了一种用于去中心云环境的重复数据删除系统及方法,该系统由进行文件操作的客户端、存储数据块和管理元数据的存储节点共同构成,客户端包括文件预处理模块、局部重删模块、第一元数据管理模块、数据传输模块,存储节点包括重删模块、第二元数据管理模块、存储模块;该方法针对去中心云环境中存在的冗余数据,从客户端和存储节点共同执行重复数据删除操作,先删除重复的文件,再删除重复的数据块,从而降低了去中心云环境中数据的冗余性。

Description

一种用于去中心云环境的重复数据删除系统及方法
技术领域
本发明涉及一种用于去中心云环境的重复数据删除系统及方法,属于计算机数据存储技术领域。
背景技术
目前,云存储系统中重复数据删除技术的研究相对较少且大都集中于有中心云环境中数据的安全,典型的重删机制有基于代理加密的重删、基于交互式PoW(Proof ofOwnership,所有者证明)的重删、基于数据流行度的重删、基于语义安全的混合重删等。此外,还有权衡存储效率和容错性的动态数据重删机制。然而,有中心云环境中主节点(元数据服务器)管理着所有的元数据,真实的数据存放在各个存储节点上,这种管理方式较为简单方便,但很容易成为影响系统性能的瓶颈。尤其是,当存储节点数量规模很大时。一旦主节点宕机,客户端便无法与存储节点直接进行交互,存在着很大的风险性。无中心云环境的优势在于没有主节点,不受其限制,元数据信息和数据块的存储均由存储节点存储和管理。目前,并没有适用于无中心云环境的重复数据删除方法。
发明内容
本发明所要解决的技术问题是:提供一种用于去中心云环境的重复数据删除系统及方法,对重复文件和文件中的重复数据块进行删除,降低了去中心云环境的数据冗余性。
本发明为解决上述技术问题采用以下技术方案:
一种用于去中心云环境的重复数据删除系统,该系统包括若干客户端和若干存储节点,各存储节点逻辑构成Chord环,所述客户端包括文件预处理模块、局部重删模块、第一元数据管理模块、数据传输模块,存储节点包括重删模块、第二元数据管理模块、存储模块;
所述文件预处理模块用于对本地待上传文件进行分类;
所述局部重删模块用于对分类后的文件计算其指纹值,并将待上传文件的指纹值与本地已上传的同类型文件的指纹值进行比较,若指纹值相同,则不上传该文件,否则,将待上传文件的指纹值经数据传输模块上传到指纹值对应的存储节点;
所述第一元数据管理模块用于记录客户端已上传文件的指纹值及文件其他基本属性信息;
所述重删模块用于通过Chord算法查找待上传文件的指纹值,若找到,则通过数据传输模块通知客户端不用上传该文件,否则,告知客户端待上传文件为非重复文件;
所述局部重删模块还用于将非重复文件切分成数据块,并计算各数据块的指纹值,将各数据块的指纹值经数据传输模块上传到指纹值对应的存储节点;
所述重删模块还用于通过Chord算法查找数据块的指纹值,若找到,则通知客户端不用上传该数据块,否则,将该数据块上传到对应存储节点的存储模块;
所述第二元数据管理模块用于记录落在存储节点的各文件的指纹值,及构成文件的各数据块的元数据信息。
一种用于去中心云环境的重复数据删除方法,该方法包括如下步骤:
步骤1,各客户端对本地待上传文件进行分类,计算待上传文件的指纹值,将待上传文件的指纹值与本地已上传的同类型文件的指纹值进行比较,若指纹值相同,则将待上传文件删除,否则,将待上传文件的指纹值通过访问入口节点上传到对应的存储节点上;
步骤2,访问入口节点通过Chord算法查找待上传文件的指纹值,若找到,则通知客户端不用上传该文件,否则,告知客户端待上传文件为非重复文件;
步骤3,客户端将非重复文件切分成若干数据块,并计算各数据块的指纹值,将各数据块的指纹值上传到访问入口节点,由访问入口节点通过Chord算法查找数据块的指纹值,若找到,则通知客户端不用上传该数据块,否则,将该数据块上传到对应的存储节点。
作为本发明方法的一种优选方案,该方法还包括步骤4:当客户端向存储节点发出在线修改文件请求时,由文件指纹值所在存储节点将构成该文件的数据块预取到该存储节点上,供客户端进行编辑;此时,需要重新计算修改后的数据块的指纹值,并通过Chord算法查找重新计算的指纹值是否在数据块对应的存储节点上,若存在,则不保留修改后的数据块,若不存在,则将修改后的数据块存储到重新计算的指纹值对应的存储节点上。
作为本发明方法的一种优选方案,步骤3所述将非重复文件切分成若干数据块,并计算各数据块的指纹值的具体方法为:利用定长分块算法对非重复文件进行切分,块长为64MB,当非重复文件小于等于64MB时,无需切分,对所有数据块利用MD5算法计算指纹值。
作为本发明方法的一种优选方案,步骤1所述计算待上传文件的指纹值的算法为MD5算法。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
1、本发明用于去中心云环境的重复数据删除系统及方法,针对无中心云环境中数据存在冗余性的问题,对重复数据进行删除,降低了去中心云环境中数据的冗余性。
2、本发明用于去中心云环境的重复数据删除系统及方法,元数据不再由元数据服务器统一管理,全局重复数据删除的实现较为困难,尤其是与存储端现有指纹值的比对。存储端各个存储节点采用Chord算法作为路由算法,使得指纹值的比对变得更为方便快捷。
附图说明
图1是本发明用于去中心云环境的重复数据删除系统的整体架构图。
图2是本发明用于去中心云环境的重复数据删除方法的流程图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
如图1所示,为本发明去中心云环境的重复数据删除系统的体系架构图。该系统由m个客户端(Client)和n个存储节点(Storage Node,Snode)共同构成。其中,客户端主要是发起文件上传、访问、修改、删除等操作的对象;存储节点则负责存储数据块及其元数据信息。客户端进行文件级重复数据删除和数据块级重删的准备工作(文件切分和指纹值计算)。
客户端主要有文件预处理模块、局部重删模块、元数据管理模块和数据传输模块,其中文件预处理模块依据文件的类型进行文件分类,后期进行数据块级重删时先过滤掉小于64MB的非重复文件;局部重删模块从文件级和数据块级两个角度进行重删操作;元数据管理模块主要记录客户端已上传数据块的指纹值信息,以避免本地重复数据的上传;数据传输模块负责将待上传文件的元数据信息上传到存储端访问入口,将非重复数据块上传到目标存储节点上。各模块之间有着一定的联系,文件预处理模块处理后的文件交给局部重删模块进行文件级的重删,经过文件级重删后的非重复文件再返还给文件预处理模块进行过滤,最后再由局部重删模块执行数据块级重删的准备工作,包括文件切分成数据块和数据块指纹值的计算。
存储节点主要包括重删模块、元数据管理模块和存储模块,其中重删模块主要是用来去除不同用户上传的相同数据,包括相同文件和相同数据块;元数据管理模块记录本节点上的数据块的元数据信息和文件的重构信息表;存储模块用来存储真实的数据块。
如图2所示,为本发明用于去中心云环境的重复数据删除方法的流程图,按照以下各步骤进行重复数据删除:
步骤一:每个客户端对本地待上传文件进行预处理,通过文件级的局部重复数据删除操作以防重复文件的再次上传,然后将客户端无法确定为重复文件的文件指纹值批量上传到存储端的访问入口节点Nacc上。其中,文件级重复数据删除是通过MD5算法计算出文件的指纹值,首先去除待上传文件中相同的文件,然后与本地已上传的历史文件进行比对去除本地已上传过的文件,最后将无法确认为重复文件的文件通过查找存储端的元数据信息来确定。
存储端的访问入口节点是根据每个客户端用户的自身特点而特定的。用户注册时的id(全局唯一)决定了用户资料所应存放的存储节点,即该用户在存储端的访问入口。
步骤二:由存储端的访问入口节点Nacc使用Chord算法查找该文件的指纹值所在的存储节点以确定重复文件,若找到,则通知客户端不用上传,否则确认为非重复文件。其中,Chord算法作为去中心云环境存储端各个节点互相通信的路由算法,可快速查找到给定指纹值所在的目标存储节点,若该目标存储节点上没有该指纹值,则该文件为非重复文件,否则为重复文件。
步骤三:客户端对于非重复文件进行数据块级重复数据删除的准备工作,包括使用定长块切分文件(块长为64MB,文件小于等于64MB时,无需切分,直接将文件当作数据块处理)和计算切分好的数据块的指纹值(MD5算法),并通过存储端的访问入口节点Nacc使用Chord算法来查找这些数据块的指纹值,并将非重复数据块上传到对应的存储节点上。
步骤四:客户端发出在线修改文件的请求时,由文件指纹值所在存储节点Nfile根据文件的元数据信息将数据块预取到本节点Nfile上,供客户端进行编辑。每个存储节点上均保存着数据块的指纹值信息,也保存着文件的指纹值信息以及文件的重构信息。通过文件指纹值便可以定位到组成其的每个数据块的物理地址。通过查找文件的指纹值所在的存储节点,便可以在该节点上找到该文件的重构信息表,即组成该文件的各个数据块的相关信息。
步骤五:节点Nfile重新计算修改后的数据块的指纹值,使用Chord算法查找该指纹值以确认存储端是否已经存在。若存在,则节点Nfile不用保留修改后的数据块,更新相应的元数据;否则的话根据Chord算法找到其目标存储节点,将修改后的数据块迁移到目标节点上。
存储端的路由算法采用Chord算法,可保证同一个数据块始终存放在同一个存储节点上。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

Claims (5)

1.一种用于去中心云环境的重复数据删除系统,其特征在于,该系统包括若干客户端和若干存储节点,各存储节点逻辑构成Chord环,所述客户端包括文件预处理模块、局部重删模块、第一元数据管理模块、数据传输模块,存储节点包括重删模块、第二元数据管理模块、存储模块;
所述文件预处理模块用于对本地待上传文件进行分类;
所述局部重删模块用于对分类后的文件计算其指纹值,并将待上传文件的指纹值与本地已上传的同类型文件的指纹值进行比较,若指纹值相同,则不上传该文件,否则,将待上传文件的指纹值经数据传输模块上传到指纹值对应的存储节点;
所述第一元数据管理模块用于记录客户端已上传文件的指纹值及文件其他基本属性信息;
所述重删模块用于通过Chord算法查找待上传文件的指纹值,若找到,则通过数据传输模块通知客户端不用上传该文件,否则,告知客户端待上传文件为非重复文件;
所述局部重删模块还用于将非重复文件切分成数据块,并计算各数据块的指纹值,将各数据块的指纹值经数据传输模块上传到指纹值对应的存储节点;
所述重删模块还用于通过Chord算法查找数据块的指纹值,若找到,则通知客户端不用上传该数据块,否则,将该数据块上传到对应存储节点的存储模块;
所述第二元数据管理模块用于记录落在存储节点的各文件的指纹值,及构成文件的各数据块的元数据信息。
2.一种用于去中心云环境的重复数据删除方法,其特征在于,该方法包括如下步骤:
步骤1,各客户端对本地待上传文件进行分类,计算待上传文件的指纹值,将待上传文件的指纹值与本地已上传的同类型文件的指纹值进行比较,若指纹值相同,则将待上传文件删除,否则,将待上传文件的指纹值通过访问入口节点上传到对应的存储节点上;
步骤2,访问入口节点通过Chord算法查找待上传文件的指纹值,若找到,则通知客户端不用上传该文件,否则,告知客户端待上传文件为非重复文件;
步骤3,客户端将非重复文件切分成若干数据块,并计算各数据块的指纹值,将各数据块的指纹值上传到访问入口节点,由访问入口节点通过Chord算法查找数据块的指纹值,若找到,则通知客户端不用上传该数据块,否则,将该数据块上传到对应的存储节点。
3.根据权利要求2所述用于去中心云环境的重复数据删除方法,其特征在于,该方法还包括步骤4:当客户端向存储节点发出在线修改文件请求时,由文件指纹值所在存储节点将构成该文件的数据块预取到该存储节点上,供客户端进行编辑;此时,需要重新计算修改后的数据块的指纹值,并通过Chord算法查找重新计算的指纹值是否已经在对应的存储节点上,若存在,则不保留修改后的数据块,若不存在,则将修改后的数据块存储到重新计算的指纹值对应的存储节点上。
4.根据权利要求2或3所述用于去中心云环境的重复数据删除方法,其特征在于,步骤3所述将非重复文件切分成若干数据块,并计算各数据块的指纹值的具体方法为:利用定长分块算法对非重复文件进行切分,块长为64MB,当非重复文件小于等于64MB时,无需切分,对所有数据块利用MD5算法计算指纹值。
5.根据权利要求2或3所述用于去中心云环境的重复数据删除方法,其特征在于,步骤1所述计算待上传文件的指纹值的算法为MD5算法。
CN201610456843.1A 2016-06-22 2016-06-22 一种用于去中心云环境的重复数据删除系统及方法 Active CN105955675B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610456843.1A CN105955675B (zh) 2016-06-22 2016-06-22 一种用于去中心云环境的重复数据删除系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610456843.1A CN105955675B (zh) 2016-06-22 2016-06-22 一种用于去中心云环境的重复数据删除系统及方法

Publications (2)

Publication Number Publication Date
CN105955675A CN105955675A (zh) 2016-09-21
CN105955675B true CN105955675B (zh) 2018-11-09

Family

ID=56904172

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610456843.1A Active CN105955675B (zh) 2016-06-22 2016-06-22 一种用于去中心云环境的重复数据删除系统及方法

Country Status (1)

Country Link
CN (1) CN105955675B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108415671B (zh) * 2018-03-29 2021-04-27 上交所技术有限责任公司 一种面向绿色云计算的重复数据删除方法及系统
CN109213738B (zh) * 2018-11-20 2022-01-25 武汉理工光科股份有限公司 一种云存储文件级重复数据删除检索系统及方法
CN110399348A (zh) * 2019-07-19 2019-11-01 苏州浪潮智能科技有限公司 文件重删方法、装置、系统及计算机可读存储介质
CN111488420B (zh) * 2020-04-02 2020-12-18 中国科学院地理科学与资源研究所 去中心微服务化区域洪水预警水信息系统及其集成方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095824A (zh) * 2013-01-09 2013-05-08 广东一一五科技有限公司 文件上传控制方法及系统
CN103514250A (zh) * 2013-06-20 2014-01-15 易乐天 一种全局重复数据删除的方法和系统及存储装置
CN103873507A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据分块上传与存储系统及方法
CN103944988A (zh) * 2014-04-22 2014-07-23 南京邮电大学 一种适用于云存储的重复数据删除系统和方法
CN104408111A (zh) * 2014-11-24 2015-03-11 浙江宇视科技有限公司 一种删除重复数据的方法及装置
CN105487818A (zh) * 2015-11-27 2016-04-13 清华大学 针对云存储系统中重复冗余数据的高效去重方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103873506A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 存储集群中的数据块去重系统及方法
CN103873503A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据块备份系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103873507A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据分块上传与存储系统及方法
CN103095824A (zh) * 2013-01-09 2013-05-08 广东一一五科技有限公司 文件上传控制方法及系统
CN103514250A (zh) * 2013-06-20 2014-01-15 易乐天 一种全局重复数据删除的方法和系统及存储装置
CN103944988A (zh) * 2014-04-22 2014-07-23 南京邮电大学 一种适用于云存储的重复数据删除系统和方法
CN104408111A (zh) * 2014-11-24 2015-03-11 浙江宇视科技有限公司 一种删除重复数据的方法及装置
CN105487818A (zh) * 2015-11-27 2016-04-13 清华大学 针对云存储系统中重复冗余数据的高效去重方法

Also Published As

Publication number Publication date
CN105955675A (zh) 2016-09-21

Similar Documents

Publication Publication Date Title
US9672267B2 (en) Hybrid data management system and method for managing large, varying datasets
US11256667B2 (en) Deduplicated merged indexed object storage file system
CN105955675B (zh) 一种用于去中心云环境的重复数据删除系统及方法
CN105069111B (zh) 云存储中基于相似性的数据块级数据去重方法
US9141633B1 (en) Special markers to optimize access control list (ACL) data for deduplication
CN104932841B (zh) 一种云存储系统中节约型重复数据删除方法
CN104081391B (zh) 使用文件克隆的单实例化方法和利用该方法的文件存储系统
US9928210B1 (en) Constrained backup image defragmentation optimization within deduplication system
US9798486B1 (en) Method and system for file system based replication of a deduplicated storage system
US8370315B1 (en) System and method for high performance deduplication indexing
US9509652B2 (en) Method and system for displaying similar email messages based on message contents
US9087011B2 (en) Data selection for movement from a source to a target
US20200057752A1 (en) Deduplication index enabling scalability
US8825626B1 (en) Method and system for detecting unwanted content of files
CN102708165B (zh) 分布式文件系统中的文件处理方法及装置
US9965542B2 (en) Method for data maintenance
US20140032496A1 (en) Information storage system and data replication method thereof
US8756249B1 (en) Method and apparatus for efficiently searching data in a storage system
US10838923B1 (en) Poor deduplication identification
CN108089816B (zh) 一种基于负载均衡的查询式重复数据删除方法及装置
CN106201771A (zh) 数据存储系统和数据读写方法
US9679007B1 (en) Techniques for managing references to containers
AU2021266178B2 (en) Custom metadata tag inheritance based on a filesystem directory tree or object storage bucket
CN108415671A (zh) 一种面向绿色云计算的重复数据删除方法及系统
US20140321720A1 (en) Managing social network distance in social networks using photographs

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20191223

Address after: Room 19A, No.108 Hanzhong Road, Gulou District, Nanjing, Jiangsu Province 210005

Patentee after: Nanjing digital poly Technology Co., Ltd

Address before: Yuen Road Qixia District of Nanjing City, Jiangsu Province, No. 9 210023

Patentee before: Nanjing Post & Telecommunication Univ.

TR01 Transfer of patent right