CN112231152A - 数据同步方法、远程服务器、客户端以及系统 - Google Patents
数据同步方法、远程服务器、客户端以及系统 Download PDFInfo
- Publication number
- CN112231152A CN112231152A CN202011441110.3A CN202011441110A CN112231152A CN 112231152 A CN112231152 A CN 112231152A CN 202011441110 A CN202011441110 A CN 202011441110A CN 112231152 A CN112231152 A CN 112231152A
- Authority
- CN
- China
- Prior art keywords
- client
- data
- operation behavior
- remote server
- behavior 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种数据同步方法、远程服务器、客户端以及系统,其中一种方法包括:远程服务器获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。延长了客户端存储装置的寿命,极大减少了远程服务器的计算资源的消耗,降低了数据同步系统的故障率,能够实现快速、准确的数据同步。
Description
技术领域
本发明涉及计算机技术领域,尤其是涉及一种数据同步方法、远程服务器、客户端以及系统。
背景技术
目前,在云计算中,为了保障设备的数据安全,将设备内的数据实时同步备份到数台、数十台甚至数百台服务器中是一种常见的手段,而现有的技术大都采用“定时扫描同步法”或是相关变形方法实现数据的实时同步。
具体地,“定时扫描同步法”是指:设置一个固定的时间间隔,每隔一个时间间隔就对设备中文件系统内存放的文件数据与目录结构进行扫描,并将扫描的结果传送至备份的远程服务器;远程服务器需要扫描服务器内备份的文件数据与目录结构,将其与接收到的扫描结果进行对比,找出有差异的地方,然后通知客户端有差异的文件数据与目录结构的位置信息;客户端接收到远程服务器发送过来有差异的文件数据与目录结构的位置信息后,为了不干扰客户端应用程序对有异动数据的文件或目录的当前操作,客户端会将这些有差异的文件数据与目录结构以拷贝的方式固定下来,再发送到远程服务器进行数据的同步与备份。
在现有技术中,“定时扫描同步法”有许多的变形方法,但是基本算法与流程与其是一样的,不同的是,这些变形方法大都是在扫描、比对与传输等三个地方进行了优化。例如,某些操作系统的文件系统会记录某个时间段内的文件与目录的异动,善用这些记录可以有效减低客户端扫描文件系统需要的时间与资源,也可以减低服务器对比需要的时间与资源,但并不是每种操作系统都支持这种进阶的功能,适用范围很窄;此外,服务器在接收到客户端每次扫描的结果后,都把结果保存下来,并以保存下来的扫描结果当作下一次比对的参照对象,而不是每次比对都要扫描备份内容,可降低服务器扫描对比找出有差异的文件数据与目录结构传的位置所需要的时间与算力资源;此外,当客户端要将有差异的文件数据与目录结构以拷贝的方式固定下来时,只拷贝有被应用程序正在使用的部分,并在传输异动数据时,加上数据压缩等功能,以减少客户端需要的额外备份空间与技术资源,并减少传输异动数据所需的带宽与时间。但不论这些变形的技术方案如何优化,其“定时扫描同步法”的基本逻辑是不变,因此,现有技术中的上述技术方案均存在以下问题:
1、合适的扫描时间间隔很难确定,如果时间太短,容易因为过于频繁的扫描客户端文件系统内容,对客户端计算资源占用太大,造成客户端反应速度变慢,影响应用程序运行速度与使用体验;但是如果时间太长,又容易因为备份次数太少,造成在设备故障时,数据会损失很大。
2、客户端扫描需要的计算资源较大,容易造成客户端的负担,影响应用程序运行速度与使用体验,过多的扫描也容易磨损客户端的存储装置,缩短客户端存储装置的寿命。
3、远程服务端的比对会消耗大量的服务器计算资源,尤其是要同时服务数百台数千台客户端时,会堆高服务器的单位服务成本。
4、现有技术中的上述技术方案无法正确地处理文件与目录的更名问题,当远程服务器将客户端的扫描与远程服务器的备份进行比对时,只能确定客户端的文件系统里,多出了那些文件或文件夹、少了那些文件或文件夹、以及那些文件的大小发生了改变。而文件或文件夹的改名则会被视为是旧名称的文件或文件夹被删除了,新名称的文件或文件夹则是新创建的。这会导致客户端将被改名的文件或文件夹重新传送给服务器做同步与备份,造成客户端与服务器大量的算力、带宽与存储空间的浪费。
5、现有技术中的上述技术方案无法正确地处理文件与目录的移动问题,文件或文件夹的移动会被视为旧位置的文件或文件夹被删除了,新位置的文件或文件夹则是新创建的。这会导致客户端将被移动的文件或文件夹重新传送给服务器做同步与备份,造成客户端与远程服务器大量的算力、带宽与存储空间的浪费。
6、现有技术中的上述技术方案无法经济有效地处理文件的时间修改问题:因为在服务器里进行比对,所以虽然文件大小没变,服务器还是无法确定时间被修改的文件内容是否有被修改,只能要求客户端将该文件内容传送到服务器比对,浪费了带宽与服务器资源;当然,可以采用提取文件内容摘要的方法来避免传送完整的文件内容,降低带宽的浪费,但提取文件内容摘要对客户端计算资源会消耗较大,影响客户端应用软件的运行效率与使用者体验。
7、现有技术中的上述技术方案比较适合在传统客户端服务端同步备份,不适合应用于多服务器同时同步备份的云计算场景。由于对比步骤繁多复杂,多台服务器同时执行作业时,为避免发生对比结果不一致的情况,需要将对比结果进行协调一致,这导致当服务器数量很多时,协调的工作会非常复杂与费时费力。因此,为了避免执行复杂的多台服务器协同一致作业,在同时同步备份到多台服务器时,通常会选择一台服务器负责对比作业,其它服务器只从对比服务器上拷贝需要同步备份的数据即可,但这反而容易因为对比服务器的故障,而造成整个同步备份系统故障。
基于现有技术中存在的上述技术问题,目前急需一种新的数据同步方法来克服上述问题。
发明内容
本发明实施例的目的在于提供一种数据同步方法、远程服务器、客户端以及系统,旨在解决现有技术中的上述问题。
本发明实施例提供一种数据同步方法,包括:
远程服务器获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
本发明实施例还提供一种数据同步方法,包括:
客户端记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;
客户端将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
本发明实施例还提供一种数据同步的远程服务器,包括:
获取模块,用于获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
数据同步模块,用于根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
本发明实施例还提供一种数据同步的客户端,包括:
记录模块,用于记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;
发送模块,用于将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
本发明实施例还提供一种数据同步系统,包括:上述数据同步的远程服务器以及上述数据同步的客户端。
本发明实施例还提供一种数据同步的远程服务器,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现上述远程服务器的数据同步方法的步骤。
本发明实施例还提供一种数据同步的客户端,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现上述客户端的数据同步方法的步骤。
本发明实施例还提供一种数据同步系统,包括上述数据同步的远程服务器,以及上述数据同步的客户端。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有信息传递的实现程序,程序被处理器执行时实现上述数据同步方法的步骤,和/或实现上述数据同步方法的步骤。
采用本发明实施例,通过让所有的同步备份服务器与要同步备份数据的客户端保持文件系统操作同步的方式,解决了现有技术中扫描时间间隔很难确定、客户端计算资源消耗大、服务端单位服务成本较高、无法正确地处理文件与目录的更名以及文件时间修改、以及不适合在多服务器同时同步备份的云计算场景等问题,延长了客户端存储装置的寿命,极大减少了远程服务器的计算资源的消耗,降低了数据同步系统的故障率,能够实现快速、准确的数据同步。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明方法实施例一的数据同步方法的流程图;
图2是本发明实施例的高速时序数据库设置的示意图;
图3是本发明方法实施例二的数据同步方法的流程图;
图4是本发明实施例的文件系统监控技术的处理流程图;
图5是本发明装置实施例一的数据同步的远程服务器的示意图;
图6是本发明装置实施例二的数据同步的客户端的示意图;
图7是本发明系统实施例一的数据同步系统的示意图;
图8是本发明装置实施例三的数据同步的远程服务器的示意图;
图9是本发明装置实施例四的数据同步的客户端的示意图;
图10是本发明系统实施例二的数据同步系统的示意图。
具体实施方式
为了解决现有技术中存在的上述问题,本发明实施例将需要同步备份设备里的应用程序对文件或文件夹的操作行为侧录下来,透过网络传送给负责同步备份的服务器,然后由服务器模仿客户端应用程序对文件或文件夹的操作行为,使得服务器上备份的文件与文件夹与客户端的文件与文件夹处于相同的状态,以此实现无需定时扫描客户端文件系统,也无需服务器执行比对作业,就能经济快速的完成客户端与服务端的数据同步与备份。
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“坚直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、 “第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。此外,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
方法实施例一
根据本发明实施例,提供了一种数据同步方法,为远程服务器侧的操作,图1是本发明方法实施例一的数据同步方法的流程图,如图1所示,根据本发明实施例的数据同步方法具体包括:
步骤101,远程服务器获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
在执行步骤101之前,远程服务器需要向具有自动备援功能的目录服务注册登记远程服务器的名称与网络地址。
具体地,上述处理需要用到可自动备援的目录服务技术;在多设备多服务器同时进行同步备份的复杂云计算与物联网场景中,由于会有多台设备同时与多台服务器通讯,因此需要一种可以记录所有参与同步备份任务服务器的名称与网络地址的目录服务。远程服务器需要向具有自动备援功能的目录服务注册登记远程服务器的名称与网络地址。此外,由于需要在云计算与物联网的场景中提供稳定可靠的目录服务,因此目录服务必须要可以自动备援,即任一台目录服务器故障,都不可以导致服务器目录服务的停摆。本发明实施例能够使用的可自动备援的目录服务包括:Apache ZooKeeper、etcd、Consul等。
在步骤101中,远程服务器获取客户端发送的数据操作行为信息之后,可以将数据操作行为信息缓存到本地的第一高速时序数据库中;在需要时从第一高速时序数据库中按顺序读取数据操作行为信息。
具体地,上述处理需要用到本地高速时序数据库技术;上述的第一高速时序数据库全称为第一高速时间序列数据库。第一高速时序数据库主要用于处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也可以称为时间序列数据。在本发明实施例中,如图2所示,服务器端需要一个在本地的第一高速时序数据库(也可以称为执行数据库),用来缓存客户端发送过来文件系统操作记录(即上述数据操作行为信息),以避免因为服务器端模仿客户端文件系统行为时,因为某些行为用时较久,例如,拷贝或大范围文件内容更动等,而造成服务器端无法继续接收客户端发送过来的操作记录,从而导致操作记录遗失的问题。此外,由于文件系统的操作有严格的时间顺序,因此,服务器端的执行数据库,必须确保里面的记录是严格按照时间顺序加入并排序的,所以必须是时序数据库。
步骤102,远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
采用本发明实施例的技术方案,具有以下有益效果:
1、无需设置时间间隔,避免了传统定时扫描同步法合适的时间间隔很难确定的问题。
2、无需服务器进行比对作业,无需消耗大量的服务器计算资源,在需要同时服务数百台数千台客户端时,可以大幅降低服务器的单位服务成本。
3、可以正确且经济的处理文件或文件夹改名问题;由于客户端会将应用程序对文件或文件夹改名的行为传送给服务器,因此,不会发生将文件或文件夹的改名视为是旧名称的文件或文件夹被删除了,新名称的文件或文件夹则是新创建的这样的错误。所以,不会导致客户端把被改名的文件或文件夹重复传送给服务器,保密造成客户端与服务器大量的算力、带宽与存储空间的浪费的问题。
4、可以正确且经济的处理文件与目录移动的问题;同样的,于客户端会将应用程序对文件或文件夹移动的行为传送给服务器,因此,不会发生将文件或文件夹的移动视为旧位置的文件或文件夹被删除了,新位置的文件或文件夹则是新创建的这样的错误。所以,不会导致客户端把被移动的文件或文件夹重复传送给服务器,避免造成客户端与服务器大量的算力、带宽与存储空间浪费的问题。
5、可以正确且经济地处理文件的时间修改的问题;同样的,由于客户端会将应用程序对文件的时间修改行为传送给服务器,因此,不会发生由于服务器无法确定时间被修改的文件内容是否有被修改,要求客户端将该文件内容传送到服务器比对,浪费带宽与服务器资源的问题;因此,也无需提取文件内容摘要,避免对客户端计算资源的消耗,影响客户端应用件的运行效率与使用者体验等问题。软
6、本发明实施例适合使用在多设备多服务器同时同步备份的复杂云计算与物联网场景;由于不需要服务器执行复杂的对比作业,因此,既没有多台服务器同时对比需要同步作业容易导致错误的问题,也没有需要选择一台服务器负责对比,因而容易因为对比服务器的故障,造成整个同步备份系统故障的问题。
方法实施例二
根据本发明实施例,提供了一种数据同步方法,为客户端侧的操作,图3是本发明方法实施例二的数据同步方法的流程图,如图3所示,根据本发明实施例的数据同步方法具体包括:
步骤301,客户端记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;
在步骤301中,客户端通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
具体地,上述处理需要用到文件系统监控技术。图4是本发明实施例的文件系统监控技术的处理流程图,如图4所示,要录制客户端应用程序对于文件与文件夹的操作,就必须要监控客户端的文件系统,而监控文件系统的方式则与操作系统有关。一般操作系统都允许挂载驱动程序在操作系统子系统功能模块上,用来过滤上层操作系统服务或应用程序对该子系统模块的调用过程,这种驱动程序称之为过滤驱动程序。以Windows为例,Windows允许开发文件过滤驱动挂载在文件系统模块上,可以监控并过滤上层服务或应用程序对文件系统模块的所有调用过程。
在步骤301中,客户端将操作行为和时间标签携带在数据操作行为信息中之后,可以将数据操作行为信息缓存到本地的第二高速时序数据库中;需要时再从第二高速时序数据库中按顺序读取数据操作行为信息。
具体地,上述处理同样需要用到本地高速时序数据库技术;第二高速时序数据库主要用于处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也可以称为时间序列数据。在本发明实施例中,如图2所示,在本发明中,由于网络延迟的关系,客户端文件系统操作发生的频率与速度,有可能会与操作记录网络发送的速度不一致,因此需要一个在本地的第二高速时序数据库(也可以称为操作数据库),用来缓存客户端文件过滤驱动产生的文件系统操作记录,以避免因为网络延迟或堵塞而造成操作记录来不及发送而导致的丢失问题。此外,由于文件系统的操作有严格的时间顺序,因此,服务器端的执行数据库,必须确保里面的记录是严格按照时间顺序加入并排序的,所以必须是时序数据库。
此外,客户端将数据操作行为信息发送给远程服务器之前,客户端需要向具有自动备援功能的目录服务查询可以备份的远程服务器,获取远程服务器的名称与网络地址,与远程服务器建立网络连接。
具体地,上述处理需要用到可自动备援的目录服务技术;当客户端要开始发送文件系统的操作记录时,首先需要向目录服务查询有哪些可以使用的同步备份服务器,以及这些服务器的名称与网络地址,接着向这些服务器发送注册要求并建立网络连线,然后才能开始发送文件系统的操作记录给这些服务器。此外,由于需要在云计算与物联网的场景中提供稳定可靠的目录服务,因此目录服务必须要可以自动备援,即任一台目录服务器故障,都不可以导致服务器目录服务的停摆。本发明实施例能够使用的可自动备援的目录服务包括:Apache ZooKeeper、etcd、Consul等。
步骤302,客户端将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
为了更好的对本发明实施例的技术方案进行理解,以下对采用方法实施例一的服务器端和采用方法实施例二客户端的交互过程进行举例说明,具体包括如下处理:
步骤1,客户端将可以监控客户端文件系统行为的文件系统过滤驱动程序安装到客户端的操作系统中,将文件系统过滤驱动程序挂钩到客户端的文件系统模块中,并通过文件系统过滤驱动程序监控客户端应用程序对文件系统里的文件与文件夹所做的所有操作的种类、对象与内容。
步骤2,服务器端通过服务器端接收程序向目录服务注册登记服务器的名称与网络地址。
步骤3,客户端向服务器注册服务器查询有哪些参与同步备份的服务器,并取得服务器地址列表。
步骤4,客户端发送程序根据服务器地址列表,以设备的唯一编号为参数,发送注册要求给所有参与同步备份的服务器,并要求建立网络连线。
步骤5,服务器端接收程序接受所有客户端发送程序发送注册要求,将设备编号与客户端网络地址记录下来,然后创建与客户端一对一对应的执行数据库(本地时序数据库)并与客户端发送程序建立网络连线。
步骤6,客户端发送程序以《序列号、操作种类、操作对象名称与位置、操作内容》格式,将文件系统的操作记录存放在一个操作数据库(本地时序数据库)中,其中序列号是按时间顺序严格递增的。
步骤7,客户端发送程序从操作数据库中读取序列号最小的记录,并把记录发送至所有已建立连线的服务器,并在收到服务端回应的操作记录已收到信息后删除该记录。
步骤8,通过服务器端接收程序接收所有参与同步备份的客户端发来的文件系统操作行为记录,服务器端接收程序接收到客户端发送过来的操作记录后,将操作记录存放在一个与客户端对应的执行数据库中,并回应客户端操作记录已收到信息。
步骤9,服务器端模仿程序从执行数据库中读取序列号最小的记录,并根据记录内的操作对象名称与位置找到服务器端相应的文件或文件夹,再根据记录内的操作种类与操作内容对该文件或文件夹做相同操作,操作完后删除该记录。
采用本发明实施例的技术方案,具有以下有益效果:
1、无需设置时间间隔,避免了传统定时扫描同步法合适的时间间隔很难确定的问题。
2、无需对客户端进行文件系统扫描,从而避免了扫描对客户端计算资源造成的负担,影响应用程序运行速度与使用体验,也避免了过多的扫描会磨损客户端的存储装置,缩短客户端存储装置的寿命的问题。
3、可以正确且经济的处理文件或文件夹改名问题;由于客户端会将应用程序对文件或文件夹改名的行为传送给服务器,因此,不会发生将文件或文件夹的改名视为是旧名称的文件或文件夹被删除了,新名称的文件或文件夹则是新创建的这样的错误。所以,不会导致客户端把被改名的文件或文件夹重复传送给服务器,保密造成客户端与服务器大量的算力、带宽与存储空间的浪费的问题。
4、可以正确且经济的处理文件与目录移动的问题;同样的,于客户端会将应用程序对文件或文件夹移动的行为传送给服务器,因此,不会发生将文件或文件夹的移动视为旧位置的文件或文件夹被删除了,新位置的文件或文件夹则是新创建的这样的错误。所以,不会导致客户端把被移动的文件或文件夹重复传送给服务器,避免造成客户端与服务器大量的算力、带宽与存储空间浪费的问题。
5、可以正确且经济地处理文件的时间修改的问题;同样的,由于客户端会将应用程序对文件的时间修改行为传送给服务器,因此,不会发生由于服务器无法确定时间被修改的文件内容是否有被修改,要求客户端将该文件内容传送到服务器比对,浪费带宽与服务器资源的问题;因此,也无需提取文件内容摘要,避免对客户端计算资源的消耗,影响客户端应用件的运行效率与使用者体验等问题。软
6、本发明实施例适合使用在多设备多服务器同时同步备份的复杂云计算与物联网场景;由于不需要服务器执行复杂的对比作业,因此,既没有多台服务器同时对比需要同步作业容易导致错误的问题,也没有需要选择一台服务器负责对比,因而容易因为对比服务器的故障,造成整个同步备份系统故障的问题。
装置实施例一
根据本发明的实施例,提供了一种数据同步的远程服务器,图5是本发明装置实施例一的数据同步的远程服务器的示意图,如图5所示,根据本发明实施例的数据同步的远程服务器具体包括:
获取模块50,用于获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
数据同步模块52,用于根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
在本发明实施例中,还需要包括以下模块:
注册登记模块,用于在获取客户端发送的数据操作行为信息之前,向具有自动备援功能的目录服务注册登记远程服务器的名称与网络地址;
第一高速时序数据库,用于在获取客户端发送的数据操作行为信息后,按顺序缓存数据操作行为信息,并在需要时按顺序读取数据操作行为信息。
本发明实施例是与上述方法实施例一对应的装置实施例,各个模块的具体操作可以参照方法实施例的描述进行理解,在此不再赘述。
装置实施例二
根据本发明的实施例,提供了一种数据同步的客户端,图6是本发明装置实施例二的数据同步的客户端的示意图,如图6所示,根据本发明实施例的数据同步的客户端具体包括:
记录模块60,用于记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;记录模块60具体用于:
通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
发送模块62,用于将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
在本发明实施例中,还需要包括以下模块:
第二高速时序数据库,用于在将操作行为和时间标签携带在数据操作行为信息中之后,按顺序缓存数据操作行为信息,在需要时按顺序读取数据操作行为信息;
查询连接模块,用于在将数据操作行为信息发送给远程服务器之前,向具有自动备援功能的目录服务查询可以备份的远程服务器,获取远程服务器的名称与网络地址,与远程服务器建立网络连接。
本发明实施例是与上述方法实施例二对应的装置实施例,各个模块的具体操作可以参照方法实施例的描述进行理解,在此不再赘述。
系统实施例一
根据本发明的实施例,提供了一种数据同步系统,图7是本发明系统实施例一的数据同步系统的示意图,如图7所示,根据本发明实施例的数据同步系统具体包括:数据同步的远程服务器70和数据同步的客户端72,具体地:
数据同步的远程服务器70包括:
获取模块50,用于获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
数据同步模块52,用于根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
在本发明实施例中,还需要包括以下模块:
注册登记模块,用于在获取客户端发送的数据操作行为信息之前,向具有自动备援功能的目录服务注册登记远程服务器的名称与网络地址;
第一高速时序数据库,用于在获取客户端发送的数据操作行为信息后,按顺序缓存数据操作行为信息,并在需要时按顺序读取数据操作行为信息。
数据同步的客户端72包括:
记录模块60,用于记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;记录模块60具体用于:
通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
发送模块62,用于将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
在本发明实施例中,还需要包括以下模块:
第二高速时序数据库,用于在将操作行为和时间标签携带在数据操作行为信息中之后,按顺序缓存数据操作行为信息,在需要时按顺序读取数据操作行为信息;
查询连接模块,用于在将数据操作行为信息发送给远程服务器之前,向具有自动备援功能的目录服务查询可以备份的远程服务器,获取远程服务器的名称与网络地址,与远程服务器建立网络连接。
装置实施例三
本发明实施例提供一种数据同步的远程服务器,如图8所示,包括:存储器80、处理器82及存储在所述存储器80上并可在所述处理器82上运行的计算机程序,所述计算机程序被所述处理器82执行时实现如下方法步骤:
步骤101,远程服务器获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
在执行步骤101之前,远程服务器需要向具有自动备援功能的目录服务注册登记远程服务器的名称与网络地址。
在步骤101中,远程服务器获取客户端发送的数据操作行为信息之后,可以将数据操作行为信息缓存到本地的第一高速时序数据库中;在需要时从第一高速时序数据库中按顺序读取数据操作行为信息。
步骤102,远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
装置实施例四
本发明实施例提供一种数据同步的客户端,如图9所示,包括:存储器90、处理器92及存储在所述存储器90上并可在所述处理器92上运行的计算机程序,所述计算机程序被所述处理器92执行时实现如下方法步骤:
步骤301,客户端记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;
在步骤301中,客户端通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
在步骤301中,客户端将操作行为和时间标签携带在数据操作行为信息中之后,可以将数据操作行为信息缓存到本地的第二高速时序数据库中;需要时再从第二高速时序数据库中按顺序读取数据操作行为信息。
此外,客户端将数据操作行为信息发送给远程服务器之前,客户端需要向具有自动备援功能的目录服务查询可以备份的远程服务器,获取远程服务器的名称与网络地址,与远程服务器建立网络连接。
步骤302,客户端将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
系统实施例二
根据本发明的实施例,提供了一种数据同步系统,图10是本发明系统实施例二的数据同步系统的示意图,如图10所示,根据本发明实施例的数据同步系统具体包括:数据同步的远程服务器100和数据同步的客户端102。
其中,数据同步的远程服务器100中的计算机程序被所述处理器82执行时实现如下方法步骤:
步骤101,远程服务器获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
在执行步骤101之前,远程服务器需要向具有自动备援功能的目录服务注册登记远程服务器的名称与网络地址。
在步骤101中,远程服务器获取客户端发送的数据操作行为信息之后,可以将数据操作行为信息缓存到本地的第一高速时序数据库中;在需要时从第一高速时序数据库中按顺序读取数据操作行为信息。
步骤102,远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
其中,数据同步的客户端102的计算机程序被所述处理器92执行时实现如下方法步骤:
步骤301,客户端记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;
在步骤301中,客户端通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
在步骤301中,客户端将操作行为和时间标签携带在数据操作行为信息中之后,可以将数据操作行为信息缓存到本地的第二高速时序数据库中;需要时再从第二高速时序数据库中按顺序读取数据操作行为信息。
此外,客户端将数据操作行为信息发送给远程服务器之前,客户端需要向具有自动备援功能的目录服务查询可以备份的远程服务器,获取远程服务器的名称与网络地址,与远程服务器建立网络连接。
步骤302,客户端将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
装置实施例五
本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有信息传输的实现程序,所述程序被处理器82执行时实现如下方法步骤:
步骤101,远程服务器获取客户端发送的数据操作行为信息,其中,数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及操作行为的时间标签;
在执行步骤101之前,远程服务器需要向具有自动备援功能的目录服务注册登记远程服务器的名称与网络地址。
在步骤101中,远程服务器获取客户端发送的数据操作行为信息之后,可以将数据操作行为信息缓存到本地的第一高速时序数据库中;在需要时从第一高速时序数据库中按顺序读取数据操作行为信息。
步骤102,远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
所述程序被处理器92执行时实现如下方法步骤:
步骤301,客户端记录对文件或文件夹的操作行为,并为操作行为打上相应的时间标签,将操作行为和时间标签携带在数据操作行为信息中;
在步骤301中,客户端通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
在步骤301中,客户端将操作行为和时间标签携带在数据操作行为信息中之后,可以将数据操作行为信息缓存到本地的第二高速时序数据库中;需要时再从第二高速时序数据库中按顺序读取数据操作行为信息。
此外,客户端将数据操作行为信息发送给远程服务器之前,客户端需要向具有自动备援功能的目录服务查询可以备份的远程服务器,获取远程服务器的名称与网络地址,与远程服务器建立网络连接。
步骤302,客户端将数据操作行为信息发送给远程服务器,使得远程服务器根据时间标签对本地备份的客户端数据执行操作行为,保持客户端数据与客户端同步。
本实施例所述计算机可读存储介质包括但不限于为:ROM、RAM、磁盘或光盘等。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (17)
1.一种数据同步方法,其特征在于,包括:
远程服务器获取客户端发送的数据操作行为信息,其中,所述数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及所述操作行为的时间标签;
所述远程服务器根据所述时间标签对本地备份的客户端数据执行所述操作行为,保持所述客户端数据与所述客户端同步。
2.根据权利要求1所述的方法,其特征在于,所述远程服务器获取客户端发送的数据操作行为信息之前,所述方法进一步包括:
所述远程服务器向具有自动备援功能的目录服务注册登记所述远程服务器的名称与网络地址。
3.根据权利要求1所述的方法,其特征在于,所述远程服务器获取客户端发送的数据操作行为信息之后,所述方法进一步包括:
将所述数据操作行为信息缓存到本地的第一高速时序数据库中;
需要时从所述第一高速时序数据库中按顺序读取所述数据操作行为信息。
4.一种数据同步方法,其特征在于,包括:
客户端记录对文件或文件夹的操作行为,并为所述操作行为打上相应的时间标签,将所述操作行为和所述时间标签携带在数据操作行为信息中;
所述客户端将所述数据操作行为信息发送给远程服务器,使得所述远程服务器根据所述时间标签对本地备份的客户端数据执行所述操作行为,保持所述客户端数据与所述客户端同步。
5.根据权利要求4所述的方法,其特征在于,所述客户端记录对文件或文件夹的操作行为具体包括:
所述客户端通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
6.根据权利要求4所述的方法,其特征在于,所述客户端将所述操作行为和所述时间标签携带在数据操作行为信息中之后,所述方法进一步包括:
将所述数据操作行为信息缓存到本地的第二高速时序数据库中;
需要时从所述第二高速时序数据库中按顺序读取所述数据操作行为信息。
7.根据权利要求4所述的方法,其特征在于,所述客户端将所述数据操作行为信息发送给远程服务器之前,所述方法进一步包括:
所述客户端向具有自动备援功能的目录服务查询可以备份的远程服务器,获取所述远程服务器的名称与网络地址,与所述远程服务器建立网络连接。
8.一种数据同步的远程服务器,其特征在于,包括:
获取模块,用于获取客户端发送的数据操作行为信息,其中,所述数据操作行为信息中携带有客户端记录的对文件或文件夹的操作行为以及所述操作行为的时间标签;
数据同步模块,用于根据所述时间标签对本地备份的客户端数据执行所述操作行为,保持所述客户端数据与所述客户端同步。
9.根据权利要求8所述的远程服务器,其特征在于,进一步包括:
注册登记模块,用于在获取客户端发送的数据操作行为信息之前,向具有自动备援功能的目录服务注册登记所述远程服务器的名称与网络地址;
第一高速时序数据库,用于在获取客户端发送的数据操作行为信息后,按顺序缓存所述数据操作行为信息,并在需要时按顺序读取所述数据操作行为信息。
10.一种数据同步的客户端,其特征在于,包括:
记录模块,用于记录对文件或文件夹的操作行为,并为所述操作行为打上相应的时间标签,将所述操作行为和所述时间标签携带在数据操作行为信息中;
发送模块,用于将所述数据操作行为信息发送给远程服务器,使得所述远程服务器根据所述时间标签对本地备份的客户端数据执行所述操作行为,保持所述客户端数据与所述客户端同步。
11.根据权利要求10所述的客户端,其特征在于,所述记录模块具体用于:
通过在文件系统上挂载过滤驱动程序来过滤上层操作服务系统或应用程序对文件系统的调用过程,从而记录对文件或文件夹的操作行为。
12.根据权利要求10所述的客户端,其特征在于,进一步包括:
第二高速时序数据库,用于在将所述操作行为和所述时间标签携带在数据操作行为信息中之后,按顺序缓存所述数据操作行为信息,在需要时按顺序读取所述数据操作行为信息;
查询连接模块,用于在将所述数据操作行为信息发送给远程服务器之前,向具有自动备援功能的目录服务查询可以备份的远程服务器,获取所述远程服务器的名称与网络地址,与所述远程服务器建立网络连接。
13.一种数据同步系统,其特征在于,包括权利要求8至9中任一项所述的数据同步的远程服务器,以及权利要求10至12中任一项所述的数据同步的客户端。
14.一种数据同步的远程服务器,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至3中任一项所述的数据同步方法的步骤。
15.一种数据同步的客户端,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求4至7中任一项所述的数据同步方法的步骤。
16.一种数据同步系统,其特征在于,包括权利要求14所述的数据同步的远程服务器,以及权利要求15所述的数据同步的客户端。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如权利要求1至3中任一项所述的数据同步方法的步骤,和/或,实现如权利要求4至7中任一项所述的数据同步方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011441110.3A CN112231152A (zh) | 2020-12-11 | 2020-12-11 | 数据同步方法、远程服务器、客户端以及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011441110.3A CN112231152A (zh) | 2020-12-11 | 2020-12-11 | 数据同步方法、远程服务器、客户端以及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112231152A true CN112231152A (zh) | 2021-01-15 |
Family
ID=74123997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011441110.3A Pending CN112231152A (zh) | 2020-12-11 | 2020-12-11 | 数据同步方法、远程服务器、客户端以及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112231152A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242717A (zh) * | 2022-09-15 | 2022-10-25 | 四川汉唐云分布式存储技术有限公司 | 一种基于端侧计算的中心化存储系统及控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442042A (zh) * | 2013-08-14 | 2013-12-11 | 福建天晴数码有限公司 | 增量数据同步方法及系统 |
CN103685385A (zh) * | 2012-09-12 | 2014-03-26 | 中国移动通信集团公司 | 一种文件同步的方法、系统和装置 |
WO2014067452A1 (zh) * | 2012-11-05 | 2014-05-08 | 腾讯科技(深圳)有限公司 | 一种多层关联存储架构的数据同步方法、数据同步系统及存储介质 |
CN110750592A (zh) * | 2019-09-06 | 2020-02-04 | 中国平安财产保险股份有限公司 | 数据同步的方法、装置和终端设备 |
-
2020
- 2020-12-11 CN CN202011441110.3A patent/CN112231152A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103685385A (zh) * | 2012-09-12 | 2014-03-26 | 中国移动通信集团公司 | 一种文件同步的方法、系统和装置 |
WO2014067452A1 (zh) * | 2012-11-05 | 2014-05-08 | 腾讯科技(深圳)有限公司 | 一种多层关联存储架构的数据同步方法、数据同步系统及存储介质 |
CN103442042A (zh) * | 2013-08-14 | 2013-12-11 | 福建天晴数码有限公司 | 增量数据同步方法及系统 |
CN110750592A (zh) * | 2019-09-06 | 2020-02-04 | 中国平安财产保险股份有限公司 | 数据同步的方法、装置和终端设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242717A (zh) * | 2022-09-15 | 2022-10-25 | 四川汉唐云分布式存储技术有限公司 | 一种基于端侧计算的中心化存储系统及控制方法 |
CN115242717B (zh) * | 2022-09-15 | 2022-12-09 | 四川汉唐云分布式存储技术有限公司 | 一种基于端侧计算的中心化存储系统及控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100591078C (zh) | 一种网站缓存方法和一种网站缓存的装置 | |
EP3398044B1 (en) | System and method for acquiring, processing and updating global information | |
CN102637214A (zh) | 基于数据库服务间的通用数据同步方法及其系统 | |
CN108874558A (zh) | 分布式事务的消息订阅方法、电子装置及可读存储介质 | |
CN104104707A (zh) | 网页数据更新方法、终端、缓存服务器及系统 | |
CN109361525B (zh) | 重启分布式部署多服务的方法、装置、控制终端及介质 | |
CN107688611B (zh) | 一种基于saltstack的Redis键值管理系统及方法 | |
CN111159233B (zh) | 分布式缓存方法、系统、计算机设备以及存储介质 | |
CN112559475A (zh) | 数据实时捕获和传输方法及系统 | |
CN114048217A (zh) | 增量数据的同步方法和装置、电子设备和存储介质 | |
US11070635B2 (en) | Device management server and method | |
CN112231152A (zh) | 数据同步方法、远程服务器、客户端以及系统 | |
CN113158118A (zh) | 页面埋点数据采集方法、装置及系统 | |
CN112052104A (zh) | 基于多机房实现的消息队列的管理方法及电子设备 | |
CN113055203A (zh) | Sdn控制平面的异常恢复方法及装置 | |
CN116010388A (zh) | 数据校验方法、数据采集服务端及数据校验系统 | |
US11537455B2 (en) | Schema management using an event stream | |
CN112769954B (zh) | 一种web程序自动存储和自动路由的方法和系统 | |
CN115473858A (zh) | 数据传输方法和流式数据传输系统 | |
CN116391177A (zh) | 带优先级的非活动存储器设备更新 | |
CN112749142A (zh) | 句柄管理方法和系统 | |
CN113936776B (zh) | 分布式的多病种人工智能病理分析系统 | |
CN112003956B (zh) | 一种交管系统 | |
CN110972158B (zh) | 基站侧网络数据的监测装置和方法 | |
CN112015598B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210115 |
|
WD01 | Invention patent application deemed withdrawn after publication |