CN109792453A - 管理文件系统复制的系统、设备和方法 - Google Patents

管理文件系统复制的系统、设备和方法 Download PDF

Info

Publication number
CN109792453A
CN109792453A CN201780038609.XA CN201780038609A CN109792453A CN 109792453 A CN109792453 A CN 109792453A CN 201780038609 A CN201780038609 A CN 201780038609A CN 109792453 A CN109792453 A CN 109792453A
Authority
CN
China
Prior art keywords
file system
file
movement
data
event
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.)
Granted
Application number
CN201780038609.XA
Other languages
English (en)
Other versions
CN109792453B (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN109792453A publication Critical patent/CN109792453A/zh
Application granted granted Critical
Publication of CN109792453B publication Critical patent/CN109792453B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/178Techniques for file synchronisation in file systems
    • 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/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies

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)
  • Retry When Errors Occur (AREA)

Abstract

一种管理文件系统复制的方法可以包括:收集关联于文件系统事件的事件数据,每个所述文件系统事件表示修改第一文件系统位置处的至少一个文件;对于每个所述文件系统事件,生成至少一个文件系统动作,以将所述第一文件系统位置处的所述至少一个文件的所述修改应用到第二文件系统位置处的至少一个对应文件;将所述至少一个生成的文件系统动作存储在动作缓冲器中;识别所述动作缓冲器中的文件系统动作之间的依赖关系;以及调度所述动作缓冲器中的所述文件系统动作以基于所述依赖关系执行。

Description

管理文件系统复制的系统、设备和方法
相关申请案交叉申请
本申请要求于2016年11月22日递交的发明名称为“管理文件系统复制的系统、设备和方法(SYSTEMS,DEVICES AND METHODS FOR MANAGING FILE SYSTEM REPLICATION)”的第15/358,936号美国专利申请案的在先申请优先权,该在先申请的全部内容以引用的方式并入本文本中。
技术领域
本发明涉及文件系统,更具体地,涉及用于分布式文件系统的设备、方法和计算机可读介质。
背景技术
大数据或地理分布式应用可以利用跨多个数据中心或位置的分布式文件系统。这可能需要跨越不同机器来复制文件。
随着规模扩展,地理分布式数据中心的网络延迟和文件大小可能很大,管理复制滞后时间和资源会成为一个难题。
发明内容
根据本发明一方面,提供了一种管理文件系统复制的方法。所述方法包括:收集关联于文件系统事件的事件数据,每个所述文件系统事件表示修改第一文件系统位置处的至少一个文件;对于每个所述文件系统事件,生成至少一个文件系统动作,以将所述第一文件系统位置处的所述至少一个文件的所述修改应用到第二文件系统位置处的至少一个对应文件;将所述至少一个生成的文件系统动作存储在动作缓冲器中;识别所述动作缓冲器中的文件系统动作之间的依赖关系;以及调度所述动作缓冲器中的所述文件系统动作以基于所述依赖关系执行。
根据本发明另一方面,提供了一种管理文件系统复制的系统。所述系统包括:至少一种处理器。所述至少一个处理器用于:接收关联于文件系统事件的事件数据,每个所述文件系统事件表示修改第一文件系统位置处的至少一个文件;对于每个所述文件系统事件,生成至少一个文件系统动作,以将所述第一文件系统位置处的所述至少一个文件的所述修改应用到第二文件系统位置处的至少一个对应文件;将所述至少一个生成的文件系统动作存储在动作缓冲器中;识别所述动作缓冲器中的文件系统动作之间的依赖关系;以及调度所述动作缓冲器中的所述文件系统动作以基于所述依赖关系执行。
根据本发明另一方面,提供了一种非瞬时性可读介质,其上存储有计算机可读指令。所述指令在由至少一个处理器执行时配置所述至少一个处理器用于:接收关联于文件系统事件的事件数据,每个所述文件系统事件表示修改第一文件系统位置处的至少一个文件;对于每个所述文件系统事件,生成至少一个文件系统动作,以将所述第一文件系统位置处的所述至少一个文件的所述修改应用到第二文件系统位置处的至少一个对应文件;将所述至少一个生成的文件系统动作存储在动作缓冲器中;识别所述动作缓冲器中的文件系统动作之间的依赖关系;以及调度所述动作缓冲器中的所述文件系统动作以基于所述依赖关系执行。
在阅读本发明之后,本领域技术人员将会明白现有改进的许多其它特征及其组合。
附图说明
图1为一个示例复制过程的时间轴。
图2为示出一种示例计算系统的各方面的图。
图3为示出文件系统事件和示例对应动作的各示例的表格。
图4A示出了基于源位置和目的位置的快照的示例差异列表。
图4B为示出对应于图4A中所述差异列表的示例动作的表格。
图5A为示出文件系统事件的示例流程的图,
图5B为示出示例对应文件系统动作的流程的图。
图6为示出一种管理文件系统复制的示例方法的各方面的流程图。
图7为示出一种示例控制流的各方面的流程图。
图8A和图8B示出了示例动作发生器进程的伪代码。
图9A和图9B示出了示例准备滤波器进程的伪代码。
图10A和图10B示出了示例重组和批量优化进程的伪代码。
图11A和图11B示出了示例执行调度器报告反馈进程的伪代码。
图12和图13为示例早期开始复制过程的时间轴。
图14为示出一种示例系统或机器的各方面的图。
出于说明目的,这些附图描绘了示例实施例的各方面。可以对这些示例实施例进行变形、选择配置、选择组件以及作出修改。
具体实施方式
随着越来越多的应用和数据存储迁移到网络系统和基于云的系统,分布式数据系统的管理会涉及许多不同的物理、逻辑和/或地理机器位置。在一些实例中,这涉及到跨不同机器、集群或数据中心复制文件。
图1示出了一个示例复制过程的时间轴。在时间tcreate时,在源位置处创建110文件105。在创建好文件105之后,在时间tclose时关闭该文件。在一些系统中,根据需要或基于时间表调用分布式复制命令。例如,在创建和关闭文件105之后,可以手动指示文件系统将文件105分发到第二位置;或者基于固定的时间表,该系统可检查已经修改的任何关闭文件并触发分布式复制命令。
在一些实例中,根据文件105的关闭时间和调度的已修改文件检查的时间,在时间trep_start时,文件关闭和复制过程120开始之间存在延迟140。在一些数据系统中,文件会很大,例如规模为数千兆字节或数百万兆字节。在一些实例中,创建这类大文件可导致从tcreate到tclose之间的大延迟130。即使可能基于网络和系统资源的复制滞后140(tclose至trep_start)相对较小,大的创建时间130也会导致开始创建文件和开始复制文件之间的大延迟150。
在一些实例中,复制大文件会消耗大量系统和网络资源。例如,内存容量和网络容量可能被单个或少量大文件复制消耗。这会导致其它复制任务的排队和延迟。
在周期性或按计划批量分发复制命令的系统中,提供有保证的或估计的复制滞后时间可能是一项挑战,因为系统不知道有多少文件操作将在任意给定时间段内执行。
在一些实施例中,本文描述的系统和方法可以通过监测文件事件来管理文件复制。在一些实例中,这可以使得复制控制流与正在复制的数据分隔开。在一些实例中,一些实施例可实现文件中的部分在文件关闭之前进行复制。
图2示出了本发明各方面可以应用于的示例计算系统200的各方面。该系统包括一个或多个源位置210以及可通信地连接到复制器220的一个或多个目的位置230。在一些实施例中,源位置210和目的位置230可以为涉及不同机器处的文件复制的一个或多个分布式、集群式或其它文件系统的一部分。在一些实施例中,源位置和目的位置可以是不同文件系统的一部分。
如图2所示,源位置210处的机器生成关联于文件系统事件的事件数据,从而修改相应源位置210处的一个或多个文件。将这些文件系统事件传送给复制器220。对于传送给复制器的每个文件系统事件,复制器用于生成要在一个或多个目的位置230处执行的文件系统动作,以复制源位置处对一个或多个文件的修改。调度文件系统动作,然后传送给目的位置230处的合适机器以执行。
源位置210和/或目的位置230可以位于包括任意设备和/或系统的任意机器处,这些设备和/或系统可生成文件系统事件数据和/或接收和处理文件系统动作。例如,源机器位置210和/或目的机器位置230可以包括任意设备或系统,这些设备或系统包括数据存储组件或与数据存储组件交互,该数据存储组件可以为一个或多个分布式文件系统的一部分。
虽然图2中的位置210、230被标记为源和目的,但是在特定位置处的机器不一定限于源角色或目的角色。在一些实施例中,作为一个文件复制过程的目的机器或位置可以是另一个文件复制过程的源,以及作为一个文件复制过程的源的机器或位置可以是另一个文件复制过程的目的。
在一些实施例中,源位置210和目的位置230可以包括具有硬件和软件组件的任意组合的机器。例如,源/目的机器可以包括计算设备、处理器、网络、存储器、存储设备、网络设备等中的任意一个或它们的组合。在一些实施例中,源/目的机器可以是或可以包括数据中心、大型主机、机架、服务器、云中的虚拟机,等等。在其它实施例中,源/目的机器可以是单独设备,它们在逻辑上或物理上是数据中心、大型主机、机架、服务器等等的一部分。在不同的实施例中,不同的源和/或目的机器可以使用不同的操作系统和/或文件系统。
计算系统200可以将一个或多个处理器包含在单个机器中或在计算系统200中的任意数量机器/设备之间分布。这些处理器可用于处理计算系统200中的文件系统操作和通信。
在一些实施例中,计算系统200包括用于管理分布式文件系统中的文件的复制器220,分布式管理文件可以是计算系统200的一部分。在一些实施例中,复制器220用于从源机器210接收事件数据,并且生成和调度文件系统动作以在目的机器230处执行。
在一些实施例中,复制器220实施为运行复制服务或其它应用的一个或多个处理器。在一些实施例中,复制器220可以在单独服务器或其它机器上实施,该服务器或其它机器与源位置210和目的位置230处的机器联网。复制器220还可以在系统200中的任何合适设备上或内实施。例如,在一些实施例中,复制器220可以在源机器和/或目的机器上或内实施。
在一些实施例中,复制器220可以跨系统中的多个设备分布。例如,复制器220提供的功能和服务可以跨系统200中的任意数量的机器和位置处的处理器分布。
机器位置210、230和复制器220可以通过任意合适的连接,包括通过通信网络,进行连接。例如,机器和复制器220可以通过一个或多个物理和/或逻辑网络和网络设备或者数据中心/设备/机架等内的互连来连接。
无论计算系统200中的设备、网络、硬件、软件和/或其它资源的数量或配置如何,在一些实施例中,可以配置计算系统200呈现为客户端设备的单个文件系统接口,其中这些客户端设备正在访问源机器或目的机器处的文件。
在一些实例中,本文描述的示例实施例或其它实施例可以提供一种在源位置和目的位置之间提供最终文件一致性的方案。在一些实例中,文件系统可以在处理潜在的连续事件时最终同步。
图3为示出可发生于源机器处的文件系统事件和复制目的机器处的事件的对应动作的各示例的表格300。例如,“CreateEvent”表示在源机器处创建新文件(例如“test.xml”)的示例文件系统事件。由复制器生成的对应“CreateAction”包括将文件从源机器复制到一个或多个目的机器的指令,已经映射或配置这些目的机器从源机器复制文件。
其它示例文件系统事件包括将数据附加到文件(生成“AppendAction”的“AppendEvent”)、关闭文件(生成“CloseAction”的“CloseEvent”)、移动/重命名文件(生成“RenameAction”的“RenameEvent”)、移除/删除文件(生成“UnlinkAction”的UnlinkEvent)、更改文件权限或其它文件元数据(生成“MetadataUpdateAction”的“MetadataUpdateEvent”)、修改文件(例如重新、随机写入—未示出)。
在一些实施例中,其它文件系统事件可以触发事件数据生成为复制过程的一部分。一般地,文件系统事件可以包括文件变异或文件修改事件等任何事件,文件变异或文件修改事件表示修改在源机器处的至少一个文件的数据。在一些实施例中,这些事件可以触发生成事件数据。出于本说明书的目的,表示文件数据修改的事件应理解为包括创建新文件、修改已有文件的数据、添加到文件、截取或缩短文件、删除文件、复制文件、移动文件等。修改文件数据还应理解为包括修改该文件的内容和/或文件的元数据,例如权限、所有权、时间戳等。
在一些实施例中,修改文件还应理解为包括修改目录,不管机器文件系统实际上是否将目录看作文件。在一些实例中,由于修改目录、路径、文件夹等需要在分布式文件系统中进行复制,所以除非不适用,要对修改文件的参考应包含目录等等。
在一些实施例中,修改文件还应理解为包括修改链接、设备文件或任何其它类型的文件或文件类对象。
在一些实例中,单个文件系统指令会影响单个文件。例如,创建文件指令可能导致创建单个文件,这可以认为是单个文件系统事件。在其它实例中,批量、递归、迭代、通配符指令等会影响多个文件。在这类实例中,系统可以认为这些是多个单个事件,每个事件影响单个文件,或作为一个或多个事件,影响多个文件。在一些实施例中,系统处理多文件事件的能力可以取决于目的机器处理复印机生成的对应动作的能力。
在一些实施例中,单个文件系统事件可以触发多个动作的生成。在一些实施例中,动作可以触发后续动作的生成。
在一些实施例中,文件系统事件可以包括需要两个或更多机器同步的系统事件。例如,这类系统事件可以包括机器的启动、重置、故障恢复或网络重连,新文件映射到机器等。在一些实施例中,在接收到指示发生这些文件系统事件的其中一个的事件数据时,复制器用于生成一系列动作以同步两个或更多机器。例如,同步动作可以包括生成受影响的两个(或更多)映射机器的文件的文件系统快照,确定快照之间的差异,以及生成动作以复制变化。
例如,如果系统确定图4A所示的实例事件400已经造成源机器和目的机器处的文件快照之间的差异,则复制器生成图4B中的实例动作410以同步源机器和目的机器。
在一些实例中,如果启动的机器不是最新的,则诸如机器启动的文件系统事件可能实际上不需要任何同步;然而,由于文件系统可能最初没有意识到最新状态,所以在一些实施例中,处理这类文件系统事件为表示修改一个或多个文件。
在一些实例中,文件系统事件可以同时发生和/或按顺序发生,这可能会产生动作之间的依赖关系。例如,图5A示出了发生于源机器处的事件500的示例顺序。不同分支(如两条箭头路径所示)中的一些这类事件可以同时或单独发生。然而,重命名文件“conf.xml”为“test.xml”的最终RenameEvent 501只能成功完成,因为它发生于RenameEvent 502和UnlinkEvent 503之后。因此,该系统和复制器用于处理动作之间的依赖关系以复制事件。
图5B示出了复印机生成的动作510的示例顺序。如本文所述,在一些实施例中,可以重排动作和/或可以精简或浓缩冗余或相关动作。在一些实例中,这可以减少要执行的动作的数量,从而减少了资源使用和/或复制时间。
图6为示出了一种管理文件复制的示例方法600的各方面的流程图。在610处,一个或多个处理器接收关联于一个或多个文件系统事件的事件数据。这些事件可以包括任意文件系统命令、操作、状态变化等等,这些都会需要执行一个为了维护第一位置和第二位置之间的文件一致性动作。例如,文件系统事件可以表示修改第一位置处的一个或多个文件的修改,然后需要在第二位置处复制这些文件以维护两个机器上的文件之间的一致性。在一些实施例中,文件系统事件可以包括机器之间的新映射(例如向新机器添加冗余);机器通电、重启或网络重连;或者需要同步动作以使新映射机器或新可用机器更新的任意其它事件。其它示例事件如图3和图5A所示。
在一些实施例中,文件位置可以包括文件名字、路径名字、网络位置、机器参考、链接、IP或其它地址等等,或者它们的任意组合。
在一些实施例中,事件数据可以包括一个或多个字段、标志、标识符等等。在一些实施例中,事件数据可以包括标识事件类型/命令,文件名,文件元数据等等的数据。
在一些实施例中,事件数据可以在源机器处生成。例如,LinuxTMinotify子系统、文件变更监测子系统、Mac OS X FSEvents API等等可以用于监测和/或生成事件数据。在一些实施例中,可以生成定期或按需文件系统快照,并且与先前快照进行比较,以识别文件系统的变化并生成事件数据。在一些实施例中,可以使用文件监视/通知系统和快照比较的组合。
在一些实施例中,处理器可以从源机器通过网络或其它连接接收、收集或获取事件数据。在处理器位于源机器处的实施例中,处理器可以直接接收或获取事件数据。
在620处,处理器为每个关联于接收到的事件数据的文件系统事件生成一个或多个文件系统动作。在一些实施例中,文件系统动作可以包括一个或多个文件系统命令、操作或其它数据,用于指示系统中的一个或多个处理器将源位置处的任何文件修改应用到一个或多个目的位置。在一些实施例中,通过转换事件数据来生成文件系统动作。例如,可以在源机器处创建新文件的“CreateEvent”命令可以转换为将源机器处的新文件复制到目的机器的“CreateAction”命令。
在一些实施例中,通过事件数据镜像来生成文件系统动作。例如,可以在源位置处重命名文件但不改变其任何内容的“RenameEvent”命令可以通过在目的位置处重命名对应文件的“RenameAction”命令来做镜像处理。
如本文或其它地方所描述,在一些实施例中,单个事件可以触发生成多个动作。
在一些实施例中,文件在系统中的各个位置处存在两个以上副本。这样可能需要单个事件在多个目的位置进行复制。在一些实施例中,处理器生成多个动作以在多个目的位置中每一个位置处复制特定事件。
在一些实施例中,动作可以包括一个或多个运营商、参数、源、目的地、字段、标志、标识符、文件名、元数据等等。
在一些实施例中,动作不包括已经修改的实际数据内容,而是包括文件位置信息,其标识可以在第一机器中访问已修改数据的位置。例如,动作可以包括文件名、路径、网络地址、链接等等。类似地,在一些实施例中,事件数据还包括文件位置信息而不包括已经修改的实际数据内容。
在一些实例中,这可以减少缓冲或存储正在处理的事件和/或动作数据所需的内存大小。在一些实例中,这还可以减少网络利用率,因为已修改数据直接从源机器传送到目的机器,而不是从源机器传送到复制器,然后从复制器传送到目的机器。
在一些实施例中,当文件元数据为正被修改的数据时,该信息可以包含在事件和/或动作数据中。例如,重命名文件或更改权限的数据可以包含在事件和/或动作数据中。
在630处,处理器将生产的动作存储在动作缓冲器中。在一些实施例中,动作缓冲器可以是一个或多个存储器,并且可以以任意合适的数据结构和格式存在。在一些实施例中,可以对动作缓冲器进行排序,或者动作缓冲器可以包括时间戳、顺序位置或其它信息,以标识生成动作的顺序。在一些实施例中,将动作排序或存储,从而维护依赖关系或避免违反动作之间的依赖关系。
在640处,处理器调度动作缓冲器中的动作以进行执行操作。在一些实施例中,处理器基于各种因素,包括资源可用性、不同机器/用户/进程等之间的公平算法、提高并行性/吞吐量的因素等等,来调度动作以执行。在一些实施例中,处理器将调度的动作分配给一个或多个资源以执行动作。例如,可以将动作分配给处理器、网络资源、存储设备等等。在一些实施例中,动作可分配有特定端口、网络带宽、存储设备带宽、读/写权限等等。
在一些实施例中,调度动作缓冲器中的动作包括识别或确定哪些动作准备执行。在一些实施例中,如果一个动作对前一未成功执行的动作具有依赖性,则该动作无法进行调度。例如,将数据附加到文件“example.txt”末尾或重命名文件“example.txt”的动作将在创建“example.txt”文件的前一个动作还未完成之前无法进行调度。
在一些实施例中,处理器用于在将依赖关系添加到动作缓冲器时识别出它们。在其它实施例中,可以在调度动作以执行之前识别依赖关系。
在一些实施例中,处理器扫描动作缓冲器中的动作以确定某个动作是否依赖于在该动作之前添加到动作缓冲器中的任意动作。在一些实施例中,这包括了对动作中包含的文件名、链接和/或其它文件标识符进行比较以识别访问或修改相同文件的动作。在一些实施例中,确定依赖关系也包括确定动作类型是否产生依赖关系。
在一些实施例中,处理器用于将依赖关系信息存储在关联于对应动作的标志、链接、参数等等中。在一些实施例中,由于动作周期性地完成,所以处理器可以更新存储的依赖关系信息。
处理器用于调度没有明显依赖关系和/或准备执行的动作以执行。在一些实施例中,没有明显依赖关系的动作为指示该动作没有依赖关系的标志、链接或其它参数的动作。
在一些实施例中,没有依赖关系的动作可以添加到、移动到或存储在准备执行的动作缓冲器中。在具有该结构的实施例中,处理器可从该准备执行的动作缓冲器中选择和调度动作。
图7示出了图示一种如本文或其它地方所描述的管理分布式文件系统中的文件的示例控制流700和示例系统701的各方面的流程图。系统701中的一个或多个处理器用于实施动作发生器710、准备滤波器720和执行调度器730。在一些实施例中,动作发生器710、准备滤波器720和/或执行调度器730可以是复制器220的一部分。
图8A示出了一种示例发生器过程的各方面。如本文或其它地方所描述,动作发生器710从系统中的一个或多个机器接收事件数据流751。可以在任意时间接收事件数据,例如,在事件发生时、周期性地或其它定期或不定期时间发生。
如本文或其它地方所描述,对于事件数据751中识别的每个事件,动作发生器710转换事件数据或生成一个或多个动作,这些动作添加到动作序列752中(例如储存在动作缓冲器中)。
在一些实施例中,动作发生器更新已经在动作系列中的动作。在一些实施例中,更新基于正在生成的动作的类型。图8B示出了在新动作为重命名或取消链接动作时更新动作缓冲器中的动作的一些示例过程的各方面。例如,如果接收到指示已经重命名某个文件的重命名事件,则动作发生器更新所有动作,这些动作通过该文件的新名称来引用该文件。在一些实例中,由于该文件不能再被先前名称引用,所以确保了可以正确执行动作缓冲器中的动作。在另一示例中,如果接收到取消链接事件,由于源文件被源机器删除,所以都可以取消所有前面创建或附加动作。
如本文或其它地方所描述,准备滤波器720过滤或识别动作缓冲器中的哪些动作准备执行。在一些实施例中,所识别的动作定义了准备运行动作集753。
图9A和图9B示出了一种示例准备滤波器过程的各方面。如本文或其它地方所描述,准备滤波器720解析或确定动作的准备度以执行。在一些实施例中,解决动作的准备度包括计算或识别动作缓冲器中与某个动作有关的所有动作。如果准备滤波器确定该动作没有来自相关动作的优先约束,则将该动作添加到准备执行动作集中或识别为准备执行。
图10A和图10B示出了动作重组和批量优化过程的各方面,在一些实施例中,这些过程可应用于本文描述的任意示例方法和系统。
在一些实施例中,关联于复制器、动作发生器或准备滤波器的处理器,或者系统200中的任意处理器用于重排、组合、排除或重组动作缓冲器中的动作。
例如,在一些实施例中,处理器可以基于可用资源对动作进行重排序,以简化动作缓冲器或达成其它目的。例如,在一些实施例中,处理器可以对动作进行重排序,以将非数据运送动作(例如不涉及从源位置传输文件内容数据的重命名或取消链接动作)放置在涉及将数据从源位置传输到目的位置的动作(例如创建、附加)之前。在一些实例中,这样可以简化/减少动作缓冲器和/或减少未来准备度计算。
在一些实施例中,处理器可组合、浓缩或排除相关动作。在一些实施例中,相关动作可以包括涉及至少一个常用文件的动作。例如,同一个文件中的两个先后附加动作可以组合为单个较大的附加动作。在另一示例中,从“FileA.txt”到“FileB.txt”的重命名动作以及从“FileB.txt”到“FileC.txt”的后续重命名动作可以组合为从“Fil·eA.txt”到“FileC.txt”的单个重命名动作。在另一示例中,取消链接动作可以浓缩、精简或排除先前动作,因为一个文件最终被删除,先前动作可能不再需要。
处理器可以用于类似地重排、组合或浓缩/排除任何其它系列的合适动作。在一些实例中,通过重组动作缓冲器中的动作,可以减少完成计算所有动作所需的资源和/或时间。
在一些实施例中,重排、组合、排除或重组动作缓冲器中的动作包括确保重组遵守或避免违反任何动作依赖关系。
如图所示,例如,在图10B中,在一些实施例,处理器可以用于延迟调度动作和/或重组过程,直到检测到批量优化触发。在一些示例中,处理器在动作缓冲器到达或超过限定大小时、在限定时间段自上一调度/重组过程运行结束之后和/或在存在执行动作的可用资源时检测批量优化触发。
如本文或其它地方所描述,执行调度器730调度准备执行动作以使用一个或多个执行资源740执行。在一些实施例中,调度的动作定义了一系列执行指令754以在一个或多个分配资源处执行。
图11A示出了一种示例执行调度过程的各方面。如本文或其它地方所描述,处理器使用一个或多个调度算法来调度系统识别为准备执行的一个或多个动作。在一些实施例中,该调度可以通过选择、调度和/或分配动作以维护或满足限定的最大、平均和/或目标复制滞后时间来尝试将性能最大化。在一些实施例中,该调度可以旨在最大化并行性和/或最大化资源利用率。在一些实施例中,该调度可以基于对特定机器、映射、用户等等的公平性。在一些实施例中,该调度基于可用执行资源740。
在一些实施例中,执行资源将执行响应消息755传送给分布式文件系统处理器。在一些实施例中,执行响应消息包括指示是否成功执行动作的数据。在一些实施例中,执行响应消息可以包括指示成功执行或一个或多个错误码的标志或代码。
在一些实施例中,处理器遍历或检查动作缓冲器以识别或确定动作缓冲器中的任意动作鉴于执行响应消息是否有关或需要更新。
在一些实施例中,基于执行响应消息755,处理器更新756动作缓冲器中的动作。在一些实施例中,这可以包括更新准备执行动作和未准备执行动作。图11B示出了一种示例反馈/动作缓冲器更新过程的各方面。
在一些实施例中,在接收成功响应消息时,更新动作可以包括清除或更新依赖关系字段,或者解决针对基于成功执行动作完成的动作的一个或多个依赖关系。
在一些实施例中,在接收失败响应消息时,处理器可以尝试识别失败执行的原因。在一些实施例中,处理器可以将失败执行动作添加回动作缓冲器。
在一些实施例中,接收和处理响应消息在一些实例中可以使得系统及时和/或正确响应目的位置处的执行结果。
如本文或其它地方所描述,在一些实施例中,事件可以触发生成动作序列。图12示出了包括可以在关闭源文件之前开始的示例“早期开始”复制过程1202的时间轴1200。
在一些实施例中,诸如创建事件或附加事件之类的数据运送事件可以触发在源文件已经关闭之前开始的复制过程。在一些实施例中,基于事件类型等,事件数据指示正被修改源机器处的文件中的内容数据。
在一些实施例中,在接收标识数据运送事件(即指示正被修改源机器处的一个或多个文件中的内容数据的事件)的事件数据时,处理器生成对应动作(例如创建或附加)并启动线程或其它进程来监测在源机器处正被修改的文件的当前长度。当正被修改的内容数据的长度指示已修改内容数据中的新块满足或超过限定块大小时,生成复制块动作和/或识别复制块动作为准备执行。例如,在图12中,正在源机器处创建文件105。出于说明目的,示出文件105具有n个相同长度的块。由于文件105正在源机器处写入,所以线程或其它进程监测该文件的当前长度。当文件长度指示当前文件大小超过限定块大小(由块0(引用1250)和1(引用1251)之间的边缘划定)时,处理器触发复制块动作的生成和/或准备以将块0复制到目的机器。继续监测当前文件长度,当当前文件长度指示已修改数据的未处理部分超过限定块大小时,生成另一复制块动作(例如将块1复制到目的机器)。在一些实施例中,重复该过程,直到接收关闭事件数据。
在一些实施例中,限定块大小可以基于资源能力和/或可以是选择用来控制或减少复制滞后时间的大小。在一些实施例中,可以选择限定块大小来减少可能由于大块文件传输导致的资源阻塞。
在一些实例中,早期开始过程1202和/或块复制可以使得复制大文件的速度比复制过程(例如120)快得多,该复制过程直到关闭源文件才开始。在一些实例中,文件的块复制还可以提高不同文件系统事件之间的资源平衡。
图13示出了图示可以在关闭源文件之前开始的示例“早期开始”复制过程1302的时间轴1300。在该过程中,通过不同复制块动作复制的块可以有不同大小。在接收指示源位置处的一个或多个文件中的内容数据正被修改的事件数据时,处理器生成初始块复制动作以将初始可用已修改数据复制到目的位置。例如,在图13中,当处理事件数据时,文件105的文件大小指示块0所示的已修改数据的块可用于复制,并且处理器生成复制块动作以将块0复制到目的位置。当接收到指示成功复制块0的执行响应消息时,处理器生成后续复制块动作以在源位置(例如文件105中的块1)处复制已修改数据中的当前可用但还未复制部分。根据复制滞后和处理时间,后续块可以有不同大小。在一些实施例中,重复该过程,直到接收关闭事件数据。在一些实例中,相比于图12所示的示例过程1202,需要对源文件的长度的监测更少。
图14示出了一种管理文件系统复制的示例计算系统1400或示例机器1401的示意图。
在一些实施例中,计算系统1400或机器1401可以包括一个或多个处理器1401、存储器1420、输入/输出接口1430、输入设备1440、存储设备1450和/或适合于执行本文描述的方法和功能的各方面或其中涉及的任何其它组件或机制。
在一些实施例中,计算系统1400可以包括一个或多个机器1401或系统,它们提供机制、控制器、设备和/或通信链路来执行本文描述的方法和功能的各方面。例如,计算系统1400可以包括一个或多个计算机、服务器和控制设备,它们用于运行文件进程、读取或写入文件数据、发送通信消息并且控制、监测或使用资源1450。在一些实施例中,示例机器1401或计算系统1400可以是独立计算机、服务器、移动设备、大型主机、超级计算机、计算阵列或用于执行文件系统进程的其它计算设备。
在一些实施例中,存储设备1450可以包括用于存储文件的任何设备和/或介质。存储设备1450可以包括但不限于硬盘、固态驱动器、磁带、光盘驱动器和/或适合于存储和检索数据的任意设备。
在一些实施例中,存储设备1450可以由客户端设备访问或监测,该客户端设备可以或可以不涉及在分布式文件系统复制进程中。
每个处理器1401可以是,例如任意类型的微处理器或微控制器、中央处理器或图形处理器、数字信号处理(digital signal processing,DSP)处理器、集成电路、现场可编程门阵列(field programmable gate array,FPGA)、可重构处理器或它们的任意组合。
存储器1420可以包括位于内部或外部(例如联网或外围)的任意类型的计算机存储器中的一个或其组合,例如硬盘、闪存、固态存储器、网络存储设备、随机存取存储器(random-access memory,RAM)、超速缓存内存、只读存储器(read-only memory,ROM)、或只读光盘(compact disc read-only memory,CD-ROM)、电光存储器、磁光存储器、可擦除可编程只读存储器(erasable programmable read-only memory,EPROM)和电可擦除可编程只读存储器(electrically-erasable programmable read-only memory,EEPROM)、铁电RAM(Ferroelectric RAM,FRAM)、非瞬时性计算机可读介质,等等。
在一些示例中,存储器1420可以包括用于配置机器1401或计算系统1400中的一个或多个处理器和其它组件来执行本文描述的任意方法和功能的数据或指令集。
一些输入/输出(input/output,I/O)接口1430可以使机器1401或系统1400能够与一个或多个输入设备或者一个或多个输出设备互连,输入设备包括键盘、鼠标、摄像头、触摸屏和麦克风等,输出设备包括显示屏或扬声器等。在一些实施例中,I/O接口1430还可以包括网络接口,使机器1401或计算系统1400的各方面能够执行以下操作:与其它组件通信、与其它组件交换数据、访问和连接到网络资源、服务应用并且通过连接到一个或多个有线或无线网络来执行其它计算应用,其中,有线或无线网络能够携带数据并且包括互联网、以太网、传统电话业务(plain old telephone service,POTS)线路、公共交换电话网络(public switched telephone network,PSTN)、综合业务数字网(integrated servicesdigital network,ISDN)、数字用户线(digital subscriber line,DSL)、同轴电缆、光纤、卫星、移动手机、无线电(例如Wi-Fi、WiMAX)、SS7信令网络、蓝牙TM、近场通信(near fieldcommunication,NFC)、固定线路、局域网、广域网、总线和其它,同时包括这些项的任意组合。
在一些实施例中,机器1401和/或计算系统1400可以包括输入或输出设备,例如键盘、鼠标、摄像头、触摸屏、麦克风、显示器等。例如,计算设备或打印设备可以包括小键盘、触摸屏或其它集成、外围或链接输入或输出设备。输入设备可以用于接收指令以访问或修改文件或改变文件系统参数。输出设备可以用于显示或输出文件系统信息。
本文中所公开的实施例可通过使用硬件或软件或其某一组合而实施。基于此类理解,技术方案可以以软件产品的形式体现。软件产品可以存储在非易失性或非瞬时性存储介质中,非易失性或非瞬时性存储介质可以是只读光盘(compact disk read-onlymemory,CD-ROM)、USB闪存盘、移动硬盘、闪存、硬盘等。软件产品包括使计算设备(计算机、服务器、大型主机或网络设备)能够执行本文所提供的方法的多个指令。
可将程序代码应用于输入数据以执行本文描述的功能并生成输出信息。该输出信息应用于一个或多个输出设备。在一些实施例中,通信接口可以是网络通信接口。在组合元件的实施例中,通信接口可以是软件通信接口,例如用于进程间通信的软件通信接口。在其它实施例中,可存在实施为硬件、软件和/或其组合的通信接口的组合。
每个计算机程序可存储在存储介质或设备(例如,ROM、磁盘、光盘)上,可由通用或专用可编程计算机读取,用于在计算机读取该存储介质或设备时配置且操作所述计算机以执行本文描述的过程。还可考虑将系统的实施例实施为配置有计算机程序的非瞬时性计算机可读存储介质,其中如此配置的存储介质使计算机以特定和预定方式运行,从而执行本文描述的功能。
此外,所描述的实施例的系统和方法能够分布在包含物理非瞬时性计算机可读介质的计算机程序产品中,所述介质带有针对一个或多个处理器的计算机可用指令。该介质可以各种形式提供,包含一个或多个磁盘、光盘、磁带、芯片、磁性和电子存储介质、易失性存储器、非易失性存储器等等。非瞬时性计算机可读介质可包含所有计算机可读介质,除了瞬时传播信号。术语“非瞬时性”并不意图排除主存、易失性存储器、RAM等等计算机可读介质,其中存储其上的数据可仅为临时存储。计算机可用指令还可呈各种形式,包含编译的和非编译的代码。
本发明可以大量提及服务器、服务、接口、端口、平台或由硬件设备形成的其它系统。应了解,此类术语的使用被认为表示具有用于执行软件指令的至少一个处理器的一个或多个设备,所述软件指令存储在计算机可读的有形的非瞬时性介质上。应进一步了解,所公开的基于计算机的算法、过程、方法或其它类型的指令集可体现为包括非瞬时性有形的计算机可读介质的计算机程序产品,所述计算机可读介质存储使得处理器执行所公开的步骤的指令。
本文描述了各种示例实施例。虽然每个实施例表示发明元件的单个组合,但发明主题视为包含所公开的元件的所有可能组合。因此,如果一个实施例包括元件A、B和C,第二实施例包括元件B和D,则还考虑发明主体包括A、B、C或D的所有其它剩余组合,即使未明确公开。
本文描述的实施例通过物理计算机硬件实施例实施。本文描述的实施例提供适用的物理机器,且尤其是计算设备、服务器、处理器、存储器、网络等配置好的计算机硬件布置。举例来说,本文描述的实施例是针对计算机装置以及由计算机通过电子数据信号的处理和转换而实施的方法。
本文描述的实施例可涉及通过特别配置以实施各种动作的计算设备、服务器、接收器、传输器、处理器、存储器、显示器、网络。本文描述的实施例是针对用于处理和转换表示不同类型的信息的电磁信号的电子机器。本文描述的实施例普遍地且一贯地涉及机器及其用途;且本文描述的实施例在与计算机硬件、机器、各种硬件组件一同使用之外没有意义或实际可应用性。
使用心理步骤等把通过特别配置以实施各种行动的计算设备、服务器、接收器、发射器、处理器、存储器、显示器、网络替换成非物理硬件可能极大影响所述实施例起作用的方式。
此类硬件限制明显是本文描述的实施例的必要元件,且其在对本文描述的实施例的操作和结构没有实质影响的情况下无法省去或替换成期望装置。所述硬件对于本文描述的实施例是必要的,且并非仅用于迅速地以有效方式执行步骤。
虽然已详细地描述了本发明及其优点,但是应理解,可以在不脱离如所附权利要求书所界定的本发明的情况下对本发明做出各种改变、替代和更改。
此外,本发明的范围并不局限于说明书中所述的过程、机器、制造、物质组分、构件、方法和步骤的特定实施例。所属领域的一般技术人员可从本发明中轻易地了解,可根据本发明使用现有的或即将开发出的,具有与本文所描述的相应实施例实质相同的功能,或能够取得与所述实施例实质相同的结果的过程、机器、制造、物质组分、构件、方法或步骤。相应地,所附权利要求范围旨在包括这些流程、机器、制造、物质组分、构件、方法或步骤。

Claims (20)

1.一种管理文件系统复制的方法,其特征在于,所述方法包括:
收集关联于文件系统事件的事件数据,每个所述文件系统事件表示修改第一文件系统位置处的至少一个文件;
对于每个所述文件系统事件,生成至少一个文件系统动作,以将所述第一文件系统位置处的所述至少一个文件的所述修改应用到第二文件系统位置处的至少一个对应文件;
将所述至少一个生成的文件系统动作存储在动作缓冲器中;
识别所述动作缓冲器中的文件系统动作之间的依赖关系;以及
调度所述动作缓冲器中的所述文件系统动作以基于所述依赖关系执行。
2.根据权利要求1所述的方法,其特征在于,调度所述动作缓冲器中的所述文件系统动作以进行执行操作包括:
在确定已经解决所述动作缓冲器中的特定动作的所有依赖关系时,识别所述特定动作以准备执行;以及调度所述动作缓冲器中标识为准备执行的文件系统动作以执行。
3.根据权利要求1或2所述的方法,其特征在于,包括:
接收执行响应消息,所述执行响应消息关于执行或尝试执行调度的文件系统动作;以及
基于所述接收到的执行响应消息来更新所述动作缓冲器。
4.根据权利要求3所述的方法,其特征在于,基于所述接收到的执行响应消息来更新所述动作缓冲器包括:
当所述接收到的执行响应消息指示所述调度的文件系统动作的所述执行成功时,解决所述动作缓冲器中基于所述调度的文件系统动作的至少一个动作的依赖关系。
5.根据权利要求1至4中任一项所述的方法,其特征在于,包括:在确定关联于所述接收到的事件数据的其中一个所述文件系统事件指示所述第一文件系统位置处的至少一个文件的内容数据正被修改时:
监测所述正被修改的内容数据的长度;以及
当所述正被修改的内容数据的所述长度指示已修改内容数据中的块大小已定义的新块可用于复制时,生成复制块动作,所述复制块动作用于在所述第二文件系统位置处复制所述已修改内容数据的新块。
6.根据权利要求1至5中任一项所述的方法,其特征在于,包括:在确定关联于所述接收到的事件数据的其中一个所述文件系统事件指示所述第一位置处的至少一个文件的内容数据正被修改时:
生成初始复制块动作以复制所述第一文件系统位置处的所述已修改内容数据的初始可用部分;以及
当接收到执行响应消息时,生成后续复制块动作以复制所述已修改内容数据的下一可用部分,所述执行响应消息指示复制所述内容数据的前一复制块动作成功。
7.根据权利要求1至6中任一项所述的方法,其特征在于,已生成的动作包括所述第一位置处的所述至少一个文件的文件位置信息。
8.根据权利要求1至7中任一项所述的方法,其特征在于,包括:对所述动作缓冲器中的一个或多个动作重排序。
9.根据权利要求1至8中任一项所述的方法,其特征在于,包括:
组合或排除所述动作缓冲器中的一个或多个相关动作,其中,当至少一个文件涉及两个或更多动作中的每个动作时,所述两个或更多动作相关。
10.根据权利要求9所述的方法,其特征在于,包括:延迟所述组合或排除所述一个或多个相关动作,直到检测到批量优化触发。
11.一种管理文件系统复制的系统,其特征在于,所述系统包括:
至少一种处理器,用于:
收集关联于文件系统事件的事件数据,每个所述文件系统事件表示修改第一文件系统位置处的至少一个文件;
对于每个所述文件系统事件,生成至少一个文件系统动作,以将所述第一文件系统位置处的所述至少一个文件的所述修改应用到第二文件系统位置处的至少一个对应文件;
将所述至少一个生成的文件系统动作存储在动作缓冲器中;
识别所述动作缓冲器中的文件系统动作之间的依赖关系;以及
调度所述动作缓冲器中的所述文件系统动作以基于所述依赖关系执行。
12.根据权利要求11所述的系统,其特征在于,调度所述动作缓冲器中的所述文件系统动作以执行包括:
在确定已经解决所述动作缓冲器中的特定动作的所有依赖关系时,识别所述特定动作为准备执行;以及
调度所述动作缓冲器中识别为准备执行的文件系统动作以进行执行操作。
13.根据权利要求11或12所述的系统,其特征在于,所述至少一个处理器用于:
接收执行响应消息,所述执行响应消息关于执行或尝试执行调度的文件系统动作;以及
基于所述接收到的执行响应消息来更新所述动作缓冲器。
14.根据权利要求13所述的系统,其特征在于,基于所述接收到的执行响应消息来更新所述动作缓冲器包括:
当所述接收到的执行响应消息指示所述调度的文件系统动作的所述执行成功时,解决所述动作缓冲器中基于所述调度的文件系统动作的至少一个动作的依赖关系。
15.根据权利要求11至14中任一项所述的系统,其特征在于,所述至少一个处理器用于:在确定关联于所述接收到的事件数据的其中一个所述文件系统事件指示所述第一文件系统位置处的至少一个文件的内容数据正被修改时:
监测所述正被修改的内容数据的长度;以及
当所述正被修改的内容数据的所述长度指示已修改内容数据中的块大小已定义的新块可用于复制时,生成复制块动作,所述复制块动作用于在所述第二文件系统位置处复制所述已修改内容数据的新块。
16.根据权利要求11至15中任一项所述的系统,其特征在于,所述至少一个处理器用于:在确定关联于所述接收到的事件数据的其中一个所述文件系统事件指示所述第一文件系统位置处的至少一个文件的内容数据正被修改时:
生成初始复制块动作以复制所述第一文件系统位置处的所述已修改内容数据的初始可用部分;以及
当接收到执行响应消息时,生成后续复制块动作以复制所述已修改内容数据的下一可用部分,所述执行响应消息指示复制所述内容数据的前一复制块动作成功。
17.根据权利要求11至16中任一项所述的系统,其特征在于,已生成的动作包括所述第一文件系统位置处的所述至少一个文件的文件位置信息。
18.根据权利要求11至17中任一项所述的系统,其特征在于,所述至少一个处理器用于:对所述动作缓冲器中的一个或多个相关动作重排序、组合或排除,其中,当至少一个文件涉及两个或更多动作中的每个动作时,所述两个或更多动作相关。
19.根据权利要求18所述的系统,其特征在于,所述至少一个处理器用于:延迟对所述一个或多个相关动作重排序、组合或排除,直到检测到批量优化触发。
20.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令在由至少一个处理器执行时配置所述至少一个处理器用于执行一下方法:
收集关联于文件系统事件的事件数据,每个所述文件系统事件表示修改第一文件系统位置处的至少一个文件;
对于每个所述文件系统事件,生成至少一个文件系统动作,以将所述第一文件系统位置处的所述至少一个文件的所述修改应用到第二文件系统位置处的至少一个对应文件;
将所述至少一个生成的文件系统动作存储在动作缓冲器中;
识别所述动作缓冲器中的文件系统动作之间的依赖关系;以及
调度所述动作缓冲器中的所述文件系统动作以基于所述依赖关系执行。
CN201780038609.XA 2016-11-22 2017-10-11 管理文件系统复制的系统、设备和方法 Active CN109792453B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/358,936 2016-11-22
US15/358,936 US10725974B2 (en) 2016-11-22 2016-11-22 Systems, devices and methods for managing file system replication
PCT/CN2017/105694 WO2018095152A1 (en) 2016-11-22 2017-10-11 Systems, devices and methods for managing file system replication

Publications (2)

Publication Number Publication Date
CN109792453A true CN109792453A (zh) 2019-05-21
CN109792453B CN109792453B (zh) 2021-02-09

Family

ID=62147016

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780038609.XA Active CN109792453B (zh) 2016-11-22 2017-10-11 管理文件系统复制的系统、设备和方法

Country Status (4)

Country Link
US (1) US10725974B2 (zh)
EP (1) EP3535955B1 (zh)
CN (1) CN109792453B (zh)
WO (1) WO2018095152A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021102714A1 (en) 2019-11-27 2021-06-03 Beiersdorf Daily Chemical (Wuhan) Co., Ltd. A conditioning composition
WO2021102715A1 (en) 2019-11-27 2021-06-03 Beiersdorf Daily Chemical (Wuhan) Co. Ltd. A conditioning composition
US11468017B2 (en) * 2020-07-24 2022-10-11 Capital Thought Holdings L.L.C. Data storage system and method
US11636069B2 (en) * 2020-07-24 2023-04-25 Capital Thought Holdings L.L.C. Data storage system and method
CN114564632A (zh) * 2022-02-18 2022-05-31 北京圣博润高新技术股份有限公司 文档操作行为审计方法、装置、电子设备及存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666532A (en) * 1994-07-26 1997-09-09 Novell, Inc. Computer method and apparatus for asynchronous ordered operations
US20030126247A1 (en) * 2002-01-02 2003-07-03 Exanet Ltd. Apparatus and method for file backup using multiple backup devices
US20040064488A1 (en) * 2002-09-30 2004-04-01 Dinesh Sinha Real time optimized backup of computer data
CN1852209A (zh) * 2006-05-31 2006-10-25 北京和利时系统工程股份有限公司 一种分布式控制系统中的远程过程调用方法及系统
US20070061379A1 (en) * 2005-09-09 2007-03-15 Frankie Wong Method and apparatus for sequencing transactions globally in a distributed database cluster
CN102063306A (zh) * 2011-01-06 2011-05-18 夏春秋 一种通过电子表单进行应用开发的技术实现方法
US20120023369A1 (en) * 2010-07-21 2012-01-26 International Business Machines Corporation Batching transactions to apply to a database
US20130282785A1 (en) * 2012-04-23 2013-10-24 Google, Inc. Sharing and synchronizing electronically stored files
EP2701083A1 (en) * 2012-08-24 2014-02-26 Samsung Electronics Co., Ltd Method, apparatus and system for auto-synchronization of compressed content files
US20140372376A1 (en) * 2013-06-13 2014-12-18 Box, Inc. Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
CN105045820A (zh) * 2015-06-25 2015-11-11 浙江立元通信技术股份有限公司 一种处理海量级数据的视频图像信息的方法及数据库系统
CN105306581A (zh) * 2015-11-11 2016-02-03 上海斐讯数据通信技术有限公司 一种基于路由器和云盘数据同步的方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8954401B2 (en) * 2011-01-14 2015-02-10 Symantec Corporation Systems and methods for providing increased scalability in deduplication storage systems
US9740413B1 (en) * 2015-03-30 2017-08-22 EMC IP Holding Company LLC Migrating data using multiple assets
US10089320B2 (en) * 2015-07-31 2018-10-02 Hiveio Inc. Method and apparatus for maintaining data consistency in an in-place-update file system with data deduplication

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666532A (en) * 1994-07-26 1997-09-09 Novell, Inc. Computer method and apparatus for asynchronous ordered operations
US20030126247A1 (en) * 2002-01-02 2003-07-03 Exanet Ltd. Apparatus and method for file backup using multiple backup devices
US20040064488A1 (en) * 2002-09-30 2004-04-01 Dinesh Sinha Real time optimized backup of computer data
US20070061379A1 (en) * 2005-09-09 2007-03-15 Frankie Wong Method and apparatus for sequencing transactions globally in a distributed database cluster
CN1852209A (zh) * 2006-05-31 2006-10-25 北京和利时系统工程股份有限公司 一种分布式控制系统中的远程过程调用方法及系统
US20120023369A1 (en) * 2010-07-21 2012-01-26 International Business Machines Corporation Batching transactions to apply to a database
CN102063306A (zh) * 2011-01-06 2011-05-18 夏春秋 一种通过电子表单进行应用开发的技术实现方法
US20130282785A1 (en) * 2012-04-23 2013-10-24 Google, Inc. Sharing and synchronizing electronically stored files
EP2701083A1 (en) * 2012-08-24 2014-02-26 Samsung Electronics Co., Ltd Method, apparatus and system for auto-synchronization of compressed content files
US20140372376A1 (en) * 2013-06-13 2014-12-18 Box, Inc. Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
CN105045820A (zh) * 2015-06-25 2015-11-11 浙江立元通信技术股份有限公司 一种处理海量级数据的视频图像信息的方法及数据库系统
CN105306581A (zh) * 2015-11-11 2016-02-03 上海斐讯数据通信技术有限公司 一种基于路由器和云盘数据同步的方法

Also Published As

Publication number Publication date
EP3535955B1 (en) 2020-12-02
WO2018095152A1 (en) 2018-05-31
EP3535955A1 (en) 2019-09-11
US10725974B2 (en) 2020-07-28
CN109792453B (zh) 2021-02-09
EP3535955A4 (en) 2019-09-25
US20180143996A1 (en) 2018-05-24

Similar Documents

Publication Publication Date Title
CN110737442B (zh) 一种边缘应用管理方法及系统
CN109792453A (zh) 管理文件系统复制的系统、设备和方法
US11074143B2 (en) Data backup and disaster recovery between environments
US11016944B2 (en) Transferring objects between different storage devices based on timestamps
US11436100B2 (en) Backup client agent
US11663085B2 (en) Application backup and management
JP6050342B2 (ja) リカバリーサイトにおけるレプリカされた仮想ストレージの管理
US20190294515A1 (en) Automatic configuration of a recovery service
US8930364B1 (en) Intelligent data integration
JP4902282B2 (ja) 業務システム構成変更方法、管理コンピュータ、および、業務システム構成変更方法のプログラム
US20220188196A1 (en) Continuous data protection
CN106605217B (zh) 用于将应用从一个站点移动到另一站点的方法和系统
US20150347496A1 (en) Snapshot management in hierarchical storage infrastructure
CN112579550B (zh) 一种分布式文件系统的元数据信息同步方法及系统
US11086557B2 (en) Continuous asynchronous replication from on-premises storage to cloud object stores
US11042454B1 (en) Restoration of a data source
US20220391409A1 (en) Hybrid cloud asynchronous data synchronization
Ma et al. Design and Implementation of Operating Management Platform of Dispatching and Control Cloud Application based on Container Technology
US20200097572A1 (en) Adjusting growth of persistent log
CN116886736A (zh) 基于云化架构的中间件云化处理方法及装置
CN117931379A (zh) 用于边缘计算的集群部署方法、装置、系统、设备及介质
CN112470112A (zh) 块存储系统的分布式副本
WO2016069037A1 (en) File system configuration data storage

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Chen Chen

Inventor after: Chen Jin

Inventor after: Ke Xiaodai

Inventor after: Guo Lei

Inventor after: Chen Li

Inventor before: Chen Chen

Inventor before: Chen Jin

Inventor before: Ke Xiaodai

Inventor before: Guo Lei

Inventor before: Chen Chong

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220223

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.