一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

云备份中路径冲突的处理方法、装置及电子设备与流程

2022-04-30 14:03:01 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,尤其是涉及到一种云备份中路径冲突的处理方法、装置、存储介质及电子设备。


背景技术:

2.随着网络及智能终端的普及,文件云备份功能应运而生。云备份,就是把用户文件(例如通讯录、短信、图片、文档等资料)通过云存储的方式备份在网络上。如何保证数据安全及数据准确性一直是云备份非常需要关注的技术问题。


技术实现要素:

3.有鉴于此,本技术提供了一种云备份中路径冲突的处理方法、装置、存储介质及电子设备,主要目的在于提高云备份数据安全性。
4.依据本技术的一个方面,提供了一种云备份中路径冲突的处理方法,用于从服务器下载最新文件数据到本地客户端后,在本地客户端对数据冲突进行处理,包括:对本地文件与父表进行比较,确定本地变动数据,以及,对父表和服务器表进行比较,确定服务器变动数据;根据所述本地变动数据和服务器变动数据,针对路径相同的文件或文件夹,确定是否被本地和/或服务器进行了更改,若是,确定存在路径冲突;根据更改类型,对路径冲突的文件或文件夹进行去重操作。
5.依据本技术的一个方面,提供了一种云备份中路径冲突的处理装置,用于从服务器下载最新文件数据到本地客户端后,在本地客户端对数据冲突进行处理,包括:变动数据确定单元,用于对本地文件与父表进行比较,确定本地变动数据,以及,对父表和服务器表进行比较,确定服务器变动数据;冲突确定单元,用于根据所述本地变动数据和服务器变动数据,针对路径相同的文件或文件夹,确定是否被本地和/或服务器进行了更改,若是,确定存在路径冲突;冲突处理单元,用于依据更改类型,对路径冲突的文件或文件夹进行去重操作。
6.依据本技术的一个方面,提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述的云备份中路径冲突的处理方法。
7.依据本技术的一个方面,提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述的云备份中路径冲突的处理方法。
8.借由上述技术方案,本技术提供的一种的云备份中路径冲突的处理方法、装置、存储介质及电子设备,本地变动数据和服务器变动数据的比对和判断,确定出文件更改类型为删除、新建文件或文件夹,针对不同类型的文件更改,采取对于相同路径的文件或文件夹进行去重处理。采取本技术提供的技术方案,可以保证云备份的数据的安全性。
9.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够
更明显易懂,以下特举本技术的具体实施方式。
附图说明
10.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
11.图1示出了本技术实施例提供的一种云备份中路径冲突的处理方法的实施场景示意图;
12.图2示出了本技术实施例提供的一种云备份中路径冲突的处理方法示例一流程图;
13.图3示出了本技术实施例提供的一种文件云备份流程图;
14.图4示出了本技术实施例提供的一种云备份中路径冲突的处理方法示例二流程图;
15.图5示出了本技术实施例提供的一种云备份中路径冲突的处理装置结构示意图。
具体实施方式
16.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
17.在实际应用中,有可能出现数据冲突的情况。现有文件云备份的软件(app)在冲突处理时,往往是简单地以服务器文件覆盖本地文件或者本地文件覆盖服务器文件的方式,没有对现实用户的多种冲突情况进行有针对性的处理。对于同一个id的用户,可能在不同的设备上进行文件备份,这时候就可能出现文件冲突的情况。例如,甲乙两个人(共用同一个账户id)在两个pc端同时修改a文件,或者一个用户甲同时或基本同时在两个pc端对文件a进行操作,这时同步文件,一定有一端文件数据先到达服务器,另外一端后到达服务器。这种情况下,很多云备份软件的做法是,两个pc端都以先到达服务器的数据为准。这样做的后果就是,后到达服务器的文件数据就会丢失,这样丢失用户数据的行为很可能会造成用户巨大的时间和经济损失。
18.本技术实施例提供一种云备份路径冲突处理方法,在用户客户端,通过确定本地变动数据和服务器变动数据,以这两种变动数据作为依据,对冲突进行判断和处理,从而选择保留用户当前pc端的数据还是保留服务器数据,亦或是将两份数据都保存下来,其核心目的就是保证在任何情况下用户的数据万无一失。
19.参见图1,示出了本技术实施例提供的一种云备份路径冲突处理方法的实施场景示意图。客户端侧包括多个客户端(终端),例如客户端1、客户端2、客户端3和客户端4,具体可以是手机、电脑或pad等终端,服务器侧包括至少一台服务器。用户在客户端上,通过文件云备份app进行文件云备份的操作,服务器可以是app对应的服务器,通过响应用户备份请求,将文件保存在云端。
20.参见图2,为本技术实施例提供的一种云备份路径冲突处理方法,用于从服务器下载最新文件数据到本地客户端后,在本地客户端对数据冲突进行处理,该方法包括如下步骤:
21.s201:对本地文件与父表进行比较,确定本地变动数据,以及,对父表和服务器表进行比较,确定服务器变动数据;
22.s202:根据本地变动数据和服务器变动数据,针对路径相同的文件,确定是否被本地和/或服务器进行了更改,若是,确定存在路径冲突;
23.s203:根据更改类型,对路径冲突的文件或文件夹进行去重操作。
24.对涉及的术语介绍如下:
25.fid(file id),是文件备份到云端的唯一标识,fid在用户第一次上传文件时在服务器自动生成。
26.服务器表(server表):服务器数据下发到本地存储的数据库表。
27.父表(parent表):本地文件上一次完成同步后的数据库表。
28.本地数据(local数据):本地的真实文件数据。
29.服务器变动数据(server change):服务器端对文件新增的变动。
30.本地变动数据(localchange):用户本地文件新增的变动。
31.本技术实施例中,路径冲突是指,针对路径相同的文件(fid不同),被本地或者服务器做了更改,而可能导致的数据不一致的冲突。在具体实施中,首先通过对本地文件与父表进行比较,确定本地变动数据,以及,对父表和服务器表进行比较,确定服务器变动数据;然后,通过比较本地变动数据和服务器变动数据,确定是否存在路径冲突;最后,对于路径冲突进行处理,例如,选择保留本地变动数据还是服务器变动数据,或是全部保留。
32.参见图3,示出了本技术实施例提供的一种文件云备份流程图。该文件云备份流程目的是引出本技术实施例提供的路径冲突处理方法。
33.文件云备份主流程是将服务器最新数据下载到本地server表。将server表和上一次同步的parent表进行对比,对比结果即为在上一次完成同步后服务器端修改的数据(包括新增、修改、删除文件)。本地parent表和本地文件进行对比,对比结果即为上一次完成同步后本地文件修改的数据(包括新增、修改、删除文件)。
34.s301:判断是否完成全清同步,若是,执行s302,否则,执行s303;
35.s302:重置增量时间戳,清空所有数据库(db);然后执行s305;
36.s303:是否完成全量同步,若是,执行s304,否则,执行s306:
37.s304:重置增量时间戳,清空server表;
38.s305:强制更改当前同步为全同步;
39.s306:请求服务器最新列表;
40.s307:最新列表入库server表;
41.s308:本地文件和parent表进行对比,得到本地变动数据(local change);
42.s309:server表和parent表进行对,得到服务器变动数据(severchange)
43.s310:处理路径冲突流程。
44.在对比出本地变动数据(s308)和服务器变动数据(s309)后,就需要合并本地变动与服务器变动,即对数据冲突进行处理(s310)。未冲突的变动进行正常的同步流程,本技术
实施例重点讨论路径冲突处理情况(s310)。
45.路径冲突处理,主要针对fid不同但是路径相同的文件或者文件夹,被本地或者服务器做了更改,包括但不限于以下情况:
46.(1)服务器是新增文件,本地重命名的文件路径相同。
47.(2)本地是新增文件,服务器重命名的文件路径相同。
48.(3)服务器新增文件,本地新增文件路径相同,进一步区分md5相同或不同两种情况。
49.(4)服务器是新增文件夹,本地重命名的文件路径相同。
50.(5)本地更改后是空文件,服务器修改后文件路径相同。
51.参见图4,示出了本技术实施例提供的一种云备份路径冲突处理方法示例二流程图,该示例给出了一种判断路径冲突的逻辑及处理方案。
52.s401:开始路径冲突处理流程。
53.s402:确定处理分支。对于路径冲突的处理过程,又分为三种分支,第一个分支(s403-s412)是针对本地变动数据和服务器变动数据的路径冲突处理,第二个分支(s413-s417)是针对无需同步的服务器节点,第三个分支(s418-s421)是针对无需同步的本地文件。
54.s403:第一分支。
55.s404:确定更改类型是服务器删除文件或文件夹时,丢弃服务器变动数据;然后执行s422,结束路径冲突处理流程。
56.s405:确定服务器是新建文件或文件夹,并且本地也是新建文件或文件夹操作。
57.s406:,判断本地变动数据和服务器变动数据md5值是否相同;若相同,执行s407,否则执行s408。
58.s407:若md5值相同,丢弃本地变动数据和服务器变动数据,根据服务器节点更新父表;然后执行s422,结束路径冲突处理流程。
59.若md5值不同,执行s408-s411。
60.s408:确定服务器是新建文件夹且本地是新建文件的更改类型时,保存服务器变动数据不变,且对本地变动数据的文件进行重命名;然后执行s422,结束路径冲突处理流程。
61.s409:当确定本地和服务器均是新建文件且本地新建文件为空时,进一步执行s410;
62.s410:判断父表中是否存在与服务器变动数据中相同的文件标识fid文件,若存在,则执行s411,否则执行s412。
63.s411:丢弃本地变动数据;然后执行s422,结束路径冲突处理流程。
64.s412:保存服务器变动数据不变,且对本地变动数据的文件进行重命名;然后执行s422,结束路径冲突处理流程。
65.s413:第二分支。
66.s414:获取本地所有文件,剔除本地变动数据包含的文件,得到无需同步的本地文件。
67.s415:针对所述无需同步的本地文件,遍历服务器变动数据。
68.s416:当确定服务器和本地都是新增文件或新增文件夹的更改类型时,丢弃服务器变动数据,并更新父表文件;然后执行s422,结束路径冲突处理流程。
69.s417:当确定服务器和本地不是新增文件或新增文件夹的更改类型时,保存服务器变动数据不变,对本地变动数据的文件或文件夹进行重命名;然后执行s422,结束路径冲突处理流程。
70.s418:第三分支。
71.s419:获取服务器所有节点,剔除服务器变动数据包含的节点,得到无需同步的服务器节点。
72.s420:针对所述无需同步的服务器节点,遍历本地变动数据。
73.s421:当确定本地和服务器均是新增文件或文件夹的更改类型时,丢弃本地变动数据,且更新父表;然后执行s422,结束路径冲突处理流程。
74.s422:结束路径冲突处理流程。
75.本技术实施例提供的云备份中路径冲突的处理方法,通过本地变动数据和服务器变动数据的比对和判断,确定出文件更改类型为删除、新建文件或文件夹,针对不同类型的文件更改,采取对于相同路径的文件或文件夹进行去重处理。采取本技术提供的技术方案,可以保证云备份的数据的安全性。
76.参见图5,示出了本技术实施例提供的一种云备份中路径冲突的处理装置结构示意图。该装置可位于本地客户端中,用于从服务器下载最新文件数据到本地客户端后,在本地客户端对数据冲突进行处理。
77.该装置可包括变动数据确定单元501、冲突确定单元502和冲突处理单元503,其中:变动数据确定单元501,用于对本地文件与父表进行比较,确定本地变动数据,以及,对父表和服务器表进行比较,确定服务器变动数据;冲突确定单元502,用于根据所述本地变动数据和服务器变动数据,针对路径相同的文件或文件夹,确定是否被本地和/或服务器进行了更改,若是,确定存在路径冲突;冲突处理单元503,用于依据更改类型,对路径冲突的文件或文件夹进行去重操作。
78.在一种实现方式中,所述冲突处理单元503用于,根据所述本地变动数据和服务器变动数据,当确定服务器是新建文件或文件夹且本地也是新建文件或文件夹操作时,进一步判断本地变动数据和服务器变动数据md5值是否相同;若md5值相同,丢弃本地变动数据和服务器变动数据,根据服务器节点更新父表;若md5值不同,进一步根据服务器和本地的更改类型确定去重操作。
79.在一种实现方式中,所述冲突处理单元503用于,根据所述本地变动数据和服务器变动数据,当确定服务器是新建文件且本地是新建文件夹的更改类型时,向服务器请求对服务器变动数据的文件进行重命名。
80.在一种实现方式中,所述冲突处理单元503用于,根据所述本地变动数据和服务器变动数据,当确定服务器是新建文件夹且本地是新建文件的更改类型时,保存服务器变动数据不变,且对本地变动数据的文件进行重命名。
81.在一种实现方式中,所述冲突处理单元503用于,根据所述本地变动数据和服务器变动数据,当确定本地和服务器均是新建文件且本地新建文件为空时,进一步判断父表中是否存在与服务器变动数据中相同的文件标识fid文件,若存在,则丢弃本地变动数据,若
不存在,保存服务器变动数据不变,且对本地变动数据的文件进行重命名。
82.在一种实现方式中,所述冲突处理单元503用于,根据所述本地变动数据和服务器变动数据,当确定服务器是删除文件或文件夹的更改类型时,丢弃服务器变动数据。
83.在一种实现方式中,所述冲突处理单元503用于,获取本地所有文件,剔除本地变动数据包含的文件,得到无需同步的本地文件;以及,获取服务器所有节点,剔除服务器变动数据包含的节点,得到无需同步的服务器节点。
84.在一种实现方式中,所述冲突处理单元503用于,针对所述无需同步的本地文件,遍历服务器变动数据;当确定服务器和本地都是新增文件或新增文件夹的更改类型时,丢弃服务器变动数据,并更新父表文件;当确定服务器和本地不是新增文件或新增文件夹的更改类型时,保存服务器变动数据不变,对本地变动数据的文件或文件夹进行重命名。
85.在一种实现方式中,所述冲突处理单元503用于,针对所述无需同步的服务器节点,遍历本地变动数据;当确定本地和服务器均是新增文件或文件夹的更改类型时,丢弃本地变动数据,且更新父表。
86.本技术的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
87.可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
88.(1)对本地文件与父表进行比较,确定本地变动数据,以及,对父表和服务器表进行比较,确定服务器变动数据;
89.(2)根据所述本地变动数据和服务器变动数据,针对路径相同的文件或文件夹,确定是否被本地和/或服务器进行了更改,若是,确定存在路径冲突;
90.(3)根据更改类型,对路径冲突的文件或文件夹进行去重操作。
91.可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read-only memory,简称为rom)、随机存取存储器(random access memory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
92.本技术的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
93.可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
94.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
95.(1)对本地文件与父表进行比较,确定本地变动数据,以及,对父表和服务器表进行比较,确定服务器变动数据;
96.(2)根据所述本地变动数据和服务器变动数据,针对路径相同的文件或文件夹,确定是否被本地和/或服务器进行了更改,若是,确定存在路径冲突;
97.(3)根据更改类型,对路径冲突的文件或文件夹进行去重操作。
98.可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
99.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
100.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
101.在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
102.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
103.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
104.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
105.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献