CN116991811A - 一种分布式协同去重方法及系统 - Google Patents
一种分布式协同去重方法及系统 Download PDFInfo
- Publication number
- CN116991811A CN116991811A CN202310969576.8A CN202310969576A CN116991811A CN 116991811 A CN116991811 A CN 116991811A CN 202310969576 A CN202310969576 A CN 202310969576A CN 116991811 A CN116991811 A CN 116991811A
- Authority
- CN
- China
- Prior art keywords
- file
- deduplication
- fingerprint
- client
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000008569 process Effects 0.000 claims description 4
- 230000008859 change Effects 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 6
- 230000000694 effects Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 101100226364 Arabidopsis thaliana EXT1 gene Proteins 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001680 brushing effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1748—De-duplication implemented within the file system, e.g. based on file segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式协同去重方法及系统,属于计算机存储管理技术,客户端执行步骤包括:S101:扫描分布式文件系统目录下所有文件并获取各个文件的路径信息、指纹信息和设备地址信息;S102:将各个文件的路径信息、指纹信息和设备地址信息发送给服务器端;S103:接收服务器端反馈的重删表,并删除对应的重复文件;服务器端执行步骤包括:S201:接收各个文件的路径信息、指纹信息和设备地址信息;S202:执行重复指纹查找工作;S203:将重删表发送给客户端。其效果是:能够对分布式下的所有设备进行去重,并通过软软链与硬链接结合的方式规避了因源文件发生改变而导致去重失效的情况,去重率高,一致性强。
Description
技术领域
本发明涉及计算机存储技术,尤其涉及一种分布式协同去重方法及系统。
背景技术
文件级去重技术是指对文件进行去重处理的一种方法,其目的是在保持文件原有结构的情况下,实现数据冗余的删除,从而提高存储和备份的效率。常见的文件级去重技术包括哈希去重、数据指纹去重和基于语义的去重等,具体介绍如下:
哈希去重:通过MD5、SHA1(Secure Hash Algorithm 1,安全散列算法1)等哈希算法计算文件内容的哈希值,将其作为唯一的标识(指纹),并将相同哈希值的文件判定为重复文件进行去重。哈希去重的优点是处理速度快,适合处理大批量的文件,但缺点是计算复杂度高需要消耗较多的计算资源,并且存在哈希冲突的问题,可能会导致去重漏检或误判的情况。
数据指纹去重:是将文件内容转化为一个字符串,再将这个字符串转化为数字指纹,以此来判断文件是否相同。虽然这种方法可以检测出内容相似但哈希值不同的情况,但是它的实现比较复杂,而且需要对数据集进行全局分析,计算量大,效率相对较低。
基于语义的去重:通过对文件的内容、结构、语义特征等进行分析,识别出具有相同或高度相似的文档,从而实现去重。基于语义的去重技术能够有效地处理语义复杂的文件,但需要更加深入的内容分析和特征提取,计算复杂度较高,处理速度相较于哈希去重和数据指纹去重等技术略慢。
上述的各种技术发展比较成熟且得到了较为广泛的应用,但是,现有的文件级去重,大都是在单一设备中通过算法对文件进行分析和处理,以便快速地检测出重复的数据块或整个文件,并将其删除或替换为引用源文件的链接。主要面临以下几个问题:
(1)由于是文件级去重,去重粒度大,并且基本都是在单一设备上进行去重,重复文件并不会太多,去重率并不高。
(2)在某些应用场景中,同一份文件的内容可能会发生一些变化(例如更改文件名、修改内容、添加/删除文件),这会导致原有的去重结果失效,需要进行重新计算和处理。
(3)现有的文件级去重大都只适用于单一设备,其去重方法并不能在多个设备之间奏效。
发明内容
有鉴于此,本发明的首要目的在于提供一种分布式协同去重方法,通过对多个设备间的文件并行地进行去重,提高去重率,同时采用软链接和硬链接结合的链接方式,有效的规避因为源文件发生变化(如修改文件名、删除文件等)而导致的原有去重失效。
为了实现上述目的,本发明采用的技术方案是:
一种分布式协同去重方法,其关键在于,客户端执行步骤包括:
S101:扫描分布式文件系统目录下所有文件并获取各个文件的路径信息、指纹信息和设备地址信息;
S102:将各个文件的路径信息、指纹信息和设备地址信息发送给服务器端;
S103:接收服务器端反馈的重删表,并按照重删表中的条目删除对应的重复文件;
所述重删表由所述服务器端根据收到的各个文件的路径信息、指纹信息和设备地址信息并通过重复指纹查找工作形成的。
可选地,所述指纹信息为通过MD5算法计算出的文件内容对应的哈希值,所述设备地址信息为客户端的MAC地址。
可选地,所述客户端接收到服务器端反馈的重删表后,遍历所述重删表中的每一个条目并删除对应的重复文件,且将重删表保存在本地供后续内核模块使用。
可选地,所述客户端在步骤S103中还接收有所述服务器端反馈的硬链接表,如果所述硬链接表中的硬链接文件路径对应的文件存在且引用计数为0,则将硬链接文件路径对应的文件删除;如果所述硬链接表中的硬链接文件路径对应的文件不存在且引用计数不为0,则创建硬链接使其硬链接到唯一源文件路径对应的文件上。
可选地,所述客户端通过Socket连接将各个文件的路径信息、指纹信息和设备地址信息发送给所述服务器端,且通过Socket连接从所述服务器端获取所述重删表或/和硬链接表。
可选地,当所述客户端与所述服务器端之间的Socket连接断开后,所述客户端通过插入内核模块和修改分布式文件系统的调用接口实现重定位。
此外,针对服务器端,本发明提供的一种分布式协同去重方法,服务器端执行步骤包括:
S201:接收各个文件的路径信息、指纹信息和设备地址信息;
S202:执行重复指纹查找工作,如果指纹表中存在收到的指纹信息,则将对应文件的路径信息加入重删表中,如果指纹表中不存在收到的指纹信息,则将收到的指纹信息加入指纹表中;
S203:将重删表发送给客户端。
可选地,服务器端启动Socket等待客户端的连接,每当有客户端建立Socket连接后,启动一个重删线程,并按照步骤S201、S202和S203实现对客户端的文件进行去重处理。
可选地,所述指纹表采用线程安全的哈希表,且每个哈希桶采用一个读写锁来保护,当多个线程同时访问哈希表的时候,如果只有读操作,则可并发访问同一个哈希桶,如果有写操作,则需要独占访问哈希桶,其他线程则等待读写锁的释放;
当收到客户端发送的数据,服务器端逐条比对每一条数据,如果该数据在指纹表中存在,则将其加入重删表中,并将指纹表对应条目的引用次数加一;如果数据在指纹表中不存在,则插入指纹表中,;
待所有线程均已经比对完客户端的数据后,服务器端遍历指纹表的每一个条目,如果该条目的设备号与客户端的设备号相同,则构建一个条目加入硬链接表中,最后将重删表和硬链接表发送给客户端;
所述指纹表的条目包括唯一源文件路径、指纹信息、设备号信息和引用次数;
所述重删表的条目包括唯一源文件路径、重复文件路径和是否与本地源文件重复标志;
所述硬链接表的条目包括唯一源文件路径、硬链接文件路径和引用次数。
基于上述方法,本发明还提供一种分布式协同去重系统,包括服务器端和多个客户端,所述客户端配置有用于实现前文所述分布式协同去重方法的执行程序,所述服务器端配置有用于实现前文所述分布式协同去重方法的执行程序。
本发明的显著效果在于:
本发明提供的一种分布式协同去重方法及系统,能够对分布式下的所有设备进行去重,并通过软软链与硬链接结合的方式规避了因源文件发生改变而导致去重失效的情况,具有去重率高,一致性强等优点。
附图说明
图1是本发明具体实施例中的分布式协同去重系统架构图;
图2是本发明具体实施例中指纹表的条目信息示意图;
图3是本发明具体实施例中重删表的条目信息示意图;
图4是本发明具体实施例中硬链接表的条目信息示意图;
图5是本发明具体实施例中HMDFS数据结构图;
图6是本发明具体实施例中重定位的控制流程图。
具体实施方式
下面结合附图具体阐明本发明的实施方式,实施例的给出仅仅是为了说明目的,并不能理解为对本发明的限定,包括附图仅供参考和说明使用,不构成对本发明专利保护范围的限制,因为在不脱离本发明精神和范围基础上,可以对本发明进行许多改变。
如图1所示,本实施例首先提供一种分布式协同去重方法,客户端执行步骤包括:
S101:扫描分布式文件系统目录下所有文件并获取各个文件的路径信息、指纹信息和设备地址信息;
S102:将各个文件的路径信息、指纹信息和设备地址信息发送给服务器端;
S103:接收服务器端反馈的重删表,并按照重删表中的条目删除对应的重复文件;
服务器端执行步骤包括:
S201:接收各个文件的路径信息、指纹信息和设备地址信息;
S202:执行重复指纹查找工作,如果指纹表中存在收到的指纹信息,则将对应文件的路径信息加入重删表中,如果指纹表中不存在收到的指纹信息,则将收到的指纹信息加入指纹表中;
S203:将重删表发送给客户端。
具体来说,以鸿蒙分布式文件系统(HMDFS)为例,每个客户端负责并行地扫描HMDFS目录下的所有文件,保存每个文件的路径,记为filepath,然后通过MD5算法计算出每个文件内容对应的哈希值,将其作为指纹(fingerprint),同时获取到客户端对应的网卡地址,将其记为device id。将指纹信息(fingerprint)、路径信息(filepath)和设备地址信息(device id)这个三元组通过Socket发送给服务器端,等接收到服务器端发送的重删表后,进行文件的重删工作。而服务器端负责接收多个客户端传送过来的数据,随后执行重复指纹查找工作,如果指纹表中存在收到的指纹信息,则将对应文件的路径信息加入重删表中,如果指纹表中不存在收到的指纹信息,则将收到的指纹信息加入指纹表中,最后将重删表发送给客户端。
分布式协同去重是由客户端和服务器端协作完成,下面分别详细介绍客户端和服务器端的去重流程。
针对服务器端,服务器端启动Socket等待客户端的连接,每当有客户端建立Socket连接后,启动一个重删线程,该线程负责对客户端的数据进行重删工作。服务器保存一个如图2所示的指纹表,它负责记录每个唯一文件的属性,指纹表条目包括唯一源文件路径(filepath)、指纹(fingerprint)、设备号(device id)和引用次数(count)。由于分布式架构中存在多个客户端,可能会有多个线程同时使用指纹表,因此需要使用线程安全的哈希表作为指纹表,如果不使用线程安全的哈希表会出现数据不一致的问题,从而导致内存泄露。本实施例使用读写锁来实现线程安全的哈希表:对于每个哈希桶,使用一个读写锁来保护,当多个线程同时访问哈希表的时候,如果只有读操作,则可以并发访问同一个哈希桶,提高并发性能。如果有写操作,则需要独占访问哈希桶,其他线程需要等待读写锁的释放,从而保护数据的一致性。
每当有客户端发送新的数据过来,服务器端逐条比对每一条数据,如果该数据在指纹表中存在,则将其加入重删表中,重删表如图3所示,重删表的条目由唯一源文件路径(filepath)、重复文件路径(delpath)和是否与本地源文件重复(islocal)三个成员组成,并将指纹表对应条目的引用次数(count)加一;如果数据在指纹表中不存在,那么就插入指纹表中。
待所有线程均已经比对完客户端的数据后,服务器端遍历指纹表的每一个条目,如果该条目的设备号与客户端的设备号相同,那么就构建一个条目加入硬链接表中,硬链接表如图4所示,该表条目由唯一源文件路径(filepath)、硬链接文件路径(hardlinkpath)和引用次数(count)组成。执行完成后将重删表和硬链接表发送给客户端,重删表是让客户端执行重复文件删除,硬链接表是让客户端添加或删除对唯一源文件的硬链接。
而针对客户端而言,客户端首先与服务器端建立Socket连接,随后通过一个扫描线程扫描HMDFS文件系统所在的目录,每当扫描到文件时,将其文件路径(filepath)和文件内容通过MD5算法哈希后的哈希值(fingerprint)保存在文件信息表中。然后获取其自身的MAC地址,将文件信息表和MAC地址发送给服务器端。
待服务器端发送重删表和硬链接表后,客户端对这两个表分别做相应的处理。首先是重删表,遍历每一个条目,通过系统调用unlink删除条目中delpath对应的文件,随后将重删表保存在本地供后续内核模块使用。然后是硬链接表,针对硬链接表分为两种情况:一种情况是,如果条目中的hardlinkpath对应的文件存在,并且引用计数(count)为0,代表整个分布式环境下没有其他文件重定位到该文件,将hardlinkpath对应的文件删除,另一种情况是,如果条目中的hardlinkpath对应的文件不存在,并且引用计数不为0,代表整个分布式环境下有文件重定位到该文件,那么通过link系统调用创建硬链接,硬链接到filepath对应的文件上。这样做的目的一方面是为了后续打开重复文件进行重定位时需要用到该硬链接;另一方面维护了唯一源文件的引用计数。
此外,当所述客户端与所述服务器端之间的Socket连接断开后,所述客户端通过插入内核模块和修改分布式文件系统的调用接口实现重定位。具体而言,在客户端与服务器端通信结束后,客户端通过插入内核模块和修改HMDFS的open系统调用接口int hmdfs_file_open_local(struct inode*inode,struct file*file)来实现重定位。
在进行重定位时,本发明还设计了一种将软链接和硬链接相结合的链接方式,来使重复文件重定位到源文件的同时,也能够有效地规避因为源文件发生变化而导致的原有去重失效。文件的重定位分为两个方面:本地文件与本地文件的重定位,以及本地文件与远程文件的重定位,我们通过插入一个内核模块和修改HMDFS的open接口来实现重定位,进而达到多个设备共用同一个源文件的目的。
具体实施时,内核模块主要做两件事:第一件事是依次读取重删表的每一个条目,创建一个和delpath同名的文件,并将filepath写入文件中。另一件事是为这个文件设置一个标志位,表明该文件是重删文件,在打开时需要做重定位操作,我们通过修改该文件对应底层文件inode的i_flags成员,将i_flags添加一个标志位S_DEDUP,然后将修改后的inode通过write_inode_now()函数刷入磁盘。
针对open系统调用而言,HMDFS是一个堆叠式文件系统,它在虚拟文件系统之下,具体文件系统之上。它并不会直接操作外部存储,而是通过虚拟文件系统让具体文件系统来为其实现文件操作。图5所示是HMDFS文件系统的数据结构,在VFS中,HMDFS的dentry结构体会通过hmdfs_dentry_info结构体指向对应的具体文件系统的path结构体;同样的,HMDFS通过hmdfs_inode_info结构体指向具体文件系统的inode结构体。这样,HMDFS就与底层文件系统实现了关联,从而能间接地通过VFS操作具体文件系统。
在HMDFS的本地open接口hmdfs_file_open_local()函数中,该函数会先通过VFS中HMDFS的dentry获取到底层文件系统的path,这里称为lower_path,之后通过dentry_open()函数打开lower_path获取到底层文件系统的file结构体,这里称为lower_file,随后将hmdfs_file_info的lower_file指针指向lower_file,便实现了HMDFS和具体文件系统file结构体的绑定。在绑定之后,HMDFS都是通过lower_file这个指针来操作底层文件系统的文件,如读写等操作。
由于之前在内核模块中我们给底层文件系统的inode的i_flags成员设置了S_DEDUP,因此,我们在获取到lower_file之后,通过lower_file获取到其inode,然后判断该文件是否是重删文件。如果是重删文件,将该文件的内容即硬链接的路径作为filp_open的参数,从而能够获取到在VFS中属于HMDFS中的唯一文件的file结构体,在将hmdfs_file_info的lower_file指针指向该file结构体,便实现了重定位的操作。
重定位的具体思路如图6所示:在HMDFS文件系统中存在一个文件名是test1的文件,其指纹是AEF08F。同时,存在一个文件名是test2的文件,其指纹也是AEF08F。现在将test1文件删除并创建一个同名文件,将其inode的i_flags成员设置为S_DEDUP,然后在底层文件系统中创建一个test2的硬链接,这个硬链接的文件名即是指纹名AEF08F,将硬链接的路径写入test1,这样test1就重定位到HMDFS中名为AEF08F硬链接文件上。这样做的好处是一方面可以使得test1重定位到唯一源文件上,读写唯一源文件的内容;另一方面,可以使得test1与test2解耦,由于test1是通过test2的硬链接路径实现重定位的,test1获取内容时并不会因为test2删除或重命名等行为而改变,这样也就避免了重定位的失效。
综上可以看出,本发明使用的软链接和硬链接相结合的方法,也可以直接使用软链接做到类似的效果。
此外,本发明在具体实施时,还针对linux文件系统中的一文一密做了相应的解密操作。由于HMDFS是堆叠式的文件系统,其最终还是需要操作本地文件系统,如果文件文件系统如EXT4开启了一文一密,那么在客户端线程进行扫描时便无法获取到文件的内容,进而无法对文件的内容进行哈希运算。
用户可以使用fscryptctl等工具,通过add_key、set_policy等命令将目录加密。当用户态使用add_key命令将主秘钥加入文件系统时,会在内核调用fscrypt_ioctl_add_key()函数将主密钥加入文件系统,每当用户使用add_key命令时,我们都在该函数中获取到主密钥并将其保存起来。在重删系统中,有两个场景需要用到主密钥:一个场景是文件去重,该过程需要扫描目录并对文件内容做哈希运算,因此,需要用主密钥解密原文件内容;另一个场景是重定位,由于重定位需要访问文件的硬链接,而被链接的文件处于加密状态,此时需要用主密钥解密被链接的文件。
对于第一个场景,通过system()系统调用将主密钥加入文件系统,在扫描结束后通过remove_key将主密钥移除。对于第二个场景,HMDFS对应的底层文件系统是EXT4,因此直接修改EXT4的open系统调用,当open被调用时会判断其父目录是否为硬链接目录,如果是就将主密钥加入文件系统,文件关闭时将主密钥移除。
综上可以看出,本实施例使用HMDFS分布式文件系统作为分布式平台,能够对分布式下的所有设备进行去重,并通过软软链与硬链接结合的方式规避了因源文件发生改变而导致去重失效的情况,具有去重率高,一致性强等优点。
此外,基于上述方法,本发明还提供一种分布式协同去重系统,包括服务器端和多个客户端,所述客户端配置有用于实现前文所述分布式协同去重方法的执行程序,所述服务器端配置有用于实现前文所述分布式协同去重方法的执行程序。
最后需要说明的是,上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.一种分布式协同去重方法,其特征在于,客户端执行步骤包括:
S101:扫描分布式文件系统目录下所有文件并获取各个文件的路径信息、指纹信息和设备地址信息;
S102:将各个文件的路径信息、指纹信息和设备地址信息发送给服务器端;
S103:接收服务器端反馈的重删表,并按照重删表中的条目删除对应的重复文件;
所述重删表由所述服务器端根据收到的各个文件的路径信息、指纹信息和设备地址信息并通过重复指纹查找工作形成的。
2.根据权利要求1所述的分布式协同去重方法,其特征在于:所述指纹信息为通过MD5算法计算出的文件内容对应的哈希值,所述设备地址信息为客户端的MAC地址。
3.根据权利要求1所述的分布式协同去重方法,其特征在于:所述客户端接收到服务器端反馈的重删表后,遍历所述重删表中的每一个条目并删除对应的重复文件,且将重删表保存在本地供后续内核模块使用。
4.根据权利要求1所述的分布式协同去重方法,其特征在于:所述客户端在步骤S103中还接收有所述服务器端反馈的硬链接表,如果所述硬链接表中的硬链接文件路径对应的文件存在且引用计数为0,则将硬链接文件路径对应的文件删除;如果所述硬链接表中的硬链接文件路径对应的文件不存在且引用计数不为0,则创建硬链接使其硬链接到唯一源文件路径对应的文件上。
5.根据权利要求1-4任一所述的分布式协同去重方法,其特征在于:所述客户端通过Socket连接将各个文件的路径信息、指纹信息和设备地址信息发送给所述服务器端,且通过Socket连接从所述服务器端获取所述重删表或/和硬链接表。
6.根据权利要求5所述的分布式协同去重方法,其特征在于:当所述客户端与所述服务器端之间的Socket连接断开后,所述客户端通过插入内核模块和修改分布式文件系统的调用接口实现重定位。
7.一种分布式协同去重方法,其特征在于:服务器端执行步骤包括:
S201:接收各个文件的路径信息、指纹信息和设备地址信息;
S202:执行重复指纹查找工作,如果指纹表中存在收到的指纹信息,则将对应文件的路径信息加入重删表中,如果指纹表中不存在收到的指纹信息,则将收到的指纹信息加入指纹表中;
S203:将重删表发送给客户端。
8.根据权利要求7所述的分布式协同去重方法,其特征在于:服务器端启动Socket等待客户端的连接,每当有客户端建立Socket连接后,启动一个重删线程,并按照步骤S201、S202和S203实现对客户端的文件进行去重处理。
9.根据权利要求7或8所述的分布式协同去重方法,其特征在于:所述指纹表采用线程安全的哈希表,且每个哈希桶采用一个读写锁来保护,当多个线程同时访问哈希表的时候,如果只有读操作,则可并发访问同一个哈希桶,如果有写操作,则需要独占访问哈希桶,其他线程则等待读写锁的释放;
当收到客户端发送的数据,服务器端逐条比对每一条数据,如果该数据在指纹表中存在,则将其加入重删表中,并将指纹表对应条目的引用次数加一;如果数据在指纹表中不存在,则插入指纹表中,;
待所有线程均已经比对完客户端的数据后,服务器端遍历指纹表的每一个条目,如果该条目的设备号与客户端的设备号相同,则构建一个条目加入硬链接表中,最后将重删表和硬链接表发送给客户端;
所述指纹表的条目包括唯一源文件路径、指纹信息、设备号信息和引用次数;
所述重删表的条目包括唯一源文件路径、重复文件路径和是否与本地源文件重复标志;
所述硬链接表的条目包括唯一源文件路径、硬链接文件路径和引用次数。
10.一种分布式协同去重系统,包括服务器端和多个客户端,其特征在于:所述客户端配置有用于实现权利要求1-6任一所述分布式协同去重方法的执行程序,所述服务器端配置有用于实现权利要求7-9任一所述分布式协同去重方法的执行程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310969576.8A CN116991811A (zh) | 2023-08-02 | 2023-08-02 | 一种分布式协同去重方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310969576.8A CN116991811A (zh) | 2023-08-02 | 2023-08-02 | 一种分布式协同去重方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116991811A true CN116991811A (zh) | 2023-11-03 |
Family
ID=88529719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310969576.8A Pending CN116991811A (zh) | 2023-08-02 | 2023-08-02 | 一种分布式协同去重方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116991811A (zh) |
-
2023
- 2023-08-02 CN CN202310969576.8A patent/CN116991811A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210173853A1 (en) | Selective synchronization of content items in a content management system | |
CN102629247B (zh) | 一种数据处理方法、装置和系统 | |
US9792306B1 (en) | Data transfer between dissimilar deduplication systems | |
US8443000B2 (en) | Storage of data with composite hashes in backup systems | |
US7672981B1 (en) | Object classification and indexing of very large name spaces using grid technology | |
US8219524B2 (en) | Application-aware and remote single instance data management | |
US8812563B2 (en) | System for permanent file deletion | |
US20200412525A1 (en) | Blockchain filesystem | |
US7680998B1 (en) | Journaled data backup during server quiescence or unavailability | |
US6449615B1 (en) | Method and system for maintaining the integrity of links in a computer network | |
CN110647497A (zh) | 一种基于hdfs的高性能文件存储与管理系统 | |
US10983867B1 (en) | Fingerprint change during data operations | |
US9002800B1 (en) | Archive and backup virtualization | |
US10705750B2 (en) | Data storage system and method for performing same | |
Botelho et al. | Memory efficient sanitization of a deduplicated storage system | |
JP5650982B2 (ja) | ファイルの重複を排除する装置及び方法 | |
CN102339321A (zh) | 具有版本控制的网络文件系统及方法 | |
CN104408111A (zh) | 一种删除重复数据的方法及装置 | |
US8090925B2 (en) | Storing data streams in memory based on upper and lower stream size thresholds | |
CN106874399B (zh) | 一种联网备份系统及备份方法 | |
CN104965835B (zh) | 一种分布式文件系统的文件读写方法及装置 | |
US20230376385A1 (en) | Reducing bandwidth during synthetic restores from a deduplication file system | |
US7949630B1 (en) | Storage of data addresses with hashes in backup systems | |
US7685186B2 (en) | Optimized and robust in-place data transformation | |
CN116069729B (zh) | 一种文档智能打包方法、系统及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |