数据同步方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:28837256 阅读:12 留言:0更新日期:2021-06-11 23:34
数据同步方法、装置、电子设备及可读存储介质。本公开涉及一种数据同步方法,涉及云计算领域。该方法包括:获取本地文件列表和预设的至少一种同步类型;监测本地文件列表中的文件是否发生了与任一种所述同步类型对应的变动,若是,将所述文件确定为目标文件;将所述目标文件与云端服务器中的文件进行比对,以确定所述目标文件是否为待同步文件;根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步。通过本公开的数据同步方法,能够减少人工操作,避免浪费人力资源并且提升同步的及时性。

【技术实现步骤摘要】
数据同步方法、装置、电子设备及可读存储介质
本公开实施例涉及数据同步
,更具体地,涉及一种数据同步方法、装置、电子设备及可读存储介质。
技术介绍
目前,市场上的本地数据同步至云端的方法主要包括两种,数据离线拷贝是通过磁盘拷贝本地数据,再同步至云端机房,实现本地数据与云端的同步,或者由人工通过在线迁移工具进行本地数据和云端的实时同步。但由于离线数据拷贝时间长,数据离线迁移不及时,以及在线迁移工具实现数据同步必须通过人工提交同步任务,浪费人力资源,并且也无法实现本地数据实时同步至云端。因此,有必要提供一种能够实现本地数据实时同步至云端的技术方案。
技术实现思路
本公开实施例的一个目的是提供一种数据同步方法的新的技术方案。根据本公开的第一方面,提供了一种数据同步方法,通过安装在本地设备上的同步客户端执行,所述方法包括:获取本地文件列表和预设的至少一种同步类型;监测本地文件列表中的文件是否发生了与任一种所述同步类型对应的变动,若是,将所述文件确定为目标文件;将所述目标文件与云端服务器中的文件进行比对,以确定所述目标文件是否为待同步文件;根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步。可选地,所述根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步,包括:在所述待同步文件的同步类型为新增类型或者修改类型的情况下,调用上传接口将所述待同步文件上传到所述云端服务器中;<br>在所述待同步文件的同步类型为删除类型的情况下,调用删除接口将所述云端服务器中与所述待同步文件对应的文件删除。可选地,所述在所述待同步文件的同步类型为新增类型或者修改类型的情况下,调用上传接口将所述待同步文件上传到所述云端服务器中,包括:在所述待同步文件的同步类型为新增类型或者修改类型的情况下,创建与所述待同步文件对应的上传任务并且加入至上传任务队列中;调用上传接口通过异步方式执行所述上传任务队列中的上传任务。可选地,所述根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步,包括:在所述待同步文件的同步类型为新增类型或者修改类型的情况下,确定所述待同步文件的大小是否大于预设的阈值;在所述待同步文件的大小大于所述阈值的情况下,对所述待同步文件进行分片以得到小于等于所述阈值的多个文件片段;将多个所述文件片段分别通过上传请求上传到所述云端服务器中;其中,所述上传请求的请求头中含有所述文件片段的分片号和散列值,以供所述云端服务器校验接收到的文件片段的散列值和所述请求头中的散列值是否一致以及在不一致的情况下进行上传失败响应;在接收到所述云端服务器的上传失败响应时,从所述上传失败响应中获取分片号作为重传分片号,通过上传请求将所述重传分片号对应的文件片段上传到所述云端服务器中。可选地,所述根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步,包括:在所述待同步文件的同步类型为新增类型或者修改类型的情况下,确定所述待同步文件的大小是否大于预设的阈值;在所述待同步文件的大小小于等于所述阈值的情况下,发起上传请求将所述待同步文件上传到所述云端服务器中;其中,所述上传请求的请求头中含有所述待同步文件的散列值,以供所述云端服务器校验接收到的文件的散列值和所述请求头中的散列值是否一致以及在不一致的情况下进行上传失败响应;在接收到所述云端服务器的上传失败响应时,再次发起上传请求将所述待同步文件上传到所述云端服务器中。可选地,所述方法还包括:在所述同步操作执行失败的情况下生成错误日志;根据所述错误日志确定失败原因;在失败原因为本机资源不足的情况下,提示用户关闭非必要进程以及在用户关闭非必要进程后重新进行所述同步操作;或,在失败原因为安装在所述云端服务器不可用时,在预设时间间隔后重新进行所述同步操作;或,在失败原因为网络抖动的情况下,重新进行所述同步操作。可选地,在获取本地文件列表之前,所述方法还包括:接收配置指令,所述配置指令中包括文件筛选规则;根据所述文件筛选规则生成所述本地文件列表。根据本公开的第二方面,提供了一种数据同步装置,该装置包括:监测单元,用于监测本地文件列表中的文件是否发生了与任一预设的同步类型对应的变动,若是,将所述文件确定为目标文件;比对单元,用于将所述目标文件与云端服务器中的文件进行比对,以确定所述目标文件是否为待同步文件;同步单元,用于根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步。根据本公开的第三方面,提供了一种电子设备,该电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面所述的数据同步方法的步骤。根据本公开的第四方面,提供了一种可读存储介质,该可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一项所述数据同步方法的步骤。本公开实施例的一个有益效果在于,通过安装在本地设备上的同步客户端对本地文件列表进行监控,当发现本地文件列表中的文件发生了与任一种预设同步类型对应的变动时,进一步与云端服务器中的文件进行比对,以确定出需要同步的待同步文件,然后根据待同步文件的同步类型执行相应的同步操作,利用该方法,在用户根据其需求设置好同步类型之后,就可以自动检测到需要同步的文件并且进行对应的同步操作,能够减少人工操作,避免浪费人力资源并且提升同步的及时性。通过以下参照附图对本专利技术的示例性实施例的详细描述,本专利技术的其它特征及其优点将会变得清楚。附图说明被结合在说明书中并构成说明书的一部分的附图示出了本专利技术的实施例,并且连同其说明一起用于解释本专利技术的原理。图1是本公开实施例的数据同步方法的实施环境和能够实施该方法的系统组成结构的示意图;图2是本公开实施例的数据同步方法的流程示意图;图3是本公开实施例的数据同步装置的结构示意图;图4是本公开实施例的电子设备的结构示意图。具体实施方式现在将参照附图来详细描述本专利技术的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本专利技术的范围。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本专利技术及其应用或使用的任何限制。对于相关领域普通技术人物已知的技术、方法和设备可能不作详细讨论,但在适当情况下,技术、方法和设备应当被视为说明书的一部分。在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。应注意到:相似的标号本文档来自技高网...

【技术保护点】
1.一种数据同步方法,其特征在于,通过安装在本地设备上的同步客户端执行,所述方法包括:/n获取本地文件列表和预设的至少一种同步类型;/n监测本地文件列表中的文件是否发生了与任一种所述同步类型对应的变动,若是,将所述文件确定为目标文件;/n将所述目标文件与云端服务器中的文件进行比对,以确定所述目标文件是否为待同步文件;/n根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步。/n

【技术特征摘要】
1.一种数据同步方法,其特征在于,通过安装在本地设备上的同步客户端执行,所述方法包括:
获取本地文件列表和预设的至少一种同步类型;
监测本地文件列表中的文件是否发生了与任一种所述同步类型对应的变动,若是,将所述文件确定为目标文件;
将所述目标文件与云端服务器中的文件进行比对,以确定所述目标文件是否为待同步文件;
根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步。


2.根据权利要求1所述的方法,其特征在于,所述根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步,包括:
在所述待同步文件的同步类型为新增类型或者修改类型的情况下,调用上传接口将所述待同步文件上传到所述云端服务器中;
在所述待同步文件的同步类型为删除类型的情况下,调用删除接口将所述云端服务器中与所述待同步文件对应的文件删除。


3.根据权利要求2所述的方法,其特征在于,所述在所述待同步文件的同步类型为新增类型或者修改类型的情况下,调用上传接口将所述待同步文件上传到所述云端服务器中,包括:
在所述待同步文件的同步类型为新增类型或者修改类型的情况下,创建与所述待同步文件对应的上传任务并且加入至上传任务队列中;
调用上传接口通过异步方式执行所述上传任务队列中的上传任务。


4.根据权利要求1所述的方法,其特征在于,所述根据所述待同步文件的同步类型执行对应的同步操作,以实现所述云端服务器对所述待同步文件的同步,包括:
在所述待同步文件的同步类型为新增类型或者修改类型的情况下,确定所述待同步文件的大小是否大于预设的阈值;
在所述待同步文件的大小大于所述阈值的情况下,对所述待同步文件进行分片以得到小于等于所述阈值的多个文件片段;
将多个所述文件片段分别通过上传请求上传到所述云端服务器中;其中,所述上传请求的请求头中含有所述文件片段的分片号和散列值,以供所述云端服务器校验接收到的文件片段的散列值和所述请求头中的散列值是否一致以及在不一致的情况下进行上传失败响应;
在接收到所述云端服务器的上传失败响应时,从所述上传失败响应中获取分片号作为重传分片号,通过上传请求将所述重传分片号对应的文件片段上传到所述云端服务器中。


5.根据权利要求1所述的方法,其...

【专利技术属性】
技术研发人员:张健
申请(专利权)人:北京金山云网络技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1