掌桥专利:专业的专利平台
掌桥专利
首页

数据容灾方法、装置、存储介质及电子设备

文献发布时间:2023-06-19 12:14:58


数据容灾方法、装置、存储介质及电子设备

技术领域

本申请涉及计算机技术领域,尤其涉及一种数据容灾方法、装置、存储介质及电子设备。

背景技术

随着大数据时代的来临,数据对科技的发展越来越重要。其中,当终端出现故障时,终端中的设备数据(如文本、音频、视频、图像以及可执行文件等数据)会出现损坏以及不可读的问题。因此,对终端中的设备数据进行有效的数据容灾处理显得尤为重要。

此外,对故障的终端进行维修,以通过修复的终端读取该终端中的设备数据。但是,在维修过程中,依然无法读取该设备数据,且不能保证该终端在修复后可以读取到完整且安全的设备数据。

发明内容

本申请实施例提供了一种数据容灾方法、装置、存储介质及电子设备,可以读取故障终端的设备数据,从而实现有效的数据容灾。所述技术方案如下:

第一方面,本申请实施例提供了一种数据容灾方法,应用于第一终端,所述方法包括:

在第二终端处于设备正常状态时,获取针对所述第二终端的加密设备数据,并对所述加密设备数据进行存储,所述加密设备数据为所述第二终端的设备源数据对应的加密数据;

确定所述第二终端处于设备故障状态,对所述加密设备数据进行解密生成目标设备数据。

第二方面,本申请实施例提供了一种数据容灾方法,应用于第二终端,所述方法包括:

在所述第二终端处于设备正常状态,生成所述第二终端的设备源数据对应的加密设备数据;

向第一终端发送加密设备数据,所述加密设备数据用于指示所述第一终端在确定所述第二终端处于设备故障状态时对所述加密设备数据进行解密生成目标设备数据。

第三方面,本申请实施例提供了一种数据容灾装置,所述装置包括:

数据存储模块,用于在第二终端处于设备正常状态时,获取针对所述第二终端的加密设备数据,并对所述加密设备数据进行存储,所述加密设备数据为所述第二终端的设备源数据对应的加密数据;

数据解密模块,用于确定所述第二终端处于设备故障状态,对所述加密设备数据进行解密生成目标设备数据。

第四方面,本申请实施例提供了另一种数据容灾装置,所述装置包括:

数据生成模块,用于在所述第二终端处于设备正常状态,生成所述第二终端的设备源数据对应的加密设备数据;

数据发送模块,用于向第一终端发送加密设备数据,所述加密设备数据用于指示所述第一终端在确定所述第二终端处于设备故障状态时对所述加密设备数据进行解密生成目标设备数据。

第五方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。

第六方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。

本申请一些实施例提供的技术方案带来的有益效果至少包括:

在本申请一个或多个实施例中,在第二终端处于设备正常状态时,第一终端获取针对所述第二终端的加密设备数据,并对所述加密设备数据进行存储,所述加密设备数据为所述第二终端的设备源数据对应的加密数据;第一终端确定所述第二终端处于设备故障状态,对所述加密设备数据进行解密生成目标设备数据。其中,第一终端获取的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则第一终端可以对获取到的加密设备数据进行解密,从而可以读取到第二终端(故障终端) 的设备数据,进而对设备数据进行有效的数据容灾。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种数据容灾方法的系统架构图;

图2是本申请实施例提供的一种数据容灾方法的场景示意图;

图3是本申请实施例提供的一种数据容灾方法的流程示意图;

图4是本申请实施例提供一种数据容灾方法所涉及的一种获取加密设备数据方法的举例示意图;

图5是本申请实施例提供一种数据容灾方法所涉及的一种确定设备故障状态方法的举例示意图;

图6是本申请实施例提供的另一种数据容灾方法的流程示意图;

图7是本申请实施例提供一种数据容灾方法所涉及的一种加密设备数据获取方法的举例示意图;

图8是本申请实施例提供的本申请实施例提供一种数据容灾方法所涉及的一种数据容灾界面的举例示意图;

图9是本申请实施例提供一种数据容灾方法所涉及的一种确定设备故障状态方法的举例示意图;

图10是本申请实施例提供的本申请实施例提供一种数据容灾方法所涉及的一种容灾服务的举例示意图;

图11是本申请实施例提供的一种数据容灾方法所涉及的一种建立通信连接方法的场景示意图;

图12是本申请实施例提供的一种数据容灾方法所涉及的另一种建立通信连接方法的场景示意图;

图13是本申请实施例提供的一种数据容灾方法所涉及的一种多线程同步模式的举例示意图;

图14是本申请实施例提供的另一种数据容灾方法的流程示意图;

图15是本申请实施例提供的一种数据容灾装置的结构示意图;

图16是本申请实施例提供的另一种数据容灾装置的结构示意图;

图17是本申请实施例提供的另一种数据容灾装置的结构示意图;

图18是本申请实施例提供的一种第一终端的结构示意图;

图19是本申请实施例提供的一种第二终端的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本申请的描述中,需要说明的是,除非另有明确的规定和限定,“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

根据一些实施例,图1示出应用于本申请实施例的数据容灾方法的系统架构图。如图1 所示,本申请实施例的第二终端可以与多个第一终端(如第一终端1、第一终端2…第一终端 n)进行关联,其中,第二终端可以为具有设备源数据的终端设备,第二终端在数据容灾网络中的数量也可以是多个,如第二终端1、第二终端2…第二终端n,以下为了释义的方便以其中的一个第二终端进行释义,第二终端包括但不限于:个人电脑、平板电脑、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备等。在不同的网络中终端设备可以叫做不同的名称,例如:用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置、蜂窝电话、无绳电话、5G网络或未来演进网络中的终端设备等。在本申请实施例中,对第二终端的设备源数据进行数据容灾处理,因此,第一终端可以为对该设备源数据进行备份保存的终端设备,且可以在第二终端处于故障时读取该设备源数据,其中,第一终端的设备类型可以与第二终端的设备类型相同,也为终端设备,包括但不限于:个人电脑、平板电脑、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备等。可以理解的是,第一终端与各第二终端之间可以通过终端中的账号进行关联,也可以通过终端中的软件(如应用程序)或硬件(如数据连接器)等方式进行关联。具体的,用户在第二终端创建第二终端对应的终端账号,以及将该终端账号直接登录在第二终端上,当将该终端账号登录在第一终端上,可以实现第一终端与第二终端的关联。进一步的,当通过账号对第一终端和第二终端进行关联时,可以查询第一终端的第一用户账号的关联账号,若关联账户包括第二终端的第二用户账号,则与第二终端进行关联;也可以读取第一终端的用户账号的历史登录记录,若确定历史登录记录包括第二终端,则建立与第二终端的连接。需要说明的是,第一终端与第二终端通过网络进行交互通信,其中,网络可以是无线网络,也可以是有线网络,无线网络包括但不限于蜂窝网络、无线局域网、红外网络或蓝牙网络,有线网络包括但不限于以太网、通用串行总线(universal serial bus,USB)或控制器局域网络。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible Markup Language,XML)等的技术和/或格式来代表通过网络交换的数据(如目标压缩包)。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全 (Transport Layer Security,TLS)、虚拟专用网络(Virtual PrivateNetwork,VPN)、网际协议安全(Internet Protocol Security,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。

根据一些实施例,图2示出应用于本申请实施例数据容灾方法的场景示意图。如图2所示,在一些实施方式中第二终端可以为智能手机时,例如图2中第二终端1可以为智能手机,第一终端可以为与该第二终端1-智能手机相关联的台式电脑、平板电脑(portableandroid device,Pad)、智能手表等终端设备。其中,第二终端以及各第一终端可以连接至数据容灾网络,从而通过数据容灾网络实现第二终端与第一终端之间的关联。其中,数据容灾网络是由第二终端以及多个第一终端组成的网络,用于实现第二终端的数据容灾,可以为物联网系统(Internet of Things,IOT)。在智能手机处于设备正常状态时,可以按照预设时间将针对智能手机的加密设备数据发送至相关联的台式电脑以及Pad等第一终端,也可以由用户输入触发操作以使智能手机发送加密设备数据

下面结合具体的实施例对本申请进行详细说明。

在一个实施例中,如图3所示,特提出了一种数据容灾方法,该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的数据容灾装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。

具体的,该数据容灾方法包括:

S101:在第二终端处于设备正常状态时,获取针对第二终端的加密设备数据,并对加密设备数据进行存储,加密设备数据为第二终端的设备源数据对应的加密数据。

本申请实施例的执行主体为第一终端,该第一终端与第二终端相关联,以获取针对第二终端的加密设备数据,从而实现对该加密设备数据的容灾备份。可以理解的是,第二终端中用于生成并传输加密设备数据的硬件不出现故障,才能保证第一终端可以获取该加密设备数据。因此,设备正常状态可以是指第二终端的硬件使用正常以及软件运行正常的状态;也可以是指出现部分硬件使用异常(如扬声器播放音频的声调不准)或部分软件运行异常(如聊天软件闪退)等故障问题但不影响第二终端中设备源数据的读取的设备状态,同时第二终端在该设备状态下可以生成设备源数据对应的加密设备数据,以及发送该加密设备数据。

根据一些实施例,针对第二终端的加密设备数据是指第二终端的设备源数据经过加密处理后生成的加密数据,其中,对设备源数据进行加密处理可以保证设备源数据在传输过程或存储过程中的完整性,同时可以避免设备源数据被滥用,从而保证的设备源数据的安全性。需要说明的是,设备源数据是指在第二终端中用户所存储使用的各种数据以及第二终端在实现功能时所需的数据。

进一步的,获取针对第二终端的加密设备数据包括但不限于以下方式:

方式一:第二终端采用加密算法对设备源数据进行加密,生成设备源数据对应的加密设备数据,再将加密设备数据发送至第一终端,从而使得第一终端可以获取加密设备数据,同时保证了数据传输过程中设备源数据的完整性以及安全性;

方式二:第二终端直接将设备源数据发送至第一终端,再由第一终端采用加密算法对该设备源数据进行加密,生成加密设备数据,可以避免第一终端滥用该设备源数据;

方式三:第二终端在将设备源数据发送至第一终端的过程中,通过数据传输线路对该设备源数据进行加密,使得第一终端可以接收到在数据传输过程中进行加密的设备源数据,也即加密设备数据。

示意性的,图4示出了本申请实施例提供的一种数据容灾方法所涉及的一种获取加密设备数据方法的举例示意图。如图4所示,第二终端为智能手机,第一终端为台式电脑,以智能手机通过数据连接器与台式电脑相关联为例,其中,台式电脑获取针对智能手机的加密设备数据的方式可以有三种:

方式一、智能手机对智能手机中的设备源数据进行加密,生成该设备源数据对应的加密设备数据,并将该加密设备数据发送至台式电脑,从而使得该台式电脑获取到针对智能手机的加密设备数据;

方式二、智能手机将该设备源数据发送至台式电脑,台式电脑对接收到的该设备源数据进行加密,生成针对智能手机的加密设备数据;

方式三、智能手机将该设备源数据通过数据连接器发送至台式电脑,在该设备源数据经由数据连接器传输的过程中,该数据连接器对该设备源数据进行加密,生成针对智能手机的加密设备数据,并将该加密设备数据传输至台式电脑,从而使得该台式电脑获取到针对智能手机的加密设备数据。

更进一步的,对设备源数据加密时所采用的加密算法包括但不限于:MD5信息摘要算法 (Message-Digest Algorithm,MD5)、Merkle-Hellman背包算法、椭圆加密算法(Elliptic Curve Cryptography,ECC)以及安全散列算法1(Secure Hash Algorithm 1,SHA-1算法)等。

根据一些实施例,对加密设备数据进行本地存储,从而实现针对第二终端的设备数据的容灾备份,其中,可以在第一终端中增设一个大容量存储器,用于存储该加密设备数据;也可以在第一终端中现有的存储器(内存储器或主存储器)中开辟一个大的存储空间,用于存储该加密设备数据。

具体的,将加密设备数据存储在预设的存储空间内的方式为:cookie方式、localStorage 方式以及用户数据(UserData)方式。其中,cookie方式:将加密设备数据以cookie文件格式进行本地存储,cookie文件类型为“小型文本文件”,可以根据设置的失效时间清空数据,从而可以由终端暂时或永久保存。localStorage方式:将加密设备数据以localStorage文件格式进行本地存储,localStorage存储可以解决了cookie存储空间小的问题,同时可以持久化本地存储。UserData方式:将加密后的数据存储在UserData文件中,UserData文件为终端设置的存储空间,从而可以进行本地存储。

可选的,对加密设备数据进行云端存储,将加密设备数据存放在有第三方托管的虚拟服务器中,从而实现针对第二终端的设备数据的容灾备份。需要说明的是,相对于云端存储,对加密设备数据进行本地存储可以进一步降低备份数据泄漏的风险。

S102:确定第二终端处于设备故障状态,对加密设备数据进行解密生成目标设备数据。

设备故障状态是指第二终端中出现硬件使用异常或软件运行异常等问题而导致第二终端无法读取设备源数据且无法运行相应的目标功能的设备状态。此时,为了读取第二终端中的设备源数据,可以通过第一终端对加密设备数据进行解密生成目标设备数据。

在一些实施例中,第一终端可以通过数据容灾网络确定第二终端处于设备故障状态。其中,第二终端与第一终端相关联,且第二终端以及第一终端连接至数据容灾网络。如图5所示,数据容灾网络通过通信网络周期性的采集第二终端的设备状态数据;根据第二终端在数据容灾网络中的设备种类对该设备状态数据进行分析,判断出第二终端是否处于设备故障状态;若确定第二终端处于设备故障状态,则数据容灾网络发送针对第二终端的故障信号至第一终端,从而使得第一终端可以确定第二终端处于设备故障状态。

需要说明的是,设备状态数据可以包括第二终端的工作电压数据、工作电流数据以及工作温度数据中的任一种或多种的组合,从而通过工作电压数据、工作电流数据以及工作温度数据等设备状态数据判断第二终端是否处于设备故障状态。进一步的,针对第二终端的故障信号是指在数据容灾网络确定第二终端处于设备故障状态时发送至第一终端的信号,该故障信号可以使得第一终端确定第二终端处于设备故障状态。

根据一些实施例,若第二终端处于设备故障状态,则无法通过第二终端读取设备源数据,因此,通过第一终端对加密设备数据进行解密生成目标设备数据。可以理解的是,对设备源数据进行加密生成加密设备数据,再对加密设备数据进行解密生成目标设备数据,因此,可以将目标设备数据看作设备源数据。进一步的,若基于数据保密性的考虑,可以选择对加密设备数据中的部分数据进行解密,生成目标设备数据,因此,可以将目标设备数据看作设备源数据中的一部分。

更进一步的,设备源数据的数据类型包括但不限于:文本、音频、视频、图像以及可执行文件。按照数据类型对设备源数据进行加密,可以得到文本设备源数据对应的加密设备数据、音频设备源数据对应的加密设备数据、视频设备源数据对应的加密设备数据、图像设备源数据对应的加密设备数据以及可执行文件设备源数据对应的加密设备数据等。对所选择的一种数据类型的设备源数据对应的加密设备数据进行解密,可以得到该数据类型的设备源数据,也即目标设备数据。

在本申请实施例中,在第二终端处于设备正常状态时,第一终端获取针对所述第二终端的加密设备数据,并对所述加密设备数据进行存储,所述加密设备数据为所述第二终端的设备源数据对应的加密数据;第一终端确定所述第二终端处于设备故障状态,对所述加密设备数据进行解密生成目标设备数据。其中,第一终端获取的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则第一终端可以对获取到的加密设备数据进行解密,从而可以读取到第二终端(故障终端)的设备数据,进而对设备数据进行有效的数据容灾。

请参见图6,图6是本申请提出的一种数据容灾方法的另一种实施例的流程示意图,具体的:

S201:获取第二终端发送的状态信号,基于状态信号确定第二终端的设备状态,设备状态包括设备正常状态和设备故障状态。

状态信号是指可表征第二终端的设备状态的信号,其中,第一终端可以通过该状态信号直接确定第二终端的设备状态,也可以通过读取状态信号中的数据信息,基于该数据信息判断第二终端的设备状态。

具体的,第一终端通过该状态信号直接确定第二终端的设备状态的方法包括但不限于:若在时间阈值内接收到状态信号,则确定第二终端处于设备正常状态;若在时间阈值内未接收到状态信号,则确定第二终端处于设备故障状态。

其中,时间阈值是指第一终端接收状态信号对应的时间的门限值或临界值,用于判断第二终端的设备状态。进一步的,第二终端按照预设的时间周期发送状态信号,该状态信号可以使得第一终端确定第二终端处于设备正常状态;若第二终端处于设备故障状态,则第二终端无法按照预设的时间周期发送状态信号,当超过该预设的时间周期(也即时间阈值)时,第一终端未接收到该状态信号,则可以确定第二终端处于设备故障状态。

可选的,第一终端发送状态询问信号至第二终端,若第一终端接收到第二终端针对状态询问信号发送的确认信号,则确定第二终端处于设备正常状态;若第一终端接收到第二终端针对状态询问信号发送的否认信号,或未接收到第二终端针对状态询问信号发送的信号,则确定第二终端处于设备故障状态。

根据一些实施例,第一终端通过读取状态信号中的数据信息,基于该数据信息判断第二终端的设备状态。其中,数据信息可以包括第二终端的工作电压数据、工作电流数据以及工作温度数据等,例如,当第一终端读取状态信号中的数据信息为工作电压数据为0、工作电流数据为0且工作温度数据为0时,则确定第二终端的设备状态为设备故障状态。

S202:在第二终端处于设备正常状态时,获取针对第二终端的加密设备数据,并对加密设备数据进行存储,加密设备数据为第二终端的设备源数据对应的加密数据。

具体的,基于数据容灾网络中的至少一个参考第一终端,获取针对所述第二终端同步的加密设备数据,所述加密设备数据为所述第二终端处于设备正常状态时向所述第二终端获取;和/或,在第二终端处于设备正常状态时,获取针对所述第二终端的加密设备数据,并将所述加密设备数据同步至所述数据容灾网络中的至少一个参考第一终端;其中,所述数据容灾网络包括所述第一终端、所述第二终端以及各所述参考第一终端。

需要说明的是,参考第一终端为在数据容灾网络中用于获取第二终端的加密设备数据,并将该加密设备数据转发至第一终端的终端。

可以理解的是,在数据容灾网络中,可以通过参考第一终端向第二终端获取加密设备数据,再经由参考第一终端将该加密设备数据发送至第一终端;也可以通过第一终端向第二终端获取加密设备数据,再经由第一终端将该加密设备数据发送至参考第一终端。

示意性的,如图7所示,一种加密设备数据获取的举例示意图,其中数据容灾网络包括第一终端A101、参考第一终端B101、参考第一终端B102、参考第一终端B103。参考第一终端B101和/或参考第一终端B102和/或参考第一终端B103获取加密设备数据,并将该加密设备数据发送至第一终端A101,其中,参考第一终端B101、参考第一终端B102以及参考第一终端B103可以共同获取加密设备数据,从而共同将加密设备数据发送至第一终端A101,也可以单独获取加密设备数据,从而单独将加密设备数据发送至第一终端A101。可选的,第一终端A101可以获取第二终端的加密设备数据,并将该加密数据分别发送至参考第一终端B101、参考第一终端B102以及参考第一终端B103。

S203:确定第二终端处于设备故障状态,对加密设备数据进行解密生成目标设备数据。

具体的,显示包含数据容灾网络中的至少一个参考第一终端的数据容灾界面;响应于针对至少一个参考第一终端中的目标设备所输入的终端选择指令,控制所述目标设备执行对所述加密设备数据进行解密生成目标设备数据的步骤;和/或,向数据容灾网络中的各参考第一终端发布针对所述第二终端的数据容灾同步任务;基于所述数据容灾同步任务指示各参考第一终端根据预设共识机制竞争针对所述数据容灾同步任务的计算权,确定所述计算权对应的目标设备;控制所述目标设备执行对所述加密设备数据进行解密生成目标设备数据的步骤。

可以理解的是,第一终端以及参考第一终端可以显示数据容灾界面,从而可以接收用户输入的终端选择指令。其中,终端选择指令是指在第二终端处于故障状态时,用户输入的用于在数据容灾网络中选择目标设备的指令。该目标设备可以用于对第二终端的加密设备数据进行解密,并进行功能模拟,从而实现第二终端的数据容灾。

可选的,可以通过目标设备显示数据容灾界面,从而可以接收用户输入的终端选择指令,以在数据容灾网络中选择第一终端,并通过该第一终端对第二终端的加密设备数据进行解密,并进行功能模拟,从而实现第二终端的数据容灾。

示意性的,如图8所示,一种可行的数据容灾界面,包括:“请点击以下方框以选择方框对应的终端设备”提示框,可供选择的“第一终端A101”功能框、“参考第一终端B101”功能框、“参考第一终端B102”功能框、“参考第一终端B103”功能框。用户可以点击“参考第一终端B103”功能框,从而选择参考第一终端B103作为目标设备。

需要说明的是,数据容灾网络是由多个具备计算能力的参考第一终端(包括第一终端)、至少一个第二终端构成去中心化的数据库。通常,第一终端向数据容灾网络中的各参考第一终端发布针对所述第二终端的数据容灾同步任务,基于共识机制,数据容灾网络在所包含的至少一个参考第一终端中确定一个目标设备,由该目标设备执行数据容灾同步任务。在实际应用中,所述共识机制可以理解为数据容灾网络确定目标设备时,数据容灾网络所包含的各参考第一终端会争夺一个该数据容灾同步任务的计算权或挖矿权(也称记账权)已获得本次的成功记账(即成功基于数据容灾同步任务确定对执行任务的目标终端所在支链)的收益,各个参考第一终端不断地产生区块分叉,形成共识,再消除分叉的过程,最终确定目标设备。

上述基于共识机制确定共识机制的共识过程,可以是利用目前常用的共识算法,例如:工作证明(proof of work,POW)算法、股权证明(proof of stake,POS)算法、委托权益证明(delegated proof of stake,DOS)算法或实用拜占庭容错(practical Byzantinefault tolerance, PBFT)算法。

根据一些实施例,数据容灾网络接收到数据容灾同步任务后,将加密设备数据发布至数据容灾网络的公有链(也可以理解为公网)上。数据容灾网络的目标设备去的数据容灾同步任务的计算权或挖矿权之后,可以直接或接收到密钥公开请求后将加密设备数据发布至公有链上,具体为在公有链上创建区块并用区块存储加密设备数据,数据容灾网络并控制所述目标设备采用泛洪机制将所述加密设备数据在数据容灾网络上进行广播。其中,对于一个参考设备而言,通常可以包含用于记账的记账链,以及用于存储业务数据的存储链,所述存储链可以是多条用于存储不同数据类型的存储链,通常同一数据类型的业务数据保存至同一存储链中。在本申请实施例中,所述记账可以理解为记录当前“传输加密设备数据”的记录信息,所述存储链中的至少一条可以作为公有链用于储存并公布加密设备数据。可以理解的是记账链中的由各区块链式连接,一个区块可以代表某个时间点的记录信息,存储链中的由各区块链式连接,一个区块可以代表某个时间点的公布的加密设备数据。

其中,对于储存业务数据的存储链来说,所述区块包括区块头和区块,区块头包括父摘要值、业务标识、高度、随机数、Merkle根哈希值、块内记录总数中的一种或多种,父区块摘要值表示父区块的摘要值,对于目标区块链节点中的首个区块来说,首个区块的父区块摘要值可以是记账链中的父区块的摘要值,也可以是记账链中的父区块的Merkle根哈希值。业务标识表示区块所在的存储链关联的业务的身份标识,不同的存储链具有不同的业务标识;时间戳表示记录各个业务数据的时刻;高度表示区块在存储链中的位置,例如:存储链中首个区块的高度为1,第二个区块的高度为2;块内记录总数表示区块体中记录的业务数据的数量,Merkle根哈希值是根据区块体中记录的业务数据生成的,Merkle根哈希值的生成过程可参照现有技术,此处不再赘述。在一种可能的实施方式中,区块头中还包括分支权重,分支权重用于表示当有多条存储链时该存储链的权重,分支权重可以用来调节在存储链上进行记账的收益。

其中,所述采用泛洪机制进行全网广播,在于让整个数据容灾网络对该区块进行同步。全网广播的方式就是。该节点首先向邻居节点广播。邻居节点收到广播消息后。再继续向自己的邻居节点广播,以此类推,从而广播整个网络。这种广播方法即泛洪机制。

具体的,当所述目标设备在存储链上创建区块,在作为公有链的存储链上已存储好所述加密设备数据之后,该目标设备采用泛洪机制将“储存加密涉笔数据的区块”在数据容灾网络上除目标设备以外的参考第一设备进行广播,对于数据容灾网络上的除目标设备以外的参考第一终端来说,在接收到所述目标设备的广播的“储存加密设备数据的区块”之后,将所述“储存加密设备数据的区块”与对应的储存链中末尾区块链式相连,同时可以在记账链中创建用于记账的区块记录当前的存储信息。然后再继续向自己的邻居节点广播,以此类推,从而广播整个网络,以使得该数据容灾网络上的所有参考第一终端对该“储存加密设备数据的区块”进行数据备份,从而达到在数据容灾网络上对公有链进行公布的效果。

进一步的,基于所述数据容灾同步任务指示与各参考第一终端获取计算关联参数并根据所述计算关联参数采用预设共识机制共同确定针对所述数据容灾同步任务的计算权;其中,所述计算关联参数包括富余计算资源、系统环境参数和设备状态信息中的至少一种。可以理解的是,富余计算资源是指计算机程序运行时所需的处理器资源、内存资源、硬盘资源和网络资源。系统环境参数是指在操作系统中用来指定操作系统运行环境的一些参数,也可以是终端中所设置的不同操作系统,如按照系统以及MAC系统等。设备状态信息是指终端的状态参数相关的信息,可以是终端的电量、使用时长以及消耗程度等。

本申请实施例中,将数据容灾同步网络中各设备的富余计算资源维度、系统环境维度、设备状态维度中的至少一种纳入对数据容灾同步的参考,通过引入共识机制,数据容灾同步网络中的各参考第一终端采用预先约定的共识机制,也即各自在本端基于共识算法,会争夺一个该数据容灾同步任务的计算权或挖矿权(也称记账权)已获得本次的成功记账(即成功基于数据容灾同步任务确定对执行任务的目标终端所在支链)的收益,各个参考第一终端不断地采用共识算法并基于富余计算资源、系统环境参数和设备状态信息中的至少一种进行区块计算不停产生区块分叉,形成共识,再消除分叉的过程,最终在消除之后可成功获得本次的成功记账的计算权,从而确定计算权对应的目标设备;

进一步,计算权对应的目标设备可以是第一终端,则第一终端则执行对所述加密设备数据进行解密生成目标设备数据的步骤;计算权对应的目标设备可以是除第一终端之外其他参考第一终端,则由于参考第一终端竞争到计算权,从而参考第一终端自动响应进而可以执行对所述加密设备数据进行解密生成目标设备数据的步骤。进一步的,第一终端也可在确定计算权对应的目标设备之后向该目标设备发送指示消息,目标设备在收到指示消息之后就可以自动响应进而可以执行对所述加密设备数据进行解密生成目标设备数据的步骤。

上述基于共识机制确定共识机制的共识过程,可以是利用目前常用的共识算法,例如:工作证明(proof of work,POW)算法、股权证明(proof of stake,POS)算法、委托权益证明(delegated proof of stake,DOS)算法或实用拜占庭容错(practical Byzantinefault tolerance, PBFT)算法。

S204:基于目标设备数据对第二终端上的至少一个目标功能进行故障容灾处理,得到故障容灾处理后的针对各目标功能的功能运行环境。

目标设备数据包括运行第二终端上的至少一个目标功能所需要的数据,其中,目标功能是指第二终端在处于设备正常状态时可以运行的功能,例如短信收发、通话联系、网上支付以及多媒体播放等。

为了对第二终端上的至少一个目标功能进行故障容灾处理,可以读取目标设备数据,并基于目标设备数据得到针对各目标功能的功能运行环境。

具体的,基于目标设备数据向容灾服务器发送故障容灾指令,故障容灾指令用于指示容灾服务器构建针对各目标功能的功能运行环境。

需要说明的是,故障容灾指令可以是由用户输入至第一终端的触发指令以使第一终端可以实现第二终端(故障终端)的各目标功能,其中,第一终端可以为用户提供一个服务接口,使得用户可以通过该服务接口与容灾服务器进行交互,从而可以运行第二终端的各目标功能。易于理解的是,该应用接口可以是容灾服务网页,也可以是容灾服务应用程序(Application)。

示意性的,以第二终端为智能手机为例,图9示出了一种数据容灾方法所涉及的一种容灾服务网页的举例示意图,用户可以在容灾服务网页登录服务账号,从而启动容灾服务,通过容灾服务器构建各目标功能的功能运行环境。其中,可以在容灾服务网页模拟第二终端的显示界面,该显示界面可以与第二终端处于正常工作状态下的显示界面相同,用户可以通过第一终端中的该显示界面输入操作,以使该容灾服务网页可以通过模拟的显示界面接收输入的操作,并将该操作对应的指令发送至容灾服务器,以使容灾服务器可以实现该指令对应的目标功能。

根据一些实施例,该容灾服务器可以支持多个数据平台并兼容不同的操作系统,其中,可兼容的操作系统包括但不限于安卓系统(Android系统)、微软视窗操作系统(Windows 系统)、苹果电脑操作系统(mac系统)、Linux系统以及苹果移动设备操作系统(iPhone Operation System,iOS)等。具体的,如图10所示,在第一终端开放服务接口(容灾服务网页、容灾服务应用程序),用户通过该服务接口,与容灾服务器进行交互,以运行第二终端对应的目标功能。

可选的,基于目标设备数据划分针对第二终端上的至少一个目标功能的设备运行空间,在设备运行空间中构建至少一个目标功能对应的功能运行环境。第一终端在该设备运行空间中构建第二终端的目标功能对应的运行环境,以使第一终端的操作系统可以在该运行环境下运行第二终端的功能目标。

需要说明的是,第一终端可以包括第一操作系统以及第二操作系统,其中第一操作系统用于执行针对第一终端的用户指令,从而运行第一终端对应的功能;第二操作系统用于执行针对第二终端的用户指令,从而运行第二终端对应的目标功能。

S205:基于目标设备数据,在功能运行环境中运行至少一个目标功能。

具体的,基于与容灾服务器的功能模拟服务,在功能运行环境中运行至少一个目标功能。

在本申请实施例中,第一终端获取的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则第一终端可以对获取到的加密设备数据进行解密,从而可以读取到第二终端(故障终端)的设备数据,进而对设备数据进行有效的数据容灾。此外,第一终端基于目标设备数据对第二终端上的至少一个目标功能进行故障容灾处理,得到故障容灾处理后的针对各目标功能的功能运行环境,并在功能运行环境中运行至少一个目标功能,可以实现模拟第二终端,从而解决了第二终端在故障以及维修阶段不可用的问题。

在本申请实施例中,从第一终端侧和第二终端侧共同阐述交互信息获取方法的具体流程,具体的:

S301:采用至少一种通信连接方式建立第一终端与第二终端的通信连接。

通信连接方式包括但不限于:无线通信技术(Wi-Fi)通信连接方式、蓝牙(bluetooth) 通信连接方式以及近场通信(Near Field Communication,NFC)通信连接方式等。

具体的,确定第一终端与第二终端之间的至少一种通信连接方式,打开第一终端中该通信连接方式对应的第一通信功能,以及打开第二终端中该通信连接方式对应的第二通信功能。易于理解的是,第一终端可以通过开启的第一通信功能识别到第二终端中开启的第二通信功能,第二终端也可以通过开启的第二通信功能识别到第一终端中开启的第一通信功能,其中,在识别过程中可以直接采用该通信连接方式建立第一终端与第二终端的通信连接,也可以在识别过程中基于通信连接请求有选择性的建立第一终端与第二终端的通信连接。

示意性的,图11示出了一种数据容灾方法所涉及的一种建立通信连接方法的场景示意图。如图11所示,第一终端和第二终端同时开启NFC功能,且在识别到对端也开启NFC功能时,直接采用NFC通信连接方式建立通信连接。

图12示出了一种数据容灾方法所涉及的另一种建立通信连接方法的场景示意图。如图 12所示,第一终端和第二终端同时开启NFC功能,当第一终端在检测到第二终端开启NFC 功能时,弹出提示框“检测到第二终端的NFC,是否发送NFC通信连接请求”,以向用户确定是否发送“NFC通信连接请求”至第二终端。当接收到用户输入的“确定”指令,则向第二终端发送“NFC通信连接请求”;当接收到用户输入的“取消”指令,则不向第二终端发送“NFC通信连接请求”。其中,若向第二终端发送“NFC通信连接请求”,则第二终端针对接收到的“NFC通信连接请求”选择“确定”,第一终端和第二终端采用NFC通信连接方式建立通信连接;第二终端针对接收到的“NFC通信连接请求”选择“取消”,第一终端和第二终端不采用NFC通信连接方式建立通信连接。

根据一些实施例,通信连接方式可以基于第一终端与第二终端之间的距离来确定。易于理解的是:通信连接方式对终端之间的距离有一定要求,例如,基于NFC通信连接方式的通信原理,终端之间的距离较近时才能够采用NFC通信连接方式进行通信。

具体的,当终端之间的距离较近时,采用NFC通信连接方式进行通信;当终端之间的距离较远时,无法采用NFC通信连接方式进行通信,则采用蓝牙通信连接方式进行通信;当终端之间的距离相对更远时,无法采用蓝牙通信连接方式进行通信,则采用Wi-Fi通信连接方式进行通信。

可选的,通过至少两种通信连接方式联合进行通信连接。具体的,当终端之间采用第一通信连接方式以及第二通信连接方式进行通信时,第一终端和第二终端之间可以通过第一通信连接方式认证对端信息,可以通过第二通信连接方式传输加密设备数据。

示意性的,当终端之间采用NFC通信连接方式以及蓝牙通信连接方式进行通信时,第一终端和第二终端之间可以通过NFC通信连接方式认证对端信息,可以通过蓝牙通信连接方式传输加密设备数据。

S302:第二终端基于通信连接确定针对第一终端的鉴权认证状态,若鉴权认证状态为鉴权通过状态,执行在第二终端处于设备正常状态生成第二终端的设备源数据对应的加密设备数据的步骤。

为了避免在数据传输过程中出现数据泄露的问题,第二终端对第一终端进行鉴权认证。具体的,基于通信连接向第一终端发送第二设备信息,第二设备信息用于指示第一终端基于第二设备信息确定第二终端属于预设白名单中的设备时发送第一设备信息。

S303:第一终端基于通信连接确定针对第二终端的鉴权认证状态,若鉴权认证状态为鉴权通过状态,执行在第二终端处于设备正常状态时获取针对第二终端的加密设备数据的步骤。

为了确保接收到的加密设备数据的安全性,第一终端对第二终端进行鉴权认证。具体的,基于通信连接获取第二终端对应的第二设备信息,基于第二设备信息确定第二终端属于预设白名单中的设备,向第二终端发送第一设备信息。其中,当确定第二终端属于预设白名单中的设备,则可以确定针对第一终端的鉴权认证状态通过。

具体的,一种鉴权认证的方式可以为:第一终端向第二终端发送第一终端对应的第一设备信息。第二终端接收到第一设备信息之后,确定第一终端属于预设白名单中的设备,然后向第一终端发送第二终端对应的第二设备信息。第一终端接收到第二设备信息之后,确定第二终端属于预设白名单中的设备,则第一终端向第一终端反馈设备验证状态,以使第二终端确定第一终端对第二终端的验证通过,从而鉴权验证通过。

可选的,一种鉴权认证的方式可以为:第二终端向第一终端发送第二终端对应的第二设备信息。第一终端接收到第二设备信息之后,确定第二终端属于预设白名单中的设备,然后向第二终端发送第一终端对应的第一设备信息。第二终端接收到第一设备信息之后,确定第一终端属于预设白名单中的设备,则第二终端向第二终端反馈设备验证状态,以使第一终端确定第二终端对第一终端的验证通过,从而鉴权验证通过。

S304:在第二终端处于设备正常状态时,第一终端开启针对第二终端的数据容灾模式。

在本申请实施例中,数据容灾模式是指包括加密设备数据对应的数据传输模式以及实现故障终端的目标功能的模拟模式等对第二终端进行数据容灾所涉及的模式,可以以小程序、网页以及应用程序等形式设置与第一终端中。其中,数据容灾模式可以包括多线程同步模式,多线程同步模式是指第一终端与第二终端之间通过多个线程并发执行数据同步的模式,该多线程同步模式中的各线程分别执行各线程对应的任务,从而共同协作实现加密设备数据的传输。

S305:第二终端基于数据容灾模式生成第二终端的设备源数据对应的加密设备数据,并向第一终端发送加密设备数据。

可选的,开启与第一终端间的数据容灾模式,该数据容灾模式中的多线程同步模式可以开启引导加载服务。基于多线程同步模式对引导加载服务分配至少一种类型线程,基于引导加载服务,通过至少一种类型线程生成第二终端的设备源数据对应的加密设备数据以及向第一终端发送加密设备数据。

需要说明的是,引导加载服务是指用于引导多线程进行加密设备数据传输的守护进程服务,可以是运行于后台的引导加载程序。通过启动引导加载服务可以使得多线程传输数据不受外界影响而中断,从而保证数据传输成功。

S306:第一终端基于所述数据容灾模式获取针对第二终端的加密设备数据,确定加密设备数据对应的数据传输信息,对数据传输信息和加密设备数据进行存储。

具体的,开启与数据容灾网络中的至少一个参考第一终端的数据容灾模式,基于所述数据容灾模式从所述参考第一终端处获取针对所述第二终端的加密设备数据;和/或,开启与所述第二终端的数据容灾模式,从所述第二终端处获取针对所述第二终端的加密设备数据。

需要说明的是,在第一终端获取针对第二终端的加密设备数据的过程中,可以开启第一终端与参考第一终端的数据容灾模式、第一终端与第二终端的数据容灾模式或参考第一终端与第二终端的数据容灾模式,从而通过各终端之间的数据容灾模式传输加密设备数据。

可选的,开启与第二终端间的数据容灾模式,该数据容灾模式中的多线程同步模式可以启动引导加载服务,基于多线程同步模式对引导加载服务分配至少一种类型线程,基于引导加载服务,通过至少一种类型线程获取针对第二终端的加密设备数据。

其中,第一终端中的引导加载服务与第一终端中的引导加载服务相同,具体可参见S305,此处不再赘述。

在一种具体的实施场景中,第一终端以及第二终端基于多线程同步模式传输加密设备数据,如下:

S3061:采用第一类型线程接收加密设备数据,加密设备数据为第二终端采用第二类型线程对设备源数据进行加密生成的数据。

根据一些实施例,第二终端采用第一类型线程发送加密设备数据,从而第一终端采用第一类型线程接收加密设备数据。其中,加密设备数据的数据类型包括但不限于:文本、音频、视频、图像以及可执行文件,可以采用各第一类型线程对每一数据类型的加密设备数据进行传输。

示意性的,第一类型线程包括文本和可执行文件传输线程、音视频传输线程以及图像传输线程,因此,可以采用文本和可执行文件传输线程传输文本类型的加密设备数据和可执行文件类型的加密设备数据,可以采用音视频传输线程传输音频类型的加密设备数据和视频类型的加密设备数据,可以采用图像传输线程传输图像类型的加密设备数据。

根据一些实施例,第二类型线程是指可以对设备源数据加密的线程,其中,第二类型线程可以由第一终端对应的操作系统运算调度,从而实现对设备源数据加密;也可以由第二终端对应的操作系统运算调度,从而实现对设备源数据加密。

S3062:采用第三类型线程校对加密设备数据,并采用第四类型线程生成加密设备数据对应的数据传输信息。

在本申请实施例中,为了保证传输的加密设备数据正确无误,需要对加密设备数据进行校对,其中,可以校对加密设备数据的数据包数,数据类型等信息。

数据传输信息是指用于记录数据传输情况的信息,包括但不限于第一终端的设备信息、第二终端的设备信息、传输数据时间、传输数据类型、传输数据总包数、传输数据成功包数、传输数据失败包数、数据传输节点等数据信息。

可选的,第一终端也可以采用第四类型线程生成加密设备数据对应的数据传输信息。

S3063:采用第四类型线程存储数据传输信息和加密设备数据。

具体的,采用第四类型线程将加密设备数据存储至第一存储空间;以及,采用第四类型线程基于数据传输信息对第二存储空间中的历史传输信息进行更新,历史传输信息包含针对第二终端的至少一个历史加密设备数据的传输信息。

需要说明的是,在第一次数据传输完成,第四类型线程将数据传输线程存储在第二存储空间中,在后续的每一次数据传输过程中,对前一次的数据船速信息(也即历史传输信息) 更新至当前传输过程所生成的数据传输信息。

需要说明的是,在第一终端中设置一个第一存储空间,用于存储加密设备数据,该第一存储空间可以为在第一终端中增设一个大容量存储器,也可以在第一终端中现有的存储器(内存储器或主存储器)中开辟一个大的存储空间,在第一终端中设置一个第二存储空间,用于存储数据传输信息,该第二存储空间可以为在第一终端的只读存储器(Read-OnlyMemory, ROM)中开辟的存储空间。

同理的,在第二终端中设置一个第一存储空间,用于存储加密设备数据,该第一存储空间可以为在第二终端中增设一个大容量存储器,也可以在第二终端中现有的存储器(内存储器或主存储器)中开辟一个大的存储空间,在第二终端中设置一个第二存储空间,用于存储数据传输信息,该第二存储空间可以为在第二终端的只读存储器中开辟的存储空间。

示意性的,如图13所示,一种可行的多线程同步模式的举例示意图,包括第一终端与第二终端之间的第一类型线程、第二类型线程、第三类型线程以及第四类型线程;

可选的,可以采用第五类型线程维护第一终端与第二终端之间的上下文环境,以避免数据传输过程影响到终端上的其他运行操作。可以采用第六类型线程唤醒第三类型线程以及第四类型线程,以使第三类型线程可以及时的对加密设备进行校对,以及第四类型线程可以生成加密设备数据对应的数据传输信息。

S307:第一终端基于数据传输信息,确定加密设备数据的传输状态。

具体的,第一终端可以通过传输数据总包数、传输数据成功包数、传输数据失败包数等数据传输信息,确定加密设备数据传输是否成功,也即该出书状态时传输成功状态还是传输失败状态。

示意性的,当传输失败包数与传输数据总包数的比值大于比值阈值,则可以确定传输状态为传输失败状态。易于理解的是,比值阈值是指传输失败包数与传输数据总包数对应的比值的门限值或临界值,用于判断数据传输是否成功。

可选的,第二终端基于数据传输信息,确定加密设备数据的传输状态。其中,第二终端确定加密设备数据对应的传输状态与第一终端确定加密设备数据对应的传输状态属于同一构思,具体可参见第一终端确定加密设备数据对应的传输状态,此处不再赘述。

S308:若传输状态为传输失败状态,则第二终端基于数据传输信息向第一终端重新传输加密设备数据。

根据一些申请实施例,若传输状态为传输失败状态,则第二终端可以通过数据传输信息确定数据传输错误的原因,并在重新传输加密设备数据的过程中避免再次出现传输失败的情况。

具体的,第二终端可以在数据传输信息中确定传输失败包数,并生成传输失败包数对应的加密设备数据,将该加密设备数据重新传输第一终端。

S309:第一终端基于数据传输信息重新获取加密设备数据。

在本申请实施例中,当第一终端确定传输状态为传输失败状态,可以由第一终端主动请求第二终端再次发送加密设备传输数据,第二终端在接收该请求后,验证数据传输状态,若第二终端确定传输状态为传输失败状态,则重新发送加密设备数据至第一终端,以使第一终端重新获取加密设备数据。

可选的,当第二终端确定传输状态为传输失败状态,可以由第二终端主动发送加密设备传输数据至第一终端,第一终端在接收到加密设备传输数据后,验证数据传输状态,若第一终端确定传输状态为传输失败状态,则获取该加密设备数据。

在本申请实施例中,第一终端获取的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则第一终端可以对获取到的加密设备数据进行解密,从而可以读取到第二终端(故障终端)的设备数据,进而对设备数据进行有效的数据容灾。此外,在第一终端与第二终端在传输数据之前进行鉴权认证,从而避免在数据传输过程中出现数据泄露的问题,以及确保接收到的加密设备数据的安全性。更进一步的,采用多线程模式传输数据,可以保证数据传输的状态,使得数据传输更加稳定。

在一个实施例中,如图14所示,特提出了一种数据容灾方法,该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的数据容灾装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。

具体的,该数据容灾方法包括:

S401:在第二终端处于设备正常状态,生成第二终端的设备源数据对应的加密设备数据。

在本申请实施例中,设备正常状态可以是指第二终端的硬件使用正常以及软件运行正常的状态;也可以是指出现部分硬件使用异常(如扬声器播放音频的声调不准)或部分软件运行异常(如聊天软件闪退)等故障问题但不影响第二终端中设备源数据的读取的设备状态,同时第二终端在该设备状态下可以生成设备源数据对应的加密设备数据,以及发送该加密设备数据。

根据一些实施例,设备源数据对应的加密设备数据是指第二终端的设备源数据经过加密处理后生成的加密数据,其中,对设备源数据进行加密处理可以保证设备源数据在传输过程或存储过程中的完整性,同时可以避免设备源数据被滥用,从而保证的设备源数据的安全性。需要说明的是,设备源数据是指在第二终端中用户所存储使用的各种数据以及第二终端在实现功能时所需的数据。

S402:向第一终端发送加密设备数据,加密设备数据用于指示第一终端在确定第二终端处于设备故障状态时对加密设备数据进行解密生成目标设备数据。

根据一些实施例,第二终端采用预设的通信连接方式建立与第一终端的通信连接,并通过该通信连接将目标设备数据发送至第一终端。

另外,上述提供的数据容灾系统实施例与一些实施例中的所述数据容灾方法属于同一构思,其体现实现过程详见方法实施例,此处不再赘述。

在本申请实施例中,在所述第二终端处于设备正常状态,第二终端生成所述第二终端的设备源数据对应的加密设备数据,向第一终端发送加密设备数据,所述加密设备数据用于指示所述第一终端在确定所述第二终端处于设备故障状态时对所述加密设备数据进行解密生成目标设备数据。其中,第二终端发送的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则可以通过第一终端读取到第二终端(故障终端)的设备数据,从而对设备数据进行有效的数据容灾。

下面将结合图15,对本申请实施例提供的数据容灾装置进行详细介绍。需要说明的是,图15所示的数据容灾装置,用于执行本申请图1~图14所示实施例的方法,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请图1~图14所示的实施例。

请参见图15,其示出本申请实施例的数据容灾装置的结构示意图。该数据容灾装置1可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。根据一些实施例,该数据容灾装置1包括数据存储模块11和数据解密模块12,具体用于:

数据存储模块11,用于在第二终端处于设备正常状态时,获取针对所述第二终端的加密设备数据,并对所述加密设备数据进行存储,所述加密设备数据为所述第二终端的设备源数据对应的加密数据;

数据解密模块12,用于确定所述第二终端处于设备故障状态,对所述加密设备数据进行解密生成目标设备数据。

可选的,如图16所示,所述装置1,还包括:

状态确定模块13,用于获取所述第二终端发送的状态信号,基于所述状态信号确定所述第二终端的设备状态,所述设备状态包括设备正常状态和设备故障状态。

可选的,所述状态确定模块13,包括:

正常确定单元131,用于若在时间阈值内接收到所述状态信号,则确定所述第二终端处于设备正常状态;

故障确定单元132,用于若在所述时间阈值内未接收到所述状态信号,则确定所述第二终端处于设备故障状态。

可选的,所述数据解密模块12,包括:

数据获取单元121,用于基于数据容灾网络中的至少一个参考第一终端,获取针对所述第二终端同步的加密设备数据,所述加密设备数据为所述第二终端处于设备正常状态时向所述第二终端获取;和/或,

数据同步单元122,用于在第二终端处于设备正常状态时,获取针对所述第二终端的加密设备数据,并将所述加密设备数据同步至所述数据容灾网络中的至少一个参考第一终端;

其中,所述数据容灾网络包括所述第一终端、所述第二终端以及各所述参考第一终端。

可选的,所述装置1,还包括:

运行环境模块14,用于基于所述目标设备数据对所述第二终端上的至少一个目标功能进行故障容灾处理,得到故障容灾处理后的针对各所述目标功能的功能运行环境;

功能运行模块15,用于基于所述目标设备数据,在所述功能运行环境中运行所述至少一个目标功能。

可选的,所述运行环境模块14,具体用于:

基于所述目标设备数据向容灾服务器发送故障容灾指令,所述故障容灾指令用于指示所述容灾服务器构建针对各所述目标功能的功能运行环境;

所述功能运行模块15,具体用于:

基于与所述容灾服务器的功能模拟服务,在所述功能运行环境中运行所述至少一个目标功能。

可选的,所述运行环境模块14,具体用于:

基于所述目标设备数据划分针对所述第二终端上的至少一个目标功能的设备运行空间,在所述设备运行空间中构建所述至少一个目标功能对应的功能运行环境。

可选的,所述数据存储模块11,包括:

模式开启单元111,用于开启针对所述第二终端的数据容灾模式;

信息确定单元112,用于基于所述数据容灾模式获取针对所述第二终端的加密设备数据,确定所述加密设备数据对应的数据传输信息;

信息存储单元113,用于对所述数据传输信息和所述加密设备数据进行存储。

可选的,所述模式开启单元111,具体用于:

开启与数据容灾网络中的至少一个参考第一终端的数据容灾模式,基于所述数据容灾模式从所述参考第一终端处获取针对所述第二终端的加密设备数据;和/或,

开启与所述第二终端的数据容灾模式,从所述第二终端处获取针对所述第二终端的加密设备数据。

可选的,所述信息确定单元112,具体用于:

采用第一类型线程接收所述加密设备数据,所述加密设备数据为所述第二终端采用第二类型线程对设备源数据进行加密生成的数据;

采用第三类型线程校对所述加密设备数据,并采用第四类型线程生成所述加密设备数据对应的数据传输信息;

所述信息存储单元113,具体用于:

采用所述第四类型线程存储所述数据传输信息和所述加密设备数据。

可选的,所述信息存储单元113,包括:

空间存储子单元1131,用于采用所述第四类型线程将所述加密设备数据存储至第一存储空间;以及,

信息更新子单元1132,用于采用所述第四类型线程基于数据传输信息对第二存储空间中的历史传输信息进行更新,所述历史传输信息包含针对所述第二终端的至少一个历史加密设备数据的传输信息。

可选的,所述数据存储模块11,还包括:

传输确定单元114,用于基于所述数据传输信息,确定所述加密设备数据的传输状态;

数据传输单元115,若所述传输状态为传输失败状态,则基于所述数据传输信息重新获取所述加密设备数据。

可选的,所述数据存储模块11,还包括:

界面显示单元114,用于显示包含数据容灾网络中的至少一个参考第一终端的数据容灾界面;响应于针对至少一个参考第一终端中的目标设备所输入的终端选择指令,控制所述目标设备执行对所述加密设备数据进行解密生成目标设备数据的步骤;和/或,

任务发布模块115,用于向数据容灾网络中的各参考第一终端发布针对所述第二终端的数据容灾同步任务;基于所述数据容灾同步任务指示各参考第一终端根据预设共识机制竞争针对所述数据容灾同步任务的计算权,确定所述计算权对应的目标设备;控制所述目标设备执行对所述加密设备数据进行解密生成目标设备数据的步骤。

可选的,所述任务发布模块115,具体用于:

基于所述数据容灾同步任务指示与各参考第一终端获取计算关联参数并根据所述计算关联参数采用预设共识机制共同确定针对所述数据容灾同步任务的计算权;其中,所述计算关联参数包括富余计算资源、系统环境参数和设备状态信息中的至少一种。

可选的,所述装置1,还包括:

鉴权认证模块16,用于采用至少一种通信连接方式建立与所述第二终端的通信连接,基于所述通信连接确定针对所述第二终端的鉴权认证状态;

鉴权通过模块17,用于若所述鉴权认证状态为鉴权通过状态,执行所述在第二终端处于设备正常状态时执行所述获取针对所述第二终端的加密设备数据的步骤。

可选的,所述鉴权认证模块16,包括:

信息发送单元161,用于基于所述通信连接获取所述第二终端对应的第二设备信息,基于所述第二设备信息向所述第二终端发送第一设备信息;

认证确定单元162,用于基于所述第一设备信息,确定针对所述第二终端的鉴权认证状态。

可选的,所述信息发送单元161,具体用于:

基于所述第二设备信息确定所述第二终端属于预设白名单中的设备,向所述第二终端发送第一设备信息;

所述认证确定单元162,具体用于:

接收所述第二终端反馈的设备验证状态,基于所述设备验证状态确定针对所述第二终端的鉴权认证状态;所述设备验证状态为所述第二终端基于所述第一设备信息确定所述第一终端属于预设白名单中的设备时生成。

在本申请实施例中,在第二终端处于设备正常状态时,第一终端获取针对所述第二终端的加密设备数据,并对所述加密设备数据进行存储,所述加密设备数据为所述第二终端的设备源数据对应的加密数据;第一终端确定所述第二终端处于设备故障状态,对所述加密设备数据进行解密生成目标设备数据。其中,第一终端获取的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则第一终端可以对获取到的加密设备数据进行解密,从而可以读取到第二终端(故障终端)的设备数据,进而对设备数据进行有效的数据容灾。

请参见图17,其示出本申请实施例的数据容灾装置的结构示意图。该数据容灾装置2可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。根据一些实施例,该数据容灾装置2包括数据存储模块21和数据解密模块22,具体用于:

数据生成模块21,用于在所述第二终端处于设备正常状态,生成所述第二终端的设备源数据对应的加密设备数据;

数据发送模块22,用于向第一终端发送加密设备数据,所述加密设备数据用于指示所述第一终端在确定所述第二终端处于设备故障状态时对所述加密设备数据进行解密生成目标设备数据。

在本申请实施例中,在所述第二终端处于设备正常状态,第二终端生成所述第二终端的设备源数据对应的加密设备数据,向第一终端发送加密设备数据,所述加密设备数据用于指示所述第一终端在确定所述第二终端处于设备故障状态时对所述加密设备数据进行解密生成目标设备数据。其中,第二终端发送的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则可以通过第一终端读取到第二终端(故障终端)的设备数据,从而对设备数据进行有效的数据容灾。

需要说明的是,上述实施例提供的数据容灾装置在执行数据容灾方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据容灾装置与数据容灾方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图1~图14所示实施例的所述数据容灾方法,具体执行过程可以参见图1~图14所示实施例的具体说明,在此不进行赘述。

本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行如上述图1~图14所示实施例的所述数据容灾方法,具体执行过程可以参见图1~图14所示实施例的具体说明,在此不进行赘述。

请参见图18,为本申请实施例提供了一种第一终端的结构示意图。如图18所示,所述第一终端1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。

其中,通信总线1002用于实现这些组件之间的连接通信。

其中,用户接口1003可以包括显示屏(Display)、摄像头(Camera),可选用户接口1003还可以包括标准的有线接口、无线接口。

其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。

其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种借口和线路连接整个服务器1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行服务器1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。

其中,存储器1005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001 的存储装置。如图18所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据容灾应用程序。具体为:在第二终端处于设备正常状态时,第一终端获取针对所述第二终端的加密设备数据,并对所述加密设备数据进行存储,所述加密设备数据为所述第二终端的设备源数据对应的加密数据;第一终端确定所述第二终端处于设备故障状态,对所述加密设备数据进行解密生成目标设备数据。其中,第一终端获取的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则第一终端可以对获取到的加密设备数据进行解密,从而可以读取到第二终端(故障终端)的设备数据,进而对设备数据进行有效的数据容灾。

请参见图19,为本申请实施例提供了一种第二终端的结构示意图。如图19所示,所述第二终端2000可以包括:至少一个处理器2001,至少一个网络接口2004,用户接口2003,存储器2005,至少一个通信总线2002。

其中,通信总线2002用于实现这些组件之间的连接通信。

其中,用户接口2003可以包括显示屏(Display)、摄像头(Camera),可选用户接口2003还可以包括标准的有线接口、无线接口。

其中,网络接口2004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。

其中,处理器2001可以包括一个或者多个处理核心。处理器2001利用各种借口和线路连接整个服务器2000内的各个部分,通过运行或执行存储在存储器2005内的指令、程序、代码集或指令集,以及调用存储在存储器2005内的数据,执行服务器2000的各种功能和处理数据。可选的,处理器2001可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器2001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器2001中,单独通过一块芯片进行实现。

其中,存储器2005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器2005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器2005可用于存储指令、程序、代码、代码集或指令集。存储器2005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器2005可选的还可以是至少一个位于远离前述处理器2001 的存储装置。如图19所示,作为一种计算机存储介质的存储器2005中可以包括操作系统、网络通信模块、用户接口模块以及数据容灾应用程序。具体为:在所述第二终端处于设备正常状态,第二终端生成所述第二终端的设备源数据对应的加密设备数据,向第一终端发送加密设备数据,所述加密设备数据用于指示所述第一终端在确定所述第二终端处于设备故障状态时对所述加密设备数据进行解密生成目标设备数据。其中,第二终端发送的加密设备数据为加密数据,可以保证加密设备数据的安全性以及完整性,进一步的,若第二终端处于设备故障状态,则可以通过第一终端读取到第二终端(故障终端)的设备数据,从而对设备数据进行有效的数据容灾。

除此之外,本领域技术人员可以理解,上述附图所示出的电子设备的结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,电子设备中还包括射频电路、输入单元、传感器、音频电路、无线保真 (wireless fidelity,WiFi)模块、电源、蓝牙模块等部件,在此不再赘述。

在本申请实施例中,各步骤的执行主体可以是上文介绍的电子设备。可选地,各步骤的执行主体为电子设备的操作系统。操作系统可以是安卓系统,也可以是IOS系统,或者其它操作系统,本申请实施例对此不作限定。

本申请实施例的电子设备(包括第一终端以及第二终端),其上还可以安装有显示设备,显示设备可以是各种能实现显示功能的设备,例如:阴极射线管显示器(cathode raytubedisplay,简称CR)、发光二极管显示器(light-emitting diode display,简称LED)、电子墨水屏、液晶显示屏(liquid crystal display,简称LCD)、等离子显示面板(plasmadisplay panel,简称PDP)等。用户可以利用电子设备上的显示设备,来查看显示的文字、图像、视频等信息。所述电子设备可以是智能手机、平板电脑、游戏设备、AR(AugmentedReality,增强现实) 设备、汽车、数据存储装置、音频播放装置、视频播放装置、笔记本、桌面计算设备、可穿戴设备诸如电子手表、电子眼镜、电子头盔、电子手链、电子项链、电子衣物等设备。

本领域的技术人员可以清楚地了解到本申请的技术方案可借助软件和/或硬件来实现。本说明书中的“单元”和“模块”是指能够独立完成或与其他部件配合完成特定功能的软件和/ 或硬件,其中硬件例如可以是现场可编程门阵列(Field-ProgrammaBLE GateArray,FPGA)、集成电路(Integrated Circuit,IC)等。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些服务接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通进程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory, RAM)、磁盘或光盘等。

以上所述者,仅为本公开的示例性实施例,不能以此限定本公开的范围。即但凡依本公开教导所作的等效变化与修饰,皆仍属本公开涵盖的范围内。本领域技术人员在考虑说明书及实践这里的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未记载的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的范围和精神由权利要求限定。

相关技术
  • 数据容灾方法、装置、电子设备和可读存储介质
  • 大数据容灾方法、装置和电子设备
技术分类

06120113228928