1.本发明涉及分布式数据库的数据恢复技术领域,特别是涉及一种分布式数据库的数据恢复方法、一种分布式数据库的数据恢复装置、一种电子设备以及一种计算机可读存储介质。
背景技术:2.mysql是一种开源关系数据库系统,在全球大多数企业技术栈中占有一席之地。估计每天有数以万计的下载次数,mysql数据库因为其具备了可靠性高、实惠且易于使用等特点,被很多高性能数据库的开发者、管理员和it经理的作为第一选择。
3.在相关技术中,为了防止mysql数据库中的数据丢失,一般会采用如下方式恢复丢失数据,开发人员将针对原数据的全局二进制日志binlog备份在本地或服务器,当数据丢失时,采可以用全局二进制日志binlog进行碎片化进行数据恢复,但是,采可以用全局二进制日志binlog进行碎片化进行数据恢复会造成数据恢复不全面的问题,从而导致分布式数据库的数据恢复效率低下。
技术实现要素:4.本发明实施例是提供一种分布式数据库的数据恢复方法、装置、电子设备以及计算机可读存储介质,以解决如何提高分布式数据库的数据恢复效率的问题。
5.本发明实施例公开了一种分布式数据库的数据恢复方法,所述分布式数据库具有多个储存单元,可以包括:
6.从所述储存单元中确定出目标储存单元;
7.获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;
8.将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;
9.当需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据。
10.可选地,所述目标储存单元配置有图形化处理模块,所述生成用于表达所述待储存数据的二维码图像的步骤可以包括:
11.采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像。
12.可选地,所述采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像的步骤可以包括:
13.采用所述图形化处理模块基于二进制算法将所述待储存数据转化为第一二进制数列;
14.通过所述第一二进制数列生成第二二进制数列;
15.采用所述第二二进制数列生成二维码图像;所述第二二进制数列为加密数列。
16.可选地,在所述从所述目标储存单元调取所述二维码图像的步骤之前,还可以包括:
17.获取由用户发送的身份校验信息;
18.采用所述身份校验信息判断所述用户的访问是否合法;
19.若是,则执行所述从所述目标储存单元调取所述二维码图像的步骤。
20.可选地,所述采用所述二维码图像生成针对所述待储存数据的恢复数据的步骤可以包括:
21.采用所述图形化处理模块对所述二维码图像进行解析,并生成针对所述待储存数据的恢复数据。
22.本发明实施例还公开了一种分布式数据库的数据恢复装置,所述分布式数据库具有多个储存单元,可以包括:
23.目标储存单元确定模块,用于从所述储存单元中确定出目标储存单元;
24.待储存数据获取模块,用于获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;
25.待储存数据储存模块,用于将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;
26.待储存数据恢复模块,用于在需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据。
27.可选地,所述目标储存单元配置有图形化处理模块,所述待储存数据获取模块可以包括:
28.图形化处理子模块,用于采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像。
29.可选地,所述图形化处理子模块可以包括:
30.第一二进制数列转化单元,用于采用所述图形化处理模块基于二进制算法将所述待储存数据转化为第一二进制数列;
31.第二二进制数列转化单元,用于通过所述第一二进制数列生成第二二进制数列;
32.二维码图像生成单元,用于采用所述第二二进制数列生成二维码图像;所述第二二进制数列为加密数列。
33.可选地,还可以包括:
34.校验信息获取模块,用于获取由用户发送的身份校验信息;
35.合法访问判断模块,用于采用所述身份校验信息判断所述用户的访问是否合法;
36.若是,则调用待储存数据恢复模块。
37.可选地,所述待储存数据恢复模块包括:
38.恢复数据生成子模块,用于采用所述图形化处理模块对所述二维码图像进行解析,并生成针对所述待储存数据的恢复数据。
39.本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通
信;
40.所述存储器,用于存放计算机程序;
41.所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。
42.本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。
43.本发明实施例包括以下优点:通过从所述储存单元中确定出目标储存单元;获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;当需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据,从而使恢复数据能够完整体现待恢复数据,进而提高了分布式数据库的数据恢复效率。
附图说明
44.图1是本发明实施例中提供的一种分布式数据库的数据恢复方法的步骤流程图;
45.图2是本发明实施例中提供的一种分布式数据库的数据恢复装置的结构框图;
46.图3是本发明各实施例中提供的一种电子设备的硬件结构框图。
具体实施方式
47.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
48.参照图1,示出了本发明实施例中提供的一种分布式数据库的数据恢复方法的步骤流程图,具体可以包括如下步骤:
49.步骤101,从所述储存单元中确定出目标储存单元;
50.步骤102,获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;
51.步骤103,将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;
52.步骤104,当需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据。
53.在具体实现中,本发明实施例可以运用于分布式数据库,例如,mysql数据库,分布式数据库可以包括多个储存单元,储存单元并非是本地储存器,也不是分布式数据库以外的服务器,储存单元属于分布式数据库,例如,mysql数据库中的dn储存单元。
54.本发明实施例可以从分布式数据库的储存单元中确定出一个或多个目标储存单元,例如,mysql数据库包括dn1、dn2、dn3、dn4、dn5,可以将dn5确定为目标储存单元,并将dn5标记为backup备份数据储存单元,以使dn5作为专门用于储存备份数据的储存单元。
55.本发明实施例可以获取待储存数据,并在储存待储存数据时,生成针对该待储存
数据,且用于表达该待储存数据的二维码图像。
56.在具体实现中,本发明实施例的待储存数据可以是用于储存至分布式数据库的数据,例如,文本数据、图像数据等等,在获取到待储存数据后,在储存待储存数据时,本发明实施例可以生成针对待储存数据的二维码图像,具体地,可以将待储存数据转化为二进制数列,然后采用该二进制数列生成用于表达该待储存数据所有信息的二维码图像。
57.例如,假设待储存数据为文本数据“345”,可以先获取“345”这一文本数据,然后对“345”进行二进制转换得到二进制数列101011001,再采用二进制数列101011001生成二维码图像。
58.在确定出目标储存单元,以及,生成用于表达待储存数据的二维码图像后,本发明实施例可以,将待储存数据储存至储存单元中,并将二维码图像储存至目标储存单元中。
59.例如,mysql数据库包括dn1、dn2、dn3、dn4、dn5,可以将dn5确定为目标储存单元,并将dn5标记为backup备份数据储存单元,以使dn5作为专门用于储存备份数据的储存单元;现假设待储存数据为文本数据“345”,可以先获取“345”这一文本数据,然后对“345”进行二进制转换得到二进制数列101011001,再采用二进制数列101011001生成二维码图像,然后将文本数据“345”储存至dn1-dn4任一储存单元中,将二维码图像储存于目标储存单元dn5中,以使文本数据“345”受到正常存储服务的同时,将二维码图像作为文本数据“345”的备份数据储存于目标储存单元dn5中。
60.当然,上述例子仅作为示例,本领域技术人员可以将其他数据作为待储存数据,例如,占用内存空间较大的音、视频数据等等,对此,本发明实施例不作限制。
61.在实际应用中,若待储存数据为占用内存空间较大的数据时,例如,视频数据,相比起直接复制待储存数据作为备份数据,将待储存数据转化为二进制图像作为备份数据,可以有效的缩减备份数据占用目标储存单元的内存空间,所以,在本发明的一个可选地实施例中,在所述将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中的步骤之前,先判断二维码图像所占的字节数是否小于待储存数据的字节数,若是,则执行所述将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中的步骤,从而可以在二维码图像所占的字节数小于待储存数据的字节数的情况下,有效的降低分布式数据库的数据恢复成本。
62.在实际应用中,当储存于分布式数据库的数据被删除或是数据损坏时,都可以导致用户无法提取该数据,用户若仍想提取该原数据,则需要通过备份数据对原数据进行数据恢复,所以,本发明实施例可以先判断用户是否需要提取待储存数据,例如,可以判断是否接收到用户向mysql数据库发送针对经存储的待储存数据的下载请求,当判定用户需要提取待储存数据后,可以再判断经存储的待储存数据是否被删除于储存单元,以及,判断待储存数据是否为损坏数据,当判定经存储的待储存数据已被删除于储存单元,或经存储的待储存数据为损坏数据时,从目标储存单元调取所述二维码图像,并采用二维码图像生成针对待储存数据的恢复数据,具体地,可以将二维码图像转换成用于表达待储存数据的二进制数列,然后再将该二进制数列转换成与待储存数据相同的恢复数据。
63.例如,mysql数据库包括dn1、dn2、dn3、dn4、dn5,可以将dn5确定为目标储存单元,并将dn5标记为backup备份数据储存单元,以使dn5作为专门用于储存备份数据的储存单元;现假设待储存数据为文本数据“345”,可以先获取“345”这一文本数据,然后对“345”进
行二进制转换得到二进制数列101011001,再采用二进制数列101011001生成二维码图像,然后可以将文本数据“345”储存至dn1-dn4任一储存单元中,将二维码图像储存于目标储存单元dn5中,以使文本数据“345”受到正常存储服务的同时,将二维码图像作为文本数据“345”的备份数据储存于目标储存单元dn5中。假设文本数据“345”储存至dn4储存单元中,现监测到用户向mysql发送了针对文本数据“345”的下载请求信息,则可以判定需要从dn4储存单元中提取文本数据“345”,此时,可以判断文本数据“345”是否已经被删除于dn4储存单元中,若是,则可以调用储存于目标储存单元dn5中的二维码图像,并将二维码图像转换成用于表达待储存数据的二进制数列101011001,然后再将该二进制数列101011001转换成与待储存数据相同的恢复数据“345”;当然,即便待检测数据仍存储于目标储存单元,但因检测到待储存数据为损坏数据,用户也无法提取所述待储存数据,所以,在监测到用户向mysql发送了针对文本数据“345”的下载请求信息,且判定文本数据“345”未被删除于dn4储存单元中时,可以判断文本数据“345”是否为损坏数据,若文本数据“345”为损坏数据,即,因检测到文本数据“345”为损坏数据而无法提取文本数据“345”时,则同样可以调用储存于目标储存单元dn5中的二维码图像,并将二维码图像转换成用于表达待储存数据的二进制数列101011001,然后再将该二进制数列101011001转换成与待储存数据相同的恢复数据“345”。
64.本发明实施例,通过从所述储存单元中确定出目标储存单元;获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;当需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据,从而使恢复数据能够完整体现待恢复数据,进而提高了分布式数据库的数据恢复效率。
65.在上述实施例的基础上,提出了上述实施例的变型实施例,在此需要说明的是,为了使描述简要,在变型实施例中仅描述与上述实施例的不同之处。
66.在本发明的一个可选地实施例中,所述目标储存单元配置有图形化处理模块,所述生成用于表达所述待储存数据的二维码图像的步骤包括:
67.采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像。
68.在实际应用中,为了避免分别处于上下游的分布式数据库无法兼容生成用于表达待储存数据的二维码图像这一功能,本发明实施例可以为确定出的目标储存单元配置图形化处理模块,以使所有的分布式数据库都能够采用图形化处理模块生成用于表达待储存数据的二维码图像,从而实现了处于上下游的分布式数据库都能兼容生成用于表达待储存数据的二维码图像这一功能。
69.所述采用所述二维码图像生成针对所述待储存数据的恢复数据的步骤包括:
70.采用所述图形化处理模块对所述二维码图像进行解析,并生成针对所述待储存数据的恢复数据。
71.由上可知,本发明实施例为了避免分别处于上下游的分布式数据库无法兼容生成用于表达待储存数据的二维码图像这一功能,可以为确定出的目标储存单元配置图形化处理模块,以使所有的分布式数据库都能够采用图形化处理模块生成用于表达待储存数据的
二维码图像,所以,在用户需要恢复数据时,本发明实施例也可以直接采用图形化处理模块对二维码图像进行解析,并生成针对待储存数据的恢复数据,无需采用其他装置对二维码图像进行解析,从而更进一步地提高了分布式数据库的数据恢复效率。
72.在本发明的一个可选地实施例中,所述采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像的步骤包括:
73.采用所述图形化处理模块基于二进制算法将所述待储存数据转化为第一二进制数列;
74.通过所述第一二进制数列生成第二二进制数列;
75.采用所述第二二进制数列生成二维码图像;所述第二二进制数列为加密数列。
76.在实际应用中,若分布式数据库受到攻击,且二维码图像是由待储存数据直接经二进制转化得来,则会存在较大的泄密风险,所以,本发明实施例可以在对二维码图像进行加密,从而降低在分布式数据库受到攻击时的泄密风险,具体地,本发明实施例可以采用图形化处理模块基于二进制算法将待储存数据转化为第一二进制数列,然后对第一二进制数列进行加密后,生成第二二进制数列,再采用经加密的第二二进制数列生成二维码图像。
77.示例性地,本发明实施例可以将第一二进制数列进行逐位反转加密,生成第二二进制数列。
78.例如,假设待储存数据为文本数据“304”,则可以将304进行二进制转化生成第一二进制数列“100110000”,然后对第一二进制数列“100110000”进行逐位反转加密,生成第二二进制数列“011001111”。
79.示例性地,本发明实施例可以获取时间信息,并通过对第一二进制数列和时间信息进行异或运算,生成第二二进制数列。
80.例如,假设待储存数据为文本数据“345”,对文本数据“345”进行二进制转换得到第一二进制数列101011001,假设获取待储存数据的日期为2022年3月30号,则可以获取这一时间信息,将其记作20220330,将20220330进行二进制转换得到二进制数列1001101001000100110101010,通过对时间信息和第一二进制数列101011001进行异或运算101011001xor1001101001000100110101010=第二二进制数列100110100100010001111001。
81.可选地,当加密方式为通过对第一二进制数列和时间信息进行异或运算,生成第二二进制数列时,时间信息可以作为密匙。
82.当然,上述仅作为示例,本领域技术人员可以基于任意加密算法通过第一二进制数列生成第二二进制数列,对此,本发明实施例不作限制。
83.本发明实施例,通过采用所述图形化处理模块基于二进制算法将所述待储存数据转化为第一二进制数列;通过所述第一二进制数列生成第二二进制数列;采用所述第二二进制数列生成二维码图像;所述第二二进制数列为加密数列,从而有效降低了分布式数据库在受到攻击时的泄密风险。
84.在本发明的一个可选地实施例中,在所述从所述目标储存单元调取所述二维码图像的步骤之前,还包括:
85.获取由用户发送的身份校验信息;
86.采用所述身份校验信息判断所述用户的访问是否合法;
87.若是,则执行所述从所述目标储存单元调取所述二维码图像的步骤。
88.在实际应用中,如果是非法用户进入他人的计算机或者服务器进行的操作,则会存在较大的泄密风险,所以,本发明实施例可以在从目标储存单元调取二维码图像之前,先获取由用户发送的身份校验信息,并采用身份校验信息判断用户的访问是否合法,当判定该用户的访问合法时,才从目标储存单元调取二维码图像以实现数据恢复。
89.可选地,身份校验信息可以是预设密码或是手机动态验证码。
90.在本发明实施例中,获取由用户发送的身份校验信息;采用所述身份校验信息判断所述用户的访问是否合法;若是,则执行所述从所述目标储存单元调取所述二维码图像的步骤,降低了分布式数据库在进行数据恢复时,遭受非法登录的泄密风险。
91.需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
92.参照图2,示出了本发明实施例中提供的一种分布式数据库的数据恢复装置的结构框图,具体可以包括如下模块:
93.目标储存单元确定模块201,用于从所述储存单元中确定出目标储存单元;
94.待储存数据获取模块202,用于获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;
95.待储存数据储存模块203,用于将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;
96.待储存数据恢复模块204,用于在需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据。
97.可选地,所述目标储存单元配置有图形化处理模块,所述待储存数据获取模块可以包括:
98.图形化处理子模块,用于采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像。
99.可选地,所述图形化处理子模块可以包括:
100.第一二进制数列转化单元,用于采用所述图形化处理模块基于二进制算法将所述待储存数据转化为第一二进制数列;
101.第二二进制数列转化单元,用于通过所述第一二进制数列生成第二二进制数列;
102.二维码图像生成单元,用于采用所述第二二进制数列生成二维码图像;所述第二二进制数列为加密数列。
103.可选地,还可以包括:
104.校验信息获取模块,用于获取由用户发送的身份校验信息;
105.合法访问判断模块,用于采用所述身份校验信息判断所述用户的访问是否合法;
106.若是,则调用待储存数据恢复模块。
107.可选地,所述待储存数据恢复模块可以包括:
108.恢复数据生成子模块,用于采用所述图形化处理模块对所述二维码图像进行解析,并生成针对所述待储存数据的恢复数据。
109.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
110.另外,本发明实施例还提供了一种电子设备,包括:处理器,存储器,存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述分布式数据库的数据恢复方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
111.本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述分布式数据库的数据恢复方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
112.图3为实现本发明各个实施例的一种电子设备的硬件结构示意图。
113.该电子设备300包括但不限于:射频单元301、网络模块302、音频输出单元303、输入单元304、传感器305、显示单元306、用户输入单元307、接口单元308、存储器309、处理器310、以及电源311等部件。本领域技术人员可以理解,图3中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
114.应理解的是,本发明实施例中,射频单元301可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器310处理;另外,将上行的数据发送给基站。通常,射频单元301包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元301还可以通过无线通信系统与网络和其他设备通信。
115.电子设备通过网络模块302为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
116.音频输出单元303可以将射频单元301或网络模块302接收的或者在存储器309中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元303还可以提供与电子设备300执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元303包括扬声器、蜂鸣器以及受话器等。
117.输入单元304用于接收音频或视频信号。输入单元304可以包括图形处理器(graphics processing unit,gpu)3041和麦克风3042,图形处理器3041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元306上。经图形处理器3041处理后的图像帧可以存储在存储器309(或其它存储介质)中或者经由射频单元301或网络模块302进行发送。麦克风3042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元301发送到移动通信基站的格式输出。
118.电子设备300还包括至少一种传感器305,比如光传感器、运动传感器以及其他传
感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板3061的亮度,接近传感器可在电子设备300移动到耳边时,关闭显示面板3061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器305还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
119.显示单元306用于显示由用户输入的信息或提供给用户的信息。显示单元306可包括显示面板3061,可以采用液晶显示器(liquid crystal display,lcd)、有机发光二极管(organic light-emitting diode,oled)等形式来配置显示面板3061。
120.用户输入单元307可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元307包括触控面板3071以及其他输入设备3072。触控面板3071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板3071上或在触控面板3071附近的操作)。触控面板3071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器310,接收处理器310发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板3071。除了触控面板3071,用户输入单元307还可以包括其他输入设备3072。具体地,其他输入设备3072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
121.进一步的,触控面板3071可覆盖在显示面板3061上,当触控面板3071检测到在其上或附近的触摸操作后,传送给处理器310以确定触摸事件的类型,随后处理器310根据触摸事件的类型在显示面板3061上提供相应的视觉输出。虽然在图3中,触控面板3071与显示面板3061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板3071与显示面板3061集成而实现电子设备的输入和输出功能,具体此处不做限定。
122.接口单元308为外部装置与电子设备300连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元308可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备300内的一个或多个元件或者可以用于在电子设备300和外部装置之间传输数据。
123.存储器309可用于存储软件程序以及各种数据。存储器309可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器309可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
124.处理器310是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各
个部分,通过运行或执行存储在存储器309内的软件程序和/或模块,以及调用存储在存储器309内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器310可包括一个或多个处理单元;优选的,处理器310可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器310中。
125.电子设备300还可以包括给各个部件供电的电源311(比如电池),优选的,电源311可以通过电源管理系统与处理器310逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
126.另外,电子设备300包括一些未示出的功能模块,在此不再赘述。
127.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
128.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
129.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
130.本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
131.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
132.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
133.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个
网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
134.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
135.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
136.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
技术特征:1.一种分布式数据库的数据恢复方法,其特征在于,所述分布式数据库具有多个储存单元,包括:从所述储存单元中确定出目标储存单元;获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;当需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据。2.根据权利要求1所述的方法,其特征在于,所述目标储存单元配置有图形化处理模块,所述生成用于表达所述待储存数据的二维码图像的步骤包括:采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像。3.根据权利要求2所述的方法,其特征在于,所述采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像的步骤包括:采用所述图形化处理模块基于二进制算法将所述待储存数据转化为第一二进制数列;通过所述第一二进制数列生成第二二进制数列;采用所述第二二进制数列生成二维码图像;所述第二二进制数列为加密数列。4.根据权利要求1所述的方法,其特征在于,在所述从所述目标储存单元调取所述二维码图像的步骤之前,还包括:获取由用户发送的身份校验信息;采用所述身份校验信息判断所述用户的访问是否合法;若是,则执行所述从所述目标储存单元调取所述二维码图像的步骤。5.根据权利要求2所述的方法,其特征在于,所述采用所述二维码图像生成针对所述待储存数据的恢复数据的步骤包括:采用所述图形化处理模块对所述二维码图像进行解析,并生成针对所述待储存数据的恢复数据。6.一种分布式数据库的数据恢复装置,其特征在于,所述分布式数据库具有多个储存单元,包括:目标储存单元确定模块,用于从所述储存单元中确定出目标储存单元;待储存数据获取模块,用于获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;待储存数据储存模块,用于将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;待储存数据恢复模块,用于在需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据。7.根据权利要求6所述的装置,其特征在于,所述目标储存单元配置有图形化处理模块,所述待储存数据获取模块包括:
图形化处理子模块,用于采用所述图形化处理模块生成用于表达所述待储存数据的二维码图像。8.根据权利要求7所述的装置,其特征在于,所述图形化处理子模块包括:第一二进制数列转化单元,用于采用所述图形化处理模块基于二进制算法将所述待储存数据转化为第一二进制数列;第二二进制数列转化单元,用于通过所述第一二进制数列生成第二二进制数列;二维码图像生成单元,用于采用所述第二二进制数列生成二维码图像;所述第二二进制数列为加密数列。9.根据权利要求6所述的装置,其特征在于,还包括:校验信息获取模块,用于获取由用户发送的身份校验信息;合法访问判断模块,用于采用所述身份校验信息判断所述用户的访问是否合法;若是,则调用待储存数据恢复模块。10.根据权利要求7所述的装置,其特征在于,所述待储存数据恢复模块包括:恢复数据生成子模块,用于采用所述图形化处理模块对所述二维码图像进行解析,并生成针对所述待储存数据的恢复数据。11.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-5任一项所述的方法。12.一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-5任一项所述的方法。
技术总结本发明实施例提供了一种分布式数据库的数据恢复方法和装置,通过从所述储存单元中确定出目标储存单元;获取待储存数据,并在储存所述待储存数据时,生成用于表达所述待储存数据的二维码图像;将所述待储存数据储存至所述储存单元中,并将所述二维码图像储存至所述目标储存单元中;当需要提取所述待储存数据,且所述待储存数据已被删除于所述储存单元,或所述待储存数据为损坏数据时,从所述目标储存单元调取所述二维码图像,并采用所述二维码图像生成针对所述待储存数据的恢复数据,从而使恢复数据能够完整体现待恢复数据,进而提高了分布式数据库的数据恢复效率。布式数据库的数据恢复效率。布式数据库的数据恢复效率。
技术研发人员:刘维
受保护的技术使用者:中国电信股份有限公司
技术研发日:2022.07.06
技术公布日:2022/11/1