数据备份方法及电子设备与流程

文档序号:31468072发布日期:2022-09-09 22:14阅读:87来源:国知局
数据备份方法及电子设备与流程

1.本技术涉及云计算技术领域,尤其涉及一种数据备份方法及电子设备。


背景技术:

2.物联网(internet of things,iot)是互联网基础上的延伸和扩展的网络,将各种设备与网络结合起来而形成的一个巨大网络,实现任何时间、任何地点,人、机、物的互联互通。物联网中通常需要将各种设备采集到的数据推送到云端进行保存、分析和管理。
3.物联网边缘计算可以通过边缘服务器在互联网边缘实行数据解决和分析,更贴近数据源。边缘服务器向云端推送云计算所需的信息内容而不是初始数据,有利于节约互联网基础设施建设和云基础设施建设资源。当边缘服务器发生故障时,需要从云端获取数据以实现数据恢复,云端需要进行数据备份,数据备份不全会影响边缘服务器的数据恢复,但是,频繁的数据备份又会造成资源损耗。


技术实现要素:

4.本技术实施例提供一种数据备份方法及电子设备,以避免频繁的数据备份造成的资源损耗。
5.第一方面,本技术实施例提供了一种数据备份方法,方法应用于云服务器,方法包括:
6.确定未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时;
7.在第一预估数据恢复耗时超过预设时间阈值的情况下,获取未备份数据对应的待备份数据并进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
8.第二方面,本技术实施例提供了一种数据备份方法,方法应用于边缘服务器,方法包括:
9.在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时超过预设时间阈值的情况下,确定未备份数据对应的待备份数据;
10.将待备份数据发送至云服务器,以使云服务器对待备份数据进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
11.第三方面,本技术实施例提供了一种数据备份装置,包括:
12.确定模块,用于确定未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时;
13.备份模块,用于在第一预估数据恢复耗时超过预设时间阈值的情况下,获取未备份数据对应的待备份数据并进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
14.第四方面,本技术实施例提供了一种数据备份装置,包括:
15.确定模块,用于在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗
时超过预设时间阈值的情况下,确定未备份数据对应的待备份数据;
16.发送模块,用于将待备份数据发送至云服务器,以使云服务器对待备份数据进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
17.第五方面,本技术实施例提供一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,处理器在执行计算机程序时实现本技术任一实施例提供的方法。
18.第六方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本技术任一实施例提供的方法。
19.与现有技术相比,本技术具有如下优点:
20.本技术实施例提供的数据备份方法及电子设备,在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时超过预设时间阈值的情况下,云服务器从边缘服务器获取未备份数据对应的待备份数据并进行备份,在满足边缘服务器的数据恢复需求的同时,可以减少备份次数,降低频繁备份造成的资源损耗。另外,采用本技术实施例进行数据备份,可以减少数据恢复时间。
21.上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本技术进一步的方面、实施方式和特征将会是容易明白的。
附图说明
22.在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本技术公开的一些实施方式,而不应将其视为是对本技术范围的限制。
23.图1为本技术一实施例提供的数据备份方法的应用场景的示意图;
24.图2为本技术一实施例提供的数据备份方法的流程图;
25.图3为本技术一实施例提供的数据备份方法的流程图;
26.图4为本技术一实施例提供的数据备份方法的示意图;
27.图5为本技术一实施例提供的数据备份装置的示意图;
28.图6为本技术一实施例提供的数据备份装置的示意图;
29.图7为用来实现本技术实施例的电子设备的框图。
具体实施方式
30.在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本技术的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
31.为便于理解本技术实施例的技术方案,以下对本技术实施例的相关技术进行说明,以下相关技术作为可选方案与本技术实施例的技术方案可以进行任意结合,其均属于本技术实施例的保护范围。
32.为了更清楚地展示本技术实施例中提供的数据备份方法,首先介绍可用于实现该方法的应用场景。
33.图1为本技术一实施例提供的数据备份方法的应用场景的示意图。图1中所示的云
服务器可以是云计算平台提供的可以实现相应的存储和计算功能的虚拟服务器,是物理服务器的虚拟化形式,虚拟服务器运行在物理服务器上。云服务器接收物联网设备发送的数据并存储,然后下发到边缘服务器,边缘服务器可以是实现相应服务功能的本地服务器,接收云服务器下发的数据,并进行计算,得到计算之后的数据上传到云服务器进行备份,数据备份的时机可以由云服务器来确定,云服务器定期计算未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时,在第一预估数据恢复耗时超过预设时间阈值的情况下,向边缘服务器发送数据备份指令,边缘服务器从计算之后的数据中确定待备份数据,发送到云服务器进行备份。在边缘服务器发生故障时,云服务器将当前的备份数据下发到边缘服务器,边缘服务器进行数据恢复。如果当前存在未备份数据,则对于未备份的数据,边缘服务器需要进行计算和存储,之后才能恢复。对于已备份的数据,由于是边缘服务器计算之后才上传到云服务器的,因此不需要再次进行计算,可以直接进行恢复,边缘服务器进行数据恢复之后,向物联网设备发送控制指令,为用户提供相应的服务。
34.例如,边缘服务器可以是物业管理一体机,面向园区、社区、校园等多种业态空间,提供面部识别通行、二维码通行、刷卡通行等服务。以面部识别为例,物联网设备采集面部图像,上传到云服务器,云服务器进行存储,并下发到物业管理一体机,物业管理一体机提取面部图像的特征数据,并与可通行人员的特征数据库中的特征进行匹配,如果匹配成功,则向物联网设备发送控制指令,控制物联网设备开启闸机放行。云服务器定期计算未备份面部图像和已备份面部图像在物业管理一体机的第一预估数据恢复耗时,在第一预估数据恢复耗时超过预设时间阈值的情况下,向物业管理一体机发送数据备份指令,物业管理一体机从计算之后的面部图像的特征数据中确定待备份数据,发送到云服务器进行备份。在物业管理一体机发生故障需要替换时,云服务器将当前的备份数据下发到新的物业管理一体机进行数据恢复。
35.本技术实施例提供了一种数据备份方法,图2是本技术一实施例的数据备份方法的流程图,该方法可以应用于数据备份装置,该装置可以部署于云服务器或其它处理设备中。在一些可能的实现方式中,该方法还可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。如图2所示,该方法包括:
36.步骤s201,确定未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时。
37.本实施例中的方法可以部署于云服务器。其中,未备份数据为云服务器接收到的物联网设备发送的数据,这些数据已经通过云服务器下发到边缘服务器,还没有在云服务器进行备份。已备份数据为云服务器下发到边缘服务器,经过边缘服务器的计算之后,上传到云服务器进行备份的数据。其中涉及到的计算可以是特征提取等计算方式,例如,云服务器将面部图像下发到边缘服务器,边缘服务器进行特征提取,得到面部图像的特征数据,上传到云服务器进行备份。
38.其中,云服务器按照预设时间周期确定第一预估数据恢复耗时,第一预估数据恢复耗时包括未备份数据在边缘服务器的恢复耗时和已备份数据在边缘服务器的恢复耗时之和。云服务器可以通过多种方式确定未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时,本实施例对此不作限定。
39.步骤s202,在第一预估数据恢复耗时超过预设时间阈值的情况下,获取未备份数
据对应的待备份数据并进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
40.预设时间阈值可以是用户预先设置的边缘服务器数据恢复的时间目标(recovery time objective,rto),将第一预估数据恢复耗时与预设时间阈值进行比较,如果第一预估数据恢复耗时超过预设时间阈值,超过可以是大于或者等于,则云服务器向边缘服务器发送数据备份指令,边缘服务器从已存储数据中确定出待备份数据,待备份数据为边缘服务器将未备份数据进行计算得到的数据,例如,未备份数据为面部图像,待备份数据可以为对面部图像提取特征得到的特征数据。边缘服务器将待备份数据上传到云服务器进行备份,当边缘服务器发生故障或者需要替换时,云服务器将当前的备份数据发送到边缘服务器进行数据恢复。
41.相关技术中,云服务器存储物联网设备发送的数据,当边缘服务器发生故障时,云服务器将存储的全量数据发送到边缘服务器,边缘服务器对全量数据都要进行计算,然后才能进行恢复,在数据量较大时,计算耗时较长,边缘服务器资源占用率高,数据恢复较慢。例如,当面部图像从云端下发后,边缘服务器需要大量计算提取其特征值后才能使用。对于一个中等规模的小区来说,面部特征值库的重建也需要耗费数个小时。
42.本技术实施例提供的数据备份方法,在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时超过预设时间阈值的情况下,云服务器从边缘服务器获取未备份数据对应的待备份数据并进行备份,在满足边缘服务器的数据恢复需求的同时,可以减少备份次数,降低频繁备份造成的资源损耗。另外,由于待备份数据是未备份数据经过计算得到的,而不是直接对未备份数据进行备份,在边缘服务器进行数据恢复时,对于云服务器下发的备份数据,不再需要对数据重新进行计算,可以直接进行恢复,从而减少数据恢复时间。
43.其中,确定第一预估数据恢复耗时的具体实现方式见如下实施例:
44.在一种可能的实现方式中,步骤s201,确定未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时,包括:步骤s2011,从边缘服务器获取未备份数据的预估计算耗时、预估存储耗时、以及预估网络带宽;步骤s2012,基于预估计算耗时、预估存储耗时、预估网络带宽、以及已备份数据的数据量,确定第一预估数据恢复耗时。
45.其中,未备份数据需要边缘服务器进行计算和存储,才能进行数据恢复,因此,需要从边缘服务器获取到未备份数据的预估计算耗时和预估存储耗时,从而得到未备份数据的恢复耗时。其中,预估计算耗时和预估存储耗时,边缘服务器可以通过移动平均法计算得到。云服务器基于预估计算耗时和预估存储耗时可以得到未备份数据的恢复耗时,基于预估网络带宽和已备份数据的数据量,可以得到已备份数据的恢复耗时,将未备份数据的恢复耗时和已备份数据的恢复耗时求和,可以得到第一预估数据恢复耗时。
46.其中,步骤s2012的具体实现方式见如下实施例:
47.在一种可能的实现方式中,步骤s2012,基于预估计算耗时、预估存储耗时、预估网络带宽、以及已备份数据的数据量,确定第一预估数据恢复耗时,还包括:基于预估计算耗时、预估存储耗时、以及调整参数,确定未备份数据的恢复耗时;调整参数是基于未备份数据中的多个类别的数据是否需要备份确定的;基于预估网络带宽和已备份数据的数据量,确定已备份数据的恢复耗时;基于未备份数据的恢复耗时和已备份数据的恢复耗时,确定第一预估数据恢复耗时。
48.本实施例中,未备份数据中可以包括多个类别的数据,有些类别的数据需要进行备份,例如,面部图像的特征数据。有些类型的数据不需要进行备份,例如,实时生成的二维码、验证码等。云服务器通过预先设置的调整参数来确定是否需要计算各类别数据对应的恢复耗时。
49.在一示例中,通过以下公式计算第一预估数据恢复耗时:
[0050][0051]
其中,predicttime表示第一预估数据恢复耗时,i表示数据类别,αi表示第i类别数据对应的调整参数,对于未备份数据中的需要进行备份的类别的数据,αi的初始化值可以为1,对于未备份数据中的不需要进行备份的类别的数据,αi的初始化值可以为0,computecosti表示第i类别数据的单位计算耗时,storecosti表示第i类别数据的单位存储耗时,newdatacounti表示第i类别数据当前的数据总量,olddatacounti表示第i类别数据已备份的数据总量,newdatacount
i-olddatacounti得到第i类别数据未备份的数据总量,backupsize表示已备份数据的数据量,bandwidth表示预估网络带宽。
[0052]
在一种可能的实现方式中,该方法还包括:
[0053]
从边缘服务器获取实际数据恢复耗时,将实际数据恢复耗时和第一预估数据恢复耗时进行比对计算,利用计算结果对调整参数进行更新。
[0054]
在实际应用中,云服务器还可以通过从边缘服务器获取实际数据恢复耗时,对调整参数进行更新,使得采用更新后的调整参数计算得到的第一预估数据恢复耗时更加准确。
[0055]
在一示例中,通过以下公式计算更新后的调整参数:
[0056][0057]
其中,αi′
表示更新后的调整参数,αi表示调整参数,actualrecoverytime表示实际数据恢复耗时,predicttime表示第一预估数据恢复耗时。
[0058]
在一种可能的实现方式中,该方法还包括:
[0059]
基于边缘服务器发送的当前的备份数据的数据量和预估网络带宽,确定当前的备份数据在边缘服务器的第二预估数据恢复耗时;当前的备份数据包括增量备份数据和已备份数据;在第二预估数据恢复耗时超过预设时间阈值的情况下,生成预设时间阈值的更新提示信息并发送至边缘服务器,更新提示信息包括更新后的预设时间阈值。
[0060]
本实施例中,对未备份数据备份完成以后,暂时不存在未备份数据,均为已备份数据,根据当前备份数据的数据量和预估网络带宽,可以得到当前的预估数据恢复耗时,第二预估数据恢复耗时为当前均为已备份数据的情况下的数据恢复耗时。如果当前预估数据恢复耗时还是超过预设时间阈值,则表明边缘服务器的硬件环境无法满足要求的数据恢复时间,则对预设时间阈值需要进行调整,云服务器生成预设时间阈值的更新提示信息并发送至边缘服务器,用于提示对预设时间阈值进行更新,更新提示信息包括更新后的预设时间阈值,更新后的预设时间阈值可以基于第二预设数据恢复耗时来确定。本实施例中,通过对预设时间阈值进行更新,可以得到更加优化的预设时间阈值。
[0061]
在一种可能的实现方式中,该方法还包括:
[0062]
在边缘服务器发生故障,且边缘服务器存储的数据未丢失的情况下,接收边缘服务器发送的第一故障事件;将当前的未备份数据和已下发至边缘服务器的数据进行比对,将差量数据发送至边缘服务器,以使边缘服务器根据差量数据进行数据恢复。
[0063]
在实际应用中,如果边缘服务器发生故障,重启边缘服务器的应用程序,边缘服务器校验存储的数据的完整性和有效性,如果是电源故障、软件异常等场景,则数据一般不会丢失,则向云服务器发送故障事件,故障事件中可以包括故障类型等信息,云服务器根据故障类型可以确定是第一故障事件,则将当前的未备份数据和已下发至边缘服务器的数据进行比对,得到差量数据,即没有下发到边缘服务器的数据,由于此时边缘服务器存储的数据未丢失,因此,将差量数据发送到边缘服务器即可,边缘服务器对差量数据进行计算和存储,实现数据恢复,数据恢复之后可以继续为用户提供相应的功能。
[0064]
在一种可能的实现方式中,该方法还包括:
[0065]
在边缘服务器发生故障,且边缘服务器存储的数据已丢失的情况下,接收边缘服务器发送的第二故障事件;将当前的未备份数据和当前的已备份数据发送至边缘服务器,以用于边缘服务器根据当前的未备份数据和当前的已备份数据进行数据恢复。
[0066]
在实际应用中,如果边缘服务器发生故障,在进行数据校验时,如果数据已丢失,例如,硬件故障等场景,云服务器根据故障事件中的故障类型可以确定是第二故障事件,则云服务器创建数据恢复任务,发送到边缘服务器,边缘服务器从云服务器拉取已备份数据并进行本地存储,云服务器根据数据备份的时间戳,确定出当前的未备份数据,下发到边缘服务器,边缘服务器对未备份数据进行计算和存储,实现未备份数据的恢复。对于已备份的数据,由于是之前计算完上传到云服务器进行备份的,因此不需要再次进行计算,可以直接进行恢复。
[0067]
其中,相关技术中,云服务器直接将物联网设备发送的数据进行备份,当边缘服务器发生故障时,云服务器将未备份数据和已备份数据发送到边缘服务器,边缘服务器对未备份数据和已备份数据都要进行计算,然后才能进行恢复,在数据量较大时,计算耗时较长,数据恢复较慢。本技术实施例中,对于已备份数据,直接进行数据恢复,可以减少数据恢复时间。
[0068]
在一种可能的实现方式中,获取未备份数据对应的待备份数据,包括:
[0069]
向边缘服务器发送数据备份指令,以使边缘服务器确定未备份数据对应的待备份数据;接收边缘服务器发送的待备份数据。
[0070]
在实际应用中,在第一预估数据恢复耗时超过预设时间阈值的情况下,云服务器向边缘服务器发送数据备份指令,边缘服务器从存储的数据中确定出未备份数据对应的待备份数据,具体实现方式可以是,边缘服务器通过基于内容分块(content-defined chunking,cdc)算法从存储的数据中确定出未备份数据对应的待备份数据,对待备份数据进行分块,计算每个分块数据的指纹,生成待备份数据的索引文件,将待备份数据进行加密,并发送到云服务器进行备份,并在云服务器存储待备份数据的索引文件。本实施例中,通过cdc算法可以计算出未备份数据对应的待备份数据,计算结果准确性较高。
[0071]
本技术实施例提供了一种数据备份方法,图3是本技术一实施例的数据备份方法的流程图,该方法可以应用于数据备份装置,该装置可以部署于边缘服务器或其它处理设备中。在一些可能的实现方式中,该方法还可以通过处理器调用存储器中存储的计算机可
读指令的方式来实现。如图3所示,该方法包括:
[0072]
步骤s301,在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时超过预设时间阈值的情况下,确定未备份数据对应的待备份数据;
[0073]
本实施例中的方法可以部署于边缘服务器。其中,未备份数据为云服务器接收到的物联网设备发送的数据,这些数据已经通过云服务器下发到边缘服务器,还没有在云服务器进行备份。已备份数据为云服务器下发到边缘服务器,经过边缘服务器的计算之后,上传到云服务器进行备份的数据。其中涉及到的计算可以是特征提取等计算方式,例如,云服务器将面部图像下发到边缘服务器,边缘服务器进行特征提取,得到面部图像的特征数据,上传到云服务器进行备份。
[0074]
其中,云服务器按照预设时间周期确定第一预估数据恢复耗时,第一预估数据恢复耗时包括未备份数据在边缘服务器的恢复耗时和已备份数据在边缘服务器的恢复耗时之和。
[0075]
预设时间阈值可以是用户预先设置的边缘服务器数据恢复的时间目标(recovery time objective,rto),将第一预估数据恢复耗时与预设时间阈值进行比较,如果第一预估数据恢复耗时超过预设时间阈值,超过可以是大于或者等于,则云服务器向边缘服务器发送数据备份指令,边缘服务器从已存储数据中确定出待备份数据,待备份数据为边缘服务器将未备份数据进行计算得到的数据,例如,未备份数据为面部图像,待备份数据可以为对面部图像提取特征得到的特征数据。
[0076]
步骤s302,将待备份数据发送至云服务器,以使云服务器对待备份数据进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
[0077]
在第一预估数据恢复耗时超过预设时间阈值的情况下,边缘服务器接收云服务器发送的数据备份指令,边缘服务器从存储的数据中确定出未备份数据对应的待备份数据,具体实现方式可以是,边缘服务器通过基于内容分块(content-defined chunking,cdc)算法从存储的数据中确定出未备份数据对应的待备份数据,对待备份数据进行分块,计算每个分块数据的指纹,生成待备份数据的索引文件,将待备份数据进行加密,并发送到云服务器进行备份,并在云服务器存储待备份数据的索引文件。当边缘服务器发生故障或者需要替换时,云服务器将当前的备份数据发送到边缘服务器进行数据恢复。
[0078]
本技术实施例提供的数据备份方法,在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时超过预设时间阈值的情况下,边缘服务器确定未备份数据对应的待备份数据,并发送到云服务器进行备份,在满足边缘服务器的数据恢复需求的同时,可以减少备份次数,降低频繁备份造成的资源损耗。另外,采用本技术技术方案进行数据备份,可以减少数据恢复时间。
[0079]
在一种可能的实现方式中,未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时是通过以下方式确定的:
[0080]
获取未备份数据的预估计算耗时、预估存储耗时、预估网络带宽,并发送至云服务器,以使云服务器基于预估计算耗时、预估存储耗时、预估网络带宽以及已备份数据的数据量,确定第一预估数据恢复耗时。
[0081]
其中,未备份数据需要边缘服务器进行计算和存储,才能进行数据恢复,因此,边缘服务器获取到未备份数据的预估计算耗时和预估存储耗时,从而得到未备份数据的恢复
耗时。其中,预估计算耗时和预估存储耗时,边缘服务器可以通过移动平均法计算得到。边缘服务器将预估计算耗时、预估存储耗时、预估网络带宽发送至云服务器,云服务器基于预估计算耗时和预估存储耗时可以得到未备份数据的恢复耗时,基于预估网络带宽和已备份数据的数据量,可以得到已备份数据的恢复耗时,将未备份数据的恢复耗时和已备份数据的恢复耗时求和,可以得到第一预估数据恢复耗时。
[0082]
在一种可能的实现方式中,该方法还包括:
[0083]
获取当前的备份数据的数据量和预估网络带宽,并发送至云服务器,以使云服务器确定当前的备份数据在边缘服务器的第二预估数据恢复耗时;当前的备份数据包括增量备份数据和已备份数据;在第二预估数据恢复耗时超过预设时间阈值的情况下,接收云服务器生成预设时间阈值的更新提示信息,更新提示信息包括更新后的预设时间阈值。
[0084]
本实施例中,对未备份数据备份完成以后,暂时不存在未备份数据,均为已备份数据。边缘服务器获取当前的备份数据的数据量和预估网络带宽,并发送至云服务器,云服务器根据当前备份数据的数据量和预估网络带宽,可以得到当前的预估数据恢复耗时,第二预估数据恢复耗时为当前均为已备份数据的情况下的数据恢复耗时。如果当前预估数据恢复耗时还是超过预设时间阈值,则表明边缘服务器的硬件环境无法满足要求的数据恢复时间,则对预设时间阈值需要进行调整,云服务器生成预设时间阈值的更新提示信息并发送至边缘服务器,用于提示对预设时间阈值进行更新,更新提示信息包括更新后的预设时间阈值,更新后的预设时间阈值可以基于第二预设数据恢复耗时来确定。本实施例中,通过对预设时间阈值进行更新,可以得到更加优化的预设时间阈值。
[0085]
在一种可能的实现方式中,该方法还包括:
[0086]
在边缘服务器发生故障,且边缘服务器存储的数据未丢失的情况下,向云服务器发送第一故障事件;接收云服务器发送的差量数据,差量数据是云服务器将当前的未备份数据和已下发的数据进行比对得到的;根据差量数据进行数据恢复。
[0087]
在实际应用中,如果边缘服务器发生故障,重启边缘服务器的应用程序,边缘服务器校验存储的数据的完整性和有效性,如果是电源故障、软件异常等场景,则数据一般不会丢失,则边缘服务器向云服务器发送故障事件,故障事件中可以包括故障类型等信息,云服务器根据故障类型可以确定是第一故障事件,则将当前的未备份数据和已下发至边缘服务器的数据进行比对,得到差量数据,即没有下发到边缘服务器的数据,由于此时边缘服务器存储的数据未丢失,因此,将差量数据发送到边缘服务器即可,边缘服务器对差量数据进行计算和存储,实现数据恢复,数据恢复之后可以继续为用户提供相应的功能。
[0088]
在一种可能的实现方式中,该方法还包括:
[0089]
在边缘服务器发生故障,且边缘服务器存储的数据已丢失的情况下,向云服务器发送第二故障事件;从云服务器获取当前的未备份数据和当前的已备份数据,根据当前的未备份数据和当前的已备份数据进行数据恢复。
[0090]
在实际应用中,如果边缘服务器发生故障,在进行数据校验时,如果数据已丢失,例如,硬件故障等场景,云服务器根据故障事件中的故障类型可以确定是第二故障事件,则云服务器创建数据恢复任务,发送到边缘服务器,边缘服务器从云服务器拉取已备份数据并进行本地存储,云服务器根据数据备份的时间戳,确定出当前的未备份数据,下发到边缘服务器,边缘服务器对未备份数据进行计算和存储,实现未备份数据的恢复。对于已备份的
数据,由于是之前计算完上传到云服务器进行备份的,因此不需要再次进行计算,可以直接进行恢复。
[0091]
图4是本技术一实施例的数据备份方法的示意图。本实施例中,边缘服务器可以是物业管理一体机,权限数据可以是面部图像、二维码数据、通行卡数据等。云服务器通过权限管理模块从物联网设备得到权限数据,进行权限下发,通过权限推送模块将权限数据推送到边缘服务器,通行权限本地认证和管理模块将云服务器发送的权限数据写入本地存储模块,同时,也可以从本地存储模块读取权限数据,通过本地计算模块对权限数据进行计算,例如,对面部图像进行特征值提取等。利用提取的特征值来确定是否和已有数据库中的特征值进行比对,如果匹配则放行。在云服务器确定未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时的情况下,备份任务管理模块向边缘服务器发送数据备份任务,边缘服务器通过待备份数据确定模块确定未备份数据对应的待备份数据,对待备份数据进行分块,并生成分块数据的指纹,利用指纹生成索引文件,将待备份数据上传到云服务器中的数据存储模块进行备份,将待备份数据的索引文件在备份索引管理模块进行存储。
[0092]
在边缘服务器发生故障,且边缘服务器存储的数据未丢失的情况下,云服务器接收边缘服务器发送的第一故障事件;通过权限差量比较模块将当前的未备份数据和已下发至边缘服务器的数据进行比对,将差量数据通过权限推送模块发送至边缘服务器,边缘服务器根据差量数据进行数据恢复。在边缘服务器存储的数据已丢失的情况下,云服务器接收边缘服务器发送的第二故障事件,云服务器创建数据恢复任务,发送到边缘服务器,边缘服务器的备份拉取模块从云服务器拉取已备份数据并进行本地存储,云服务器根据数据备份的时间戳,确定出当前的未备份数据,下发到边缘服务器,边缘服务器对未备份数据进行计算和存储,实现未备份数据的恢复。对于已备份的数据,由于是之前计算完上传到云服务器进行备份的,因此不需要再次进行计算,可以直接进行恢复。
[0093]
本实施例中,通过云服务器动态计算预期数据恢复耗时,在避免定期频繁备份带来资源损耗的基础上,满足了用户定义的故障数据恢复时间目标;基于覆盖的增量数据备份降低备份的存储成本和对备份任务对网络带宽的要求;基于云服务器和边缘服务器的数据增量推送保证了数据的云边一致。
[0094]
与本技术实施例提供的方法的应用场景以及方法相对应地,本技术实施例还提供一种数据备份装置。如图5所示,该数据备份装置可以包括:
[0095]
确定模块501,用于确定未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时;
[0096]
备份模块502,用于在第一预估数据恢复耗时超过预设时间阈值的情况下,获取未备份数据对应的待备份数据并进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
[0097]
本技术实施例提供的数据备份装置,在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时超过预设时间阈值的情况下,云服务器从边缘服务器获取未备份数据对应的待备份数据并进行备份,在满足边缘服务器的数据恢复需求的同时,可以减少备份次数,降低频繁备份造成的资源损耗。另外,采用本技术技术方案进行数据备份,可以减少数据恢复时间。
[0098]
在一种可能的实现方式中,确定模块501包括获取单元和确定单元;
[0099]
获取单元,用于从边缘服务器获取未备份数据的预估计算耗时、预估存储耗时、以及预估网络带宽;
[0100]
确定单元,用于基于预估计算耗时、预估存储耗时、预估网络带宽、以及已备份数据的数据量,确定第一预估数据恢复耗时。
[0101]
在一种可能的实现方式中,装置还包括阈值更新模块,用于:
[0102]
基于边缘服务器发送的当前的备份数据的数据量和预估网络带宽,确定当前的备份数据在边缘服务器的第二预估数据恢复耗时;当前的备份数据包括增量备份数据和已备份数据;
[0103]
在第二预估数据恢复耗时超过预设时间阈值的情况下,生成预设时间阈值的更新提示信息并发送至边缘服务器,更新提示信息包括更新后的预设时间阈值。
[0104]
在一种可能的实现方式中,装置还包括第一接收模块,用于:
[0105]
在边缘服务器发生故障,且边缘服务器存储的数据未丢失的情况下,接收边缘服务器发送的第一故障事件;
[0106]
将当前的未备份数据和已下发至边缘服务器的数据进行比对,将差量数据发送至边缘服务器,以使边缘服务器根据差量数据进行数据恢复。
[0107]
在一种可能的实现方式中,装置还包括第二接收模块,用于:
[0108]
在边缘服务器发生故障,且边缘服务器存储的数据已丢失的情况下,接收边缘服务器发送的第二故障事件;
[0109]
将当前的未备份数据和当前的已备份数据发送至边缘服务器,以用于边缘服务器根据当前的未备份数据和当前的已备份数据进行数据恢复。
[0110]
在一种可能的实现方式中,确定单元,还用于:
[0111]
基于预估计算耗时、预估存储耗时、以及调整参数,确定未备份数据的恢复耗时;调整参数是基于未备份数据中的多个类别的数据是否需要备份确定的;
[0112]
基于预估网络带宽和已备份数据的数据量,确定已备份数据的恢复耗时;
[0113]
基于未备份数据的恢复耗时和已备份数据的恢复耗时,确定第一预估数据恢复耗时。
[0114]
在一种可能的实现方式中,装置还包括参数更新模块,用于:
[0115]
从边缘服务器获取实际数据恢复耗时,将实际数据恢复耗时和第一预估数据恢复耗时进行比对计算,利用计算结果对调整参数进行更新。
[0116]
在一种可能的实现方式中,备份模块502在获取未备份数据对应的待备份数据时,用于:
[0117]
向边缘服务器发送数据备份指令,以使边缘服务器确定未备份数据对应的待备份数据;
[0118]
接收边缘服务器发送的待备份数据。
[0119]
本技术实施例各装置中的各模块的功能可以参见上述装置中的对应描述,并具备相应的有益效果,在此不再赘述。
[0120]
与本技术实施例提供的装置的应用场景以及装置相对应地,本技术实施例还提供一种数据备份装置。如图6所示,该数据备份装置可以包括:
[0121]
确定模块601,用于在未备份数据和已备份数据在边缘服务器的第一预估数据恢
复耗时超过预设时间阈值的情况下,确定未备份数据对应的待备份数据;
[0122]
发送模块602,用于将待备份数据发送至云服务器,以使云服务器对待备份数据进行备份,得到增量备份数据,增量备份数据和已备份数据用于边缘服务器进行数据恢复。
[0123]
本技术实施例提供的数据备份装置,在未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时超过预设时间阈值的情况下,边缘服务器确定未备份数据对应的待备份数据,并发送到云服务器进行备份,在满足边缘服务器的数据恢复需求的同时,可以减少备份次数,降低频繁备份造成的资源损耗。另外,采用本技术技术方案进行数据备份,可以减少数据恢复时间。
[0124]
在一种可能的实现方式中,未备份数据和已备份数据在边缘服务器的第一预估数据恢复耗时是通过以下方式确定的:
[0125]
获取未备份数据的预估计算耗时、预估存储耗时、预估网络带宽,并发送至云服务器,以使云服务器基于预估计算耗时、预估存储耗时、预估网络带宽以及已备份数据的数据量,确定第一预估数据恢复耗时。
[0126]
在一种可能的实现方式中,装置还包括获取模块,用于:
[0127]
获取当前的备份数据的数据量和预估网络带宽,并发送至云服务器,以使云服务器确定当前的备份数据在边缘服务器的第二预估数据恢复耗时;当前的备份数据包括增量备份数据和已备份数据;
[0128]
在第二预估数据恢复耗时超过预设时间阈值的情况下,接收云服务器生成预设时间阈值的更新提示信息,更新提示信息包括更新后的预设时间阈值。
[0129]
在一种可能的实现方式中,装置还包括第一发送模块,用于:
[0130]
在边缘服务器发生故障,且边缘服务器存储的数据未丢失的情况下,向云服务器发送第一故障事件;
[0131]
接收云服务器发送的差量数据,差量数据是云服务器将当前的未备份数据和已下发的数据进行比对得到的;
[0132]
根据差量数据进行数据恢复。
[0133]
在一种可能的实现方式中,装置还包括第二发送模块,用于:
[0134]
在边缘服务器发生故障,且边缘服务器存储的数据已丢失的情况下,向云服务器发送第二故障事件;
[0135]
从云服务器获取当前的未备份数据和当前的已备份数据,根据当前的未备份数据和当前的已备份数据进行数据恢复。
[0136]
本技术实施例各装置中的各模块的功能可以参见上述方法中的对应描述,并具备相应的有益效果,在此不再赘述。
[0137]
图7为用来实现本技术实施例的电子设备的框图。如图7所示,该电子设备包括:存储器710和处理器720,存储器710内存储有可在处理器720上运行的计算机程序。处理器720执行该计算机程序时实现上述实施例中的方法。存储器710和处理器720的数量可以为一个或多个。
[0138]
该电子设备还包括:
[0139]
通信接口730,用于与外界设备进行通信,进行数据交互传输。
[0140]
如果存储器710、处理器720和通信接口730独立实现,则存储器710、处理器720和
通信接口730可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral component interconnect,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0141]
可选的,在具体实现上,如果存储器710、处理器720及通信接口730集成在一块芯片上,则存储器710、处理器720及通信接口730可以通过内部接口完成相互间的通信。
[0142]
本技术实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现本技术实施例中提供的方法。
[0143]
本技术实施例还提供了一种芯片,该芯片包括,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本技术实施例提供的方法。
[0144]
本技术实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的方法。
[0145]
应理解的是,上述处理器可以是中央处理器(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced risc machines,arm)架构的处理器。
[0146]
进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以包括随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用。例如,静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic random access memory,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。
[0147]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
[0148]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示
例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本技术的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0149]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0150]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
[0151]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
[0152]
应理解的是,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0153]
此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
[0154]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1