CN117290328B - 存储系统文件并发同步方法、装置、设备及可读存储介质 - Google Patents
存储系统文件并发同步方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117290328B CN117290328B CN202311567416.7A CN202311567416A CN117290328B CN 117290328 B CN117290328 B CN 117290328B CN 202311567416 A CN202311567416 A CN 202311567416A CN 117290328 B CN117290328 B CN 117290328B
- Authority
- CN
- China
- Prior art keywords
- directory
- synchronization
- snapshot
- difference
- file
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 100
- 238000003860 storage Methods 0.000 title claims abstract description 30
- 230000001360 synchronised effect Effects 0.000 claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 30
- 230000008859 change Effects 0.000 claims description 19
- 230000004048 modification Effects 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 7
- 230000037430 deletion Effects 0.000 description 15
- 238000012217 deletion Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- 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
-
- 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/178—Techniques for file synchronisation in 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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种存储系统文件并发同步方法、装置、设备及可读存储介质,涉及文件系统领域。对主集群进行快照得到目标快照;根据目标快照和基准快照之间的差异,确定差异点信息;基准快照为主集群最近一次成功同步到从集群的时间点的快照;在根据差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将冲突目录重命名为临时目录;在等待剩余的差异点同步完成后,删除临时目录。在同步时,若由于同步顺序的原因产生冲突目录的情况下,通过建立临时目录避免顺序操作的差异点无法直接同步的问题,待所有差异点都处理完成再处理剩余的临时目录,能够支持文件和目录的并发乱序操作,提升同步效率,从而提高复制的效率。
Description
技术领域
本发明涉及文件系统领域,尤其涉及一种存储系统文件并发同步方法、装置、设备及可读存储介质。
背景技术
随着信息的数字化,数据逐渐成为用户的业务核心,用户对承载数据的存储系统的稳定性要求也逐步提高,为了防止各种自然灾难对生产系统造成无法恢复的损坏,最常见的保护方式是将数据复制多份保存在多处,其中一处发生了故障造成了数据丢失,还可以通过其它处的数据进行数据恢复,从而保证数据的安全性。
为了保证数据存储的持续性、可恢复性、高可用性,远程复制技术应运而生。每一次远程复制本质上是将主集群的快照同步到从集群,主从集群之间的差异其实就是两次快照之间的差异点。
由于分布式文件系统业务有着严格的时间顺序,主从集群同步差异点的时候如果使用完全顺序的方式则只能采用单线程,同步效率远低于多线程方式。而多线程同步因为同时运行的特性,无法做到差异点同步的完全顺序性,许多必须顺序操作的差异点将会无法直接同步。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种存储系统文件并发同步方法、装置、设备及可读存储介质。
第一方面,本申请实施例公开了一种存储系统文件并发同步方法,所述方法包括:
对主集群的文件进行快照得到目标快照;
根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照;
在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;
在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。
可选地,所述在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录之前,所述方法还包括:
根据所述差异点信息,确定同步类型;
根据所述同步类型,调用多线程执行主集群与从集群之间的同步操作。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识,所述根据所述差异点信息,确定同步类型,包括:
根据所述文件标识在所述目标快照和所述基准快照的分布情况,确定同步类型。
可选地,所述根据所述文件标识在所述目标快照和所述基准快照的分布情况,确定同步类型,包括:
若所述文件标识在所述基准快照上不存在而在所述目标快照上存在,则确认同步类型为新增操作;
若所述文件标识在所述基准快照上存在而在所述目标快照上不存在,则确认同步类型为删除操作;
若所述文件标识在所述基准快照和所述目标快照上同时存在,则确认同步类型为修改操作。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识,所述在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录,包括:
在执行同步类型为新增操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第一名称与所述父目录标识对应的第二名称一致;
在所述从集群中不存在所述父目录标识,但存在名称与所述第二名称一致的重名目录的情况下,将所述重名目录重命名为临时目录。
可选地,所述将所述重名目录重命名为临时目录之后,所述方法还包括:
根据父目录标识,创建父目录;
并基于所述文件标识在所述父目录下创建文件。
可选地,所述方法还包括;
若所述从集群中存在与所述父目录标识相同的同标识目录,但所述同标识目录对应的第三名称与所述第二名称不同,则在所述同标识目录下进行新增操作。
可选地,所述将所述重名目录重命名为临时目录,包括:
将所述重名目录的原始名称、表征目录为临时目录的字段以及重名目录重命名的时间信息的组合作为重名目录重命名后的临时目录名称。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识,所述在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录,包括:
在执行同步类型为删除操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第四名称与所述父目录标识对应的第五名称一致;
在所述从集群存在所述目标父目录的情况下,判断所述目标父目录下是否存在文件或者存在子目录;
在所述目标父目录下存在文件或者存在子目录的情况下,对所述目标父目录的第四名称重命名,得到待删除临时目录。
可选地,所述在等待剩余的差异点同步完成后,删除临时目录,包括:
在等待所述待删除临时目录下的文件或者子目录删除完毕,或者所述待删除临时目录下的文件或者子目录移动到其他目录下的情况下,删除所述待删除临时目录。
可选地,所述对所述目标父目录的第四名称重命名,得到待删除临时目录之后,所述方法还包括:
根据父目录标识确定待删除临时目录;
将所述待删除临时目录下的文件或者子目录删除,或者将所述待删除临时目录下的文件或者子目录移动到其他目录下。
可选地,所述对所述目标父目录的第四名称重命名,得到待删除临时目录,包括:
将所述目标父目录的第四名称、表征目录为临时目录的字段以及第四名称执行重命名的时间信息的组合作为第四名称重命名后的待删除临时目录名称。
可选地,所述在等待剩余的差异点同步完成后,删除临时目录之后,所述方法还包括:
对从集群的文件及目录打快照,得到从集群快照;
判断所述从集群快照的名称和所述目标快照的名称是否一致;
若一致,则确认同步成功。
可选地,所述方法还包括:
若所述从集群快照的名称和所述目标快照的名称不一致,则记录不一致的差异点,并发送告警信息。
可选地,所述方法还包括:
将记录的所述差异点存储至云端服务器。
可选地,所述根据所述目标快照和基准快照之间的差异,确定差异点信息,包括:
据所述目标快照和基准快照之间的对比,确定文件系统的数据变化情况;
根据所述数据变化情况,将发生变化的差异文件的标识和所述差异文件的父目录的标识保存为差异点信息。
可选地,所述差异文件的标识为所述差异文件的索引节点,所述差异文件的父目录的标识为所述差异文件的父目录的索引节点。
第二方面,本申请实施例公开了一种存储系统文件并发同步装置,所述装置包括:
快照模块,用于对主集群的文件进行快照得到目标快照;
确定模块,用于根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照;
重命名模块,用于在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;
同步模块,用于在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。
第三方面,本申请实施例还公开了一种电子设备,包括处理器和存储器、所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例还公开了一种可读存储介质,所述可读存储介质上存储有程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
本申请实施例中,对主集群的文件进行快照得到目标快照;根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照; 在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。本申请的方法通过两次快照的对比确定差异点信息,在并发同步时,若由于同步顺序的原因产生冲突目录的情况下,可以通过建立临时目录的方式避免顺序操作的差异点无法直接同步的问题,待所有差异点都处理完成时,再处理剩余的临时目录,从而实现并发同步。即通过临时目录解决了并发复制中的操作乱序冲突,最终实现数据同步的一致性。此种方式能够支持文件和目录的并发乱序操作,显著的提升同步效率,从而提高了复制的效率。
附图说明
图1是本发明实施例提供的一种存储系统文件并发同步方法的步骤流程图;
图2是本发明实施例提供的又一种存储系统文件并发同步方法的步骤流程图;
图3是本发明实施例提供的一种文件执行新增操作的示意图;
图4是本发明实施例提供的一种文件执行删除操作的示意图;
图5是本发明实施例提供的一种同步过程的示意图;
图6是本发明实施例提供的一种存储系统文件并发同步装置的框图;
图7是本发明实施例提供的一种电子设备的框图;
图8是本发明实施例提供的又一种电子设备的框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
参考图1,其示出了本申请实施例提供的存储系统文件并发同步方法的步骤流程图,所述方法包括:
步骤101,对主集群的文件进行快照得到目标快照。
在本发明实施例中,快照的定义是:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像,快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。在本申请中,当文件系统中的每一个文件发生更改的时候会记录差异点,远程复制功能根据差异点进行远端同步。
进一步地,主集群可以是需要进行备份的集群,备份的文件存储在从集群,主集群可以按时预设时间间隔进行快照得到目标快照,从集群可以基于目标快照针对主集群的变化部分进行同步,使得主集群和从集群的内容一致。
步骤102,根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照。
在本发明实施例中,差异点信息用于记录两次快照之间的差异点。文件系统中的文件发生更改例如新增、删除、修改等操作的时候会记录发生变化的文件的inode为差异点,这些差异点逻辑上有顺序性,比如新增一个文件夹并在这个文件夹下新增一个文件,创建文件夹的差异点一定在创建文件之前。在本实施例中,通过对主目录中的文件进行同步快照以得到目标快照,目标快照即为修改后的、需要同步到其他集群的文件快照。
在开始同步时,多线程并发读取差异点,根据差异点选出需要同步的文件同步到远端。差异点是基准快照和目标快照之间的差异,基准快照是上一次同步成功的时间点的数据备份。从端的最新状态和主端的基准快照是一致的。同步的目的是根据快照之间的差异点计算出同步类型,然后执行同步操作。
步骤103,在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录。
在本发明实施例中,在根据差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录。具体地,文件系统中的文件发生新增、删除、修改等操作的时候会记录发生变化的文件的inode为差异点,文件的inode可以是文件的标识,这些差异点逻辑上有顺序性。比如创建目录或文件的时候父目录必须存在;文件或目录移动的时候目的父目录也必须存在;删除目录时必须要求目录下不能有子目录和文件。然而因为并发同步的原因,以上操作无法保证顺序,有可能存在新增和移动时目标目录不存在和删除目录时目录非空的情况,这种情况下可能存在冲突目录。
以同步操作为新增操作为例,在同步时,若新增文件的父目录inode当前不存在,但是存在同名的目录。说明此同名目录在目标快照中不存在,则在两次快照中有重命名或者删除操作。因为远程复制中的同步操作是根据差异点的inode进行操作,所以目录或文件名称的临时修改不会影响最终的结果。将此同名目录重命名为一个临时目录,那么同步操作时就可以基于父目录的标识和新增文件的标识继续执行同步操作,即在从集群新建父目录并在父目录下新增文件。临时目录会在后续被重命名或删除。即通过临时目录操作,解决了重名的冲突目录导致同步操作无法继续进行的问题。
步骤104,在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。
在本发明实施例中,在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。以同步操作为例,重名的目录被重命名后,由于目标快照不不存在临时目录,因此,临时目录将在后续的同步操作中继续被重命名或删除,达到主集群和从集群一致。
需要说明的是,重命名仅是改变了重名目录的名称,并未改变重名目录的标识(inode),因此,在同步其他的差异点的过程中,可以基于重名目录的标识找到临时目录,并对临时目录执行重命名或删除的操作,实现主集群和从集群之间数据一致。本申请的并发同步方式能够支持文件和目录的并发乱序操作,显著的提升同步效率,从而提高了复制的效率。
进一步地,本申请的存储系统文件并发同步方法可以应用在分布式存储系统,也可以应用在集中式存储系统,可以是主集群与从集群之间的同步操作,也可以是主集群与主集群之间的同步操作,还可以是主集群内部设备之间的同步操作,应用的范围包括但不限于远程复制、数据恢复、数据拷贝等,本申请实施例在此不做限定。
综上,本申请实施例中,对主集群的文件进行快照得到目标快照;根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照; 在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。本申请的方法通过两次快照的对比确定差异点信息,在并发同步时,若由于同步顺序的原因产生冲突目录的情况下,可以通过建立临时目录的方式避免顺序操作的差异点无法直接同步的问题,待所有差异点都处理完成时,再处理剩余的临时目录,从而实现并发同步。即通过临时目录解决了并发复制中的操作乱序冲突,最终实现数据同步的一致性。此种方式能够支持文件和目录的并发乱序操作,显著的提升同步效率,从而提高了复制的效率。
参考图2,其示出了本申请实施例提供的又一种存储系统文件并发同步方法的步骤流程图,所述方法包括:
步骤201,对主集群的文件进行快照得到目标快照;
此步骤可参考步骤101,此处不再赘述。
步骤202,根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照。
此步骤可参考步骤102,此处不再赘述。
可选地,步骤202包括:
子步骤2021,据所述目标快照和基准快照之间的对比,确定文件系统的数据变化情况;
子步骤2022,根据所述数据变化情况,将发生变化的差异文件的标识和所述差异文件的父目录的标识保存为差异点信息。
在本发明实施例中,针对子步骤2021和子步骤2022,每一次远程复制本质上是将主集群的快照同步到从集群,主从集群之间的差异其实就是两次 快照之间的差异点,差异点可以记录在差异日志中,因此,通过目标快照和基准快照的比较,可以确定文件系统的数据变化情况,数据变化情况用于记录是否发生了文件或目录修改、删除、新增等操作。基于数据变化情况,将将发生变化的差异文件的标识和差异文件的父目录的标识保存为差异点信息,例如,差异点是新增了文件A,那么文件A即可以作为差异文件,差异点信息可以保存文件A的标识和文件A的父目录的标识。以在后续同步时基于差异点信息判断从集群是否存在文件A的父目录以及文件A的父目录下是否有文件A,进而完成数据同步操作。
步骤203,在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录。
此步骤可参考步骤103,此处不再赘述。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识,步骤203包括:
子步骤2031,在执行同步类型为新增操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第一名称与所述父目录标识对应的第二名称一致;
子步骤2032,在所述从集群中不存在所述父目录标识,但存在名称与所述第二名称一致的重名目录的情况下,将所述重名目录重命名为临时目录。
在本发明实施例中,针对子步骤2031和子步骤2032,在执行同步类型为新增操作的过程中,根据父目录标识查询从集群中是否存在与父目录标识对应的目标父目录;目标父目录的标识与父目录标识一致,目标父目录的第一名称与父目录标识对应的第二名称一致;只有标识和名称均一致的目录才是与目标快照中的父目录相同的目录。
进一步地,在从集群中不存在父目录标识,但存在名称与所述第二名称一致的重名目录的情况下,可以将重名目录重命名为临时目录,此时,可以基于父目录标识在从集群中新建父目录,新建的父目录的名称与目标快照中的一致。即本申请通过将重名目录重命名的方式解决了同步时,标识不对应但目录名称冲突的情况,保证同步操作可以继续执行。
可选地,子步骤2032包括:
将所述重名目录的原始名称、表征目录为临时目录的字段以及重名目录重命名的时间信息的组合作为重名目录重命名后的临时目录名称。
在本发明实施例中,可以将此同名目录重命名为一个临时目录,临时目录的名称为“原目录名称+_temp_+时间戳”。时间戳的格式为“年月日时分秒”的数字格式,如2023年8月16号1点1分1秒表示为“202308160101”其中,原目录名称为重名目录的原始名称,temp为表征目录为临时目录的字段,时间戳为重名目录重命名的时间信息,通过这种组合命名的方式将临时目录区别于目标快照中的其他目录,以便在后续操作中进行修改或删除。
可选地,子步骤2032之后还包括:
子步骤A1,根据父目录标识,创建父目录;
子步骤A2,并基于所述文件标识在所述父目录下创建文件。
在本发明实施例中,针对子步骤A1和子步骤A2,将重名目录重命名为临时目录后,此时,从集群中不存在目标快照中的父目录同名的目录,可以继续执行文件新增同步操作,即基于父目录标识在从集群中新建父目录,新建的父目录的名称与目标快照中的一致,并在父目录下新增文件。即本申请通过将重名目录重命名的方式解决了同步时,标识不对应但目录名称冲突的情况,保证同步操作可以继续执行。
可选地,步骤203还包括:
子步骤2033,若所述从集群中存在与所述父目录标识相同的同标识目录,但所述同标识目录对应的第三名称与所述第二名称不同,则在所述同标识目录下进行新增操作。
在本发明实施例中,如果父目录的inode当前存在但是名称和目标快照中的父目录标识对应的父目录的名称不符合,说明父目录在两次快照中有重命名操作。此时可以直接在当前目录下进行文件操作,父目录会在之后被重命名为新的名称,新的名称与目标快照中的父目录标识对应的父目录的名称一致。
具体地,如果父目录的inode当前存在但是名称和目标快照中的父目录标识对应的父目录的名称不符合,说明父目录在从集群中存在,但是父目录的名称修改操作在新增文件操作之后才进行,导致当前的名称不一致情况,因此,在同步时,直接在相同父目录标识的目录下执行新增文件操作即可。
参考图3,图3示出了是本发明实施例提供的一种文件执行新增操作的示意图,如图3所示:执行文件操作/目录1/目录1.1/文件1 新增或移动,父目录为目录1.1。差异日志会记录文件1的标识和父目录的inode。当前已存在父目录,判断已存在的父目录是否为目的目录,如图3,目标快照的父目录的名称为目录1.1,标识为12344,从集群中存在目录1.1,但标识为125,即存在同名称的目录但标识不同,此时,可以将从集群中目录1.1的名称修改为目录1.1-临时,然后在从集群新建目录1.1,并在目录1.1直线执行文件1的新增或移动操作。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识,步骤203包括:
子步骤2034,在执行同步类型为删除操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第四名称与所述父目录标识对应的第五名称一致;
子步骤2035,在所述从集群存在所述目标父目录的情况下,判断所述目标父目录下是否存在文件或者存在子目录;
子步骤2036,在所述目标父目录下存在文件或者存在子目录的情况下,对所述目标父目录的第四名称重命名,得到待删除临时目录。
在本发明实施例中,针对子步骤2034至子步骤2036,删除目录时必须要求目录下不能有子目录和文件。因此,在执行同步类型为删除操作的过程中,需要根据父目录标识查询从集群中是否存在与父目录标识对应的目标父目录,在从集群存在目标父目录的情况下,判断目标父目录下是否存在文件或者存在子目录;若不存在可直接进行删除,若存在则无法直接删除目录,此时可以对目标父目录的第四名称重命名,得到待删除临时目录。将目标父目录的第四名称重命名后,不会影响后续对目标父目录的文件或目录删除的操作,后续需要对文件或目录删除的时候,可通过目标父目录标识查到对应的临时目录,完成对文件或目录删除。
进一步地,在得到待删除临时目录后,后续的同步操作中,若待删除临时目录下的文件已经删除完毕,那么此时可以继续执行对待删除临时目录的删除操作,对待删除临时目录的删除操作即为对目标父目录的删除操作。
本申请将目标父目录的第四名称重命名,得到待删除临时目录,使得目标父目录的名称被修改,及时释放了名称的使用权,该名称在后续同步操作中可继续被创建。通过临时目录的机制解决了并发复制中的操作乱序冲突,最终实现数据同步的一致性。此种方式能够支持文件和目录的并发乱序操作,显著的提升同步效率,从而提高了复制的效率。
可选地,子步骤2036包括:
子步骤20361,将所述目标父目录的第四名称、表征目录为临时目录的字段以及第四名称执行重命名的时间信息的组合作为第四名称重命名后的待删除临时目录名称。
在本发明实施例中,可以将此目标父目录的第四名称重命名为一个临时目录,临时目录的名称为“原目录名称+_temp_+时间戳”。时间戳的格式为“年月日时分秒”的数字格式,如2023年8月16号1点1分1秒表示为“202308160101”其中,原目录名称为目标父目录的原始名称,temp为表征目录为临时目录的字段,时间戳为目标父目录重命名的时间信息,通过这种组合命名的方式将临时目录区别于目标快照中的其他目录,以便在后续操作中进行修改或删除。
可选地,子步骤2036之后,还包括:
子步骤2037,根据父目录标识确定待删除临时目录;
子步骤2038,将所述待删除临时目录下的文件或者子目录删除,或者将所述待删除临时目录下的文件或者子目录移动到其他目录下。
在本发明实施例中,针对子步骤2037和子步骤2038,在确定待删除临时目录之后,若存在差异点信息为删除父目录标识下的目录或文件,则可以根据父目录标识确定待删除临时目录,将待删除临时目录下的文件或者子目录删除,或者将所述待删除临时目录下的文件或者子目录移动到其他目录下,即完成了该差异点信息的同步。
参考图4,图4示出了图4是本发明实施例提供的一种文件执行删除操作的示意图;参考图4,图4示出了是本发明实施例提供的一种文件执行删除操作的示意图,如图4所示:执行对目录1.1的删除操作,
1.差异点记录目录1.1删除,此时目录1.1下还有文件1和文件2,非空目录不允许删除。
2.将目录1.1重命名为临时目录:目录1.1_temp_timestamp,临时目录的名称为“原目录名称+_temp_+时间戳”,时间戳的格式为“年月日时分秒”的数字格式,如2023年8月16号1点1分1秒表示为“202308160101”。
3.文件1和文件2跟随移动到了目录1.1_temp_timestamp下,等到删除文件1时只需要移除掉目录1.1_temp_timestamp下的文件1即可。
4.文件2需要同步的操作为目录1.1/文件1 移动到目录1.2下,此时将目录1.1_temp_timestamp下的文件2移动 到 目录1.2下即可。
5.因为目录1.1最后的结果为删除,所以所有的差异点同步完成后,目录1.1重命名的目录1.1_temp_timestamp一定为空目录。此时删除目录1.1_temp_timestamp完成同步。
步骤204,在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。
此步骤可参考步骤104,此处不再赘述。
可选地,步骤204包括:
子步骤2041,在等待所述待删除临时目录下的文件或者子目录删除完毕,或者所述待删除临时目录下的文件或者子目录移动到其他目录下的情况下,删除所述待删除临时目录。
在本发明实施例中,因为待删除临时目录最后的结果为删除,所以所有的差异点同步完成后,目标父目录重命名的待删除临时目录一定为空目录。此时删除待删除临时目录完成同步。
步骤205,对从集群的文件及目录打快照,得到从集群快照;
步骤206,判断所述从集群快照的名称和所述目标快照的名称是否一致;
步骤207,若一致,则确认同步成功。
在本发明实施例中,针对步骤205至步骤207,在差异点信息同步完成后,还对从集群的文件及目录打快照,得到从集群快照,判断从集群快照的名称和目标快照的名称是否一致;若一致,则确认同步成功,此时主从集群达到数据一致。
可选地,步骤203之前,所述方法还包括:
步骤208,根据所述差异点信息,确定同步类型;
步骤209,根据所述同步类型,调用多线程执行主集群与从集群之间的同步操作。
在本发明实施例中,通过判断差异点的分布情况,确定同步类型,当差异点在基准快照上不存在,目标快照上存在的时候,说明为新增操作。当差异点在基准快照上存在,目标快照上不存在的时候,说明为删除操作。当差异点在基准快照和目标快照上同时存在的时候说明为修改操作,从而实现了对操作的判定。基于不同的同步类型,调用多线程并发执行主集群与从集群之间的同步操作,提高同步完成效率。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识,步骤209具体可以包括:
子步骤2091,根据所述文件标识在所述目标快照和所述基准快照的分布情况,确定同步类型。
可选地,子步骤2091包括:
子步骤20911,若所述文件标识在所述基准快照上不存在而在所述目标快照上存在,则确认同步类型为新增操作;
子步骤20912,若所述文件标识在所述基准快照上存在而在所述目标快照上不存在,则确认同步类型为删除操作;
子步骤20913,若所述文件标识在所述基准快照和所述目标快照上同时存在,则确认同步类型为修改操作。
在本发明实施例中,子步骤2091以及子步骤20911至20913可参考步骤209的描述,此处不再赘述。
可选地,所述方法还包括:
步骤210,若所述从集群快照的名称和所述目标快照的名称不一致,则记录不一致的差异点,并发送告警信息。
在本发明实施例中,若从集群快照的名称和目标快照的名称不一致,则记录不一致的差异点,并发送告警信息,提示同步失败。
步骤211,将记录的所述差异点存储至云端服务器。
可选地,所述差异文件的标识为所述差异文件的索引节点,所述差异文件的父目录的标识为所述差异文件的父目录的索引节点。
在本发明实施例中,差异文件的标识为差异文件的索引节点,差异文件的父目录的标识为差异文件的父目录的索引节点。索引节点即iNode节点,iNode可用于保存数据的属性信息并对每个文件进行信息索引,通过iNode可快速找到文件或目录实体。
参考图5,图5是本发明实施例提供的一种同步过程的示意图;在主集群中,先对主目录创建快照,主目录的快照保存在主集群,主集群中还保存有上次主从集群之间同步完成的快照。主目录快照和上次同步完成的快照之前的差异点保存在差异日志中。开始同步后,读取差异日志中的差异点,读取差异点在两次快照上的状态比对出变化类型(新增、修改、删除),基于变化类型,调用对应的多线程并发读取差异点,根据差异点选出需要同步的文件同步到从集群。差异点是基准快照和目标快照之间的差异,基准快照是上一次同步成功的时间点的数据备份。从端的最新状态和主端的基准快照是一致的。同步的目的是根据快照之间的差异点,得到同步类型,然后进行文件或目录同步。同步完成后,对从集群的从目录进行快照,快照名称和主集群的目标快照名称一致,此时主从集群达到数据一致。
本申请实施例中,对主集群的文件进行快照得到目标快照;根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照; 在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。本申请的方法通过两次快照的对比确定差异点信息,在并发同步时,若由于同步顺序的原因产生冲突目录的情况下,可以通过建立临时目录的方式避免顺序操作的差异点无法直接同步的问题,待所有差异点都处理完成时,再处理剩余的临时目录,从而实现并发同步。即通过临时目录解决了并发复制中的操作乱序冲突,最终实现数据同步的一致性。此种方式能够支持文件和目录的并发乱序操作,显著的提升同步效率,从而提高了复制的效率。
参考图6,其示出了本申请实施例提供的一种存储系统文件并发同步装置30,所述装置包括:
快照模块301,用于对主集群的文件进行快照得到目标快照;
确定模块302,用于根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照;
重命名模块303,用于在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;
同步模块304,用于在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。
可选地,所述装置还包括:
类型确定模块,用于根据所述差异点信息,确定同步类型;
调用模块,用于根据所述同步类型,调用多线程执行主集群与从集群之间的同步操作。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识,所述类型确定模块,包括:
类型确定子模块,用于根据所述文件标识在所述目标快照和所述基准快照的分布情况,确定同步类型。
可选地,所述类型确定子模块,包括:
第一单元,用于若所述文件标识在所述基准快照上不存在而在所述目标快照上存在,则确认同步类型为新增操作;
第二单元,用于若所述文件标识在所述基准快照上存在而在所述目标快照上不存在,则确认同步类型为删除操作;
第三单元,用于若所述文件标识在所述基准快照和所述目标快照上同时存在,则确认同步类型为修改操作。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识,所述重命名模块,包括:
第一子模块,用于在执行同步类型为新增操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第一名称与所述父目录标识对应的第二名称一致;
第二子模块,用于在所述从集群中不存在所述父目录标识,但存在名称与所述第二名称一致的重名目录的情况下,将所述重名目录重命名为临时目录。
可选地,所述装置还包括:
创建模块,用于根据父目录标识,创建父目录;
新增模块,用于并基于所述文件标识在所述父目录下创建文件。
可选地,所述装置还包括;
第三子模块,用于若所述从集群中存在与所述父目录标识相同的同标识目录,但所述同标识目录对应的第三名称与所述第二名称不同,则在所述同标识目录下进行新增操作。
可选地,所述第二子模块,包括:
第一命名单元,用于将所述重名目录的原始名称、表征目录为临时目录的字段以及重名目录重命名的时间信息的组合作为重名目录重命名后的临时目录名称。
可选地,所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识,所述重命名模块,包括:
第四单元,用于在执行同步类型为删除操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第四名称与所述父目录标识对应的第五名称一致;
第五单元,用于在所述从集群存在所述目标父目录的情况下,判断所述目标父目录下是否存在文件或者存在子目录;
第六单元,用于在所述目标父目录下存在文件或者存在子目录的情况下,对所述目标父目录的第四名称重命名,得到待删除临时目录。
可选地,所述同步模块,包括:
删除子模块,用于在等待所述待删除临时目录下的文件或者子目录删除完毕,或者所述待删除临时目录下的文件或者子目录移动到其他目录下的情况下,删除所述待删除临时目录。
可选地,所述装置还包括:
待删除确定模块,用于根据父目录标识确定待删除临时目录;
子文件删除模块,用于将所述待删除临时目录下的文件或者子目录删除,或者将所述待删除临时目录下的文件或者子目录移动到其他目录下。
可选地,所述第六单元,包括:
第二命名子模块,用于将所述目标父目录的第四名称、表征目录为临时目录的字段以及第四名称执行重命名的时间信息的组合作为第四名称重命名后的待删除临时目录名称。
可选地,所述装置还包括:
快照模块,用于对从集群的文件及目录打快照,得到从集群快照;
判断模块,用于判断所述从集群快照的名称和所述目标快照的名称是否一致;
同步确定模块,用于若一致,则确认同步成功。
可选地,所述装置还包括:
告警模块,用于若所述从集群快照的名称和所述目标快照的名称不一致,则记录不一致的差异点,并发送告警信息。
可选地,所述装置还包括:
上传模块,用于将记录的所述差异点存储至云端服务器。
可选地,所述确定模块,包括:
变化确定子模块,用于据所述目标快照和基准快照之间的对比,确定文件系统的数据变化情况;
日志生成子模块,用于根据所述数据变化情况,将发生变化的差异文件的标识和所述差异文件的父目录的标识保存为差异点信息。
可选地,所述差异文件的标识为所述差异文件的索引节点,所述差异文件的父目录的标识为所述差异文件的父目录的索引节点。
本申请实施例中,对主集群的文件进行快照得到目标快照;根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照; 在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。本申请的方法通过两次快照的对比确定差异点信息,在并发同步时,若由于同步顺序的原因产生冲突目录的情况下,可以通过建立临时目录的方式避免顺序操作的差异点无法直接同步的问题,待所有差异点都处理完成时,再处理剩余的临时目录,从而实现并发同步。即通过临时目录解决了并发复制中的操作乱序冲突,最终实现数据同步的一致性。此种方式能够支持文件和目录的并发乱序操作,显著的提升同步效率,从而提高了复制的效率。
图7据一示例性实施例示出的一种电子设备600的框图。例如,电子设备600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图7,电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/ O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604用于存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,多媒体等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的分界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或多媒体模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610用于输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/ O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616用于便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于实现本申请实施例提供的一种存储系统文件并发同步方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述方法。例如,所述非临时性存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图8据一示例性实施例示出的一种电子设备700的框图。例如,电子设备700可以被提供为一服务器。参照图8,电子设备700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行本申请实施例提供的一种存储系统文件并发同步方法。
电子设备700还可以包括一个电源组件726被配置为执行电子设备700的电源管理,一个有线或无线网络接口750被配置为将电子设备700连接到网络,和一个输入输出(I/O)接口758。电子设备700可以操作基于存储在存储器732的操作系统,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (20)
1.一种存储系统文件并发同步方法,其特征在于,所述方法包括:
对主集群的文件进行快照得到目标快照;
根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照;所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识;
在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;其中,所述重命名仅改变所述冲突目录的名称,不改变所述冲突目录的标识;
在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。
2.根据权利要求1所述的方法,其特征在于,所述在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录之前,所述方法还包括:
根据所述差异点信息,确定同步类型;
根据所述同步类型,调用多线程执行主集群与从集群之间的同步操作。
3.根据权利要求2所述的方法,其特征在于,所述根据所述差异点信息,确定同步类型,包括:
根据所述文件标识在所述目标快照和所述基准快照的分布情况,确定同步类型。
4.根据权利要求3所述的方法,其特征在于,所述根据所述文件标识在所述目标快照和所述基准快照的分布情况,确定同步类型,包括:
若所述文件标识在所述基准快照上不存在而在所述目标快照上存在,则确认同步类型为新增操作;
若所述文件标识在所述基准快照上存在而在所述目标快照上不存在,则确认同步类型为删除操作;
若所述文件标识在所述基准快照和所述目标快照上同时存在,则确认同步类型为修改操作。
5.根据权利要求1所述的方法,其特征在于,所述在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录,包括:
在执行同步类型为新增操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第一名称与所述父目录标识对应的第二名称一致;
在所述从集群中不存在所述父目录标识,但存在名称与所述第二名称一致的重名目录的情况下,将所述重名目录重命名为临时目录。
6.根据权利要求5所述的方法,其特征在于,所述将所述重名目录重命名为临时目录之后,所述方法还包括:
根据父目录标识,创建父目录;
并基于所述文件标识在所述父目录下创建文件。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括;
若所述从集群中存在与所述父目录标识相同的同标识目录,但所述同标识目录对应的第三名称与所述第二名称不同,则在所述同标识目录下进行新增操作。
8.根据权利要求5所述的方法,其特征在于,所述将所述重名目录重命名为临时目录,包括:
将所述重名目录的原始名称、表征目录为临时目录的字段以及重名目录重命名的时间信息的组合作为重名目录重命名后的临时目录名称。
9.根据权利要求1所述的方法,其特征在于,所述在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录,包括:
在执行同步类型为删除操作的过程中,根据所述父目录标识查询所述从集群中是否存在与所述父目录标识对应的目标父目录;所述目标父目录的标识与所述父目录标识一致,所述目标父目录的第四名称与所述父目录标识对应的第五名称一致;
在所述从集群存在所述目标父目录的情况下,判断所述目标父目录下是否存在文件或者存在子目录;
在所述目标父目录下存在文件或者存在子目录的情况下,对所述目标父目录的第四名称重命名,得到待删除临时目录。
10.根据权利要求9所述的方法,其特征在于,所述在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录,包括:
在等待所述待删除临时目录下的文件或者子目录删除完毕,或者所述待删除临时目录下的文件或者子目录移动到其他目录下的情况下,删除所述待删除临时目录。
11.根据权利要求9所述的方法,其特征在于,所述对所述目标父目录的第四名称重命名,得到待删除临时目录之后,所述方法还包括:
根据父目录标识确定待删除临时目录;
将所述待删除临时目录下的文件或者子目录删除,或者将所述待删除临时目录下的文件或者子目录移动到其他目录下。
12.根据权利要求9所述的方法,其特征在于,所述对所述目标父目录的第四名称重命名,得到待删除临时目录,包括:
将所述目标父目录的第四名称、表征目录为临时目录的字段以及第四名称执行重命名的时间信息的组合作为第四名称重命名后的待删除临时目录名称。
13.根据权利要求1所述的方法,其特征在于,所述在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录之后,所述方法还包括:
对从集群的文件及目录打快照,得到从集群快照;
判断所述从集群快照的名称和所述目标快照的名称是否一致;
若一致,则确认同步成功。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
若所述从集群快照的名称和所述目标快照的名称不一致,则记录不一致的差异点,并发送告警信息。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
将记录的所述差异点存储至云端服务器。
16.根据权利要求1所述的方法,其特征在于,所述根据所述目标快照和基准快照之间的差异,确定差异点信息,包括:
根据所述目标快照和基准快照之间的对比,确定文件系统的数据变化情况;
根据所述数据变化情况,将发生变化的差异文件的标识和所述差异文件的父目录的标识保存为差异点信息。
17.根据权利要求16所述的方法,其特征在于,所述差异文件的标识为所述差异文件的索引节点,所述差异文件的父目录的标识为所述差异文件的父目录的索引节点。
18.一种存储系统文件并发同步装置,其特征在于,所述装置包括:
快照模块,用于对主集群的文件进行快照得到目标快照;
确定模块,用于根据所述目标快照和基准快照之间的差异,确定差异点信息;所述基准快照为所述主集群最近一次成功同步到从集群的时间点的快照;所述差异点信息包括:发生变化的差异文件的文件标识以及差异文件对应的父目录标识;
重命名模块,用于在根据所述差异点信息进行并发同步的过程中,若从集群中存在与同步操作冲突的冲突目录,则将所述冲突目录重命名为临时目录;其中,所述重命名仅改变所述冲突目录的名称,不改变所述冲突目录的标识;
同步模块,用于在等待所述差异点信息所指示的剩余的差异点同步完成后,删除临时目录。
19.一种电子设备,其特征在于,包括处理器和存储器、所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1至17中任一项所述的方法的步骤。
20.一种可读存储介质,其特征在于,所述可读存储介质上存储有程序或指令,所述程序或指令被处理器执行时实现如权利要求1至17中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311567416.7A CN117290328B (zh) | 2023-11-22 | 2023-11-22 | 存储系统文件并发同步方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311567416.7A CN117290328B (zh) | 2023-11-22 | 2023-11-22 | 存储系统文件并发同步方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117290328A CN117290328A (zh) | 2023-12-26 |
CN117290328B true CN117290328B (zh) | 2024-02-27 |
Family
ID=89241152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311567416.7A Active CN117290328B (zh) | 2023-11-22 | 2023-11-22 | 存储系统文件并发同步方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117290328B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404338A (zh) * | 2011-12-13 | 2012-04-04 | 华为技术有限公司 | 一种文件同步方法和装置 |
CN111797121A (zh) * | 2020-07-02 | 2020-10-20 | 中国工商银行股份有限公司 | 读写分离架构业务系统的强一致性查询方法、装置及系统 |
CN112269759A (zh) * | 2020-10-23 | 2021-01-26 | 北京浪潮数据技术有限公司 | 一种共享文件存储的迁移方法及相关装置 |
CN113821490A (zh) * | 2021-08-24 | 2021-12-21 | 济南浪潮数据技术有限公司 | 一种数据同步方法及装置 |
CN114020686A (zh) * | 2021-10-14 | 2022-02-08 | 济南浪潮数据技术有限公司 | 基于差异日志的文件快照同步方法、系统、设备和介质 |
CN114356844A (zh) * | 2021-11-19 | 2022-04-15 | 苏州浪潮智能科技有限公司 | 一种基于目录树轮询对比文件快照的方法和装置 |
CN114968966A (zh) * | 2022-05-31 | 2022-08-30 | 新华三技术有限公司 | 分布式元数据远程异步复制方法、装置和设备 |
CN115129676A (zh) * | 2022-07-22 | 2022-09-30 | 济南浪潮数据技术有限公司 | 数据同步方法、装置、设备及介质 |
CN116383161A (zh) * | 2023-01-06 | 2023-07-04 | 济南浪潮数据技术有限公司 | 一种文件同步方法、装置以及介质 |
CN117076204A (zh) * | 2023-08-28 | 2023-11-17 | 济南浪潮数据技术有限公司 | 一种远程复制任务恢复方法、装置、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10949309B2 (en) * | 2015-12-28 | 2021-03-16 | Netapp Inc. | Snapshot creation with synchronous replication |
-
2023
- 2023-11-22 CN CN202311567416.7A patent/CN117290328B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404338A (zh) * | 2011-12-13 | 2012-04-04 | 华为技术有限公司 | 一种文件同步方法和装置 |
CN111797121A (zh) * | 2020-07-02 | 2020-10-20 | 中国工商银行股份有限公司 | 读写分离架构业务系统的强一致性查询方法、装置及系统 |
CN112269759A (zh) * | 2020-10-23 | 2021-01-26 | 北京浪潮数据技术有限公司 | 一种共享文件存储的迁移方法及相关装置 |
CN113821490A (zh) * | 2021-08-24 | 2021-12-21 | 济南浪潮数据技术有限公司 | 一种数据同步方法及装置 |
CN114020686A (zh) * | 2021-10-14 | 2022-02-08 | 济南浪潮数据技术有限公司 | 基于差异日志的文件快照同步方法、系统、设备和介质 |
CN114356844A (zh) * | 2021-11-19 | 2022-04-15 | 苏州浪潮智能科技有限公司 | 一种基于目录树轮询对比文件快照的方法和装置 |
CN114968966A (zh) * | 2022-05-31 | 2022-08-30 | 新华三技术有限公司 | 分布式元数据远程异步复制方法、装置和设备 |
CN115129676A (zh) * | 2022-07-22 | 2022-09-30 | 济南浪潮数据技术有限公司 | 数据同步方法、装置、设备及介质 |
CN116383161A (zh) * | 2023-01-06 | 2023-07-04 | 济南浪潮数据技术有限公司 | 一种文件同步方法、装置以及介质 |
CN117076204A (zh) * | 2023-08-28 | 2023-11-17 | 济南浪潮数据技术有限公司 | 一种远程复制任务恢复方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117290328A (zh) | 2023-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10242045B2 (en) | Filtering content using synchronization data | |
CN113177093B (zh) | 数据同步方法及装置、电子设备和存储介质 | |
KR101452725B1 (ko) | 휴대 단말기 및 그 데이터 동기화 방법 | |
EP3399433A1 (en) | Automatic photo naming processing method and system based on mobile terminal, and mobile terminal | |
CN105095025B (zh) | 恢复ext文件系统中已删除文件的方法及装置 | |
CN111444139A (zh) | 一种文件管理方法、装置、设备及存储介质 | |
CN105204959A (zh) | 恢复ext文件系统中已删除文件的方法及装置 | |
CN110442844B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US11630814B2 (en) | Automated online upgrade of database replication | |
CN116048644B (zh) | 一种系统迁移方法、装置和可读存储介质 | |
CN112765104A (zh) | 文件保存方法、装置、设备及存储介质 | |
CN107766488B (zh) | 一种信息查询方法、终端、计算机可读存储介质 | |
WO2017096850A1 (zh) | 文件系统同步的方法及装置 | |
CN111241134B (zh) | 一种数据处理方法及装置 | |
CN114546992A (zh) | 数据库迁移方法、装置、存储介质和电子设备 | |
CN115098537B (zh) | 事务执行方法、装置、计算设备及存储介质 | |
US9894510B1 (en) | Event-based data backup and recovery for mobile devices | |
CN105915636B (zh) | 一种联系人信息的同步方法和装置 | |
CN115061601B (zh) | 电子文档的处理方法、装置、终端和存储介质 | |
CN117290328B (zh) | 存储系统文件并发同步方法、装置、设备及可读存储介质 | |
CN114201484A (zh) | 信息处理方法、装置、电子设备及存储介质 | |
CN117271005A (zh) | 基于容器的应用运行方法、装置、电子设备及存储介质 | |
CN111290882B (zh) | 数据文件备份方法、数据文件备份装置及电子设备 | |
CN116955356A (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN115113989B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |