CN110888760A - 数据恢复方法和装置、以及数据处理方法和装置 - Google Patents

数据恢复方法和装置、以及数据处理方法和装置 Download PDF

Info

Publication number
CN110888760A
CN110888760A CN201911179047.8A CN201911179047A CN110888760A CN 110888760 A CN110888760 A CN 110888760A CN 201911179047 A CN201911179047 A CN 201911179047A CN 110888760 A CN110888760 A CN 110888760A
Authority
CN
China
Prior art keywords
data
job
information
executed
storage table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911179047.8A
Other languages
English (en)
Inventor
朱冠洲
何宏烨
刘兆兴
陈诚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN201911179047.8A priority Critical patent/CN110888760A/zh
Publication of CN110888760A publication Critical patent/CN110888760A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Quality & Reliability (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开提供了由第一设备执行的数据恢复方法,该第一设备与第二设备通过传输控制协议通信。上述数据恢复方法包括:接收第二设备推送的待恢复数据的属性信息;根据属性信息,构建作业库,该作业库存储有用于恢复待恢复数据的多个待执行作业;以及运行多个待执行作业,以执行以下操作:构建数据存储表;从数据库中提取与属性信息匹配的待恢复数据;以及将待恢复数据导入数据存储表。本公开还提供了一种由第二设备执行的数据处理方法、一种设置于第一设备的数据恢复装置及一种设置于第二设备的数据处理装置。

Description

数据恢复方法和装置、以及数据处理方法和装置
技术领域
本公开涉及电子技术领域,更具体地,涉及一种数据恢复方法和装置,以及数据处理方法和装置。
背景技术
在金融领域中,一般存在两种数据恢复需求:一种为生产环境数据恢复需求,该需求包括数据变形和***需求;一种为验证环境数据恢复需求,该需求主要来自对公、个人客户数据查询的需求。
在实现本公开构思的过程中,发明人发现相关技术至少存在如下问题:相关技术中的数据恢复工具以及数据恢复流程往往需要工作人员人工裁剪作业进行提交。在提交作业后,若需要跟踪恢复进度,则需要多次登录进行进度查询。因此,相关技术中的数据恢复自动化较低、恢复效率较低,从而存在无法及时有效的满足用户需求的技术问题。
发明内容
有鉴于此,本公开提供了一种能够自动化完成数据恢复的数据恢复方法和装置,以及数据处理方法和装置。
本公开的一个方面提供了一种由第一设备执行的数据恢复方法,该第一设备与第二设备通过传输控制协议通信,该数据恢复方法包括:接收第二设备推送的待恢复数据的属性信息;根据属性信息,构建作业库,该作业库存储有用于恢复待恢复数据的多个待执行作业;以及运行多个待执行作业,以执行以下操作:构建数据存储表;从数据库中提取与属性信息匹配的待恢复数据;以及将待恢复数据导入数据存储表。
根据本公开的实施例,上述构建作业库包括:获取数据库的数据统计信息;根据数据统计信息及属性信息,确定待恢复数据的分布信息;根据待恢复数据的分布信息,确定多个待执行作业的数量;以及根据作业生成模板及属性信息生成多个待执行作业,以构建作业库。
根据本公开的实施例,上述多个待执行作业包括:存储表构建作业,用于构建数据存储表;至少一个数据提取作业,用于提取与属性信息匹配的待恢复数据;以及至少一个数据导入作业,用于将待恢复数据导入数据存储表。其中,至少一个数据导入作业与至少一个数据提取作业一一对应;在多个待执行作业包括多个数据提取作业与多个数据导入作业的情况下,并行执行多个数据提取作业和/或并行执行多个数据导入作业。
根据本公开的实施例,上述由第一设备执行的数据恢复方法还包括执行以下操作中的至少一个:响应于存储表构建作业的成功执行,向第二设备推送第一进度信息,该第一进度信息用于指示完成数据存储表的构建;响应于至少一个数据提取作业的成功执行,向第二设备推送第二进度信息,该第二进度信息用于指示完成所述待恢复数据的提取;以及响应于数据导入作业的成功执行,向第二设备推送第三进度信息,该第三进度信息用于指示完成待恢复数据的恢复。
根据本公开的实施例,上述由第一设备执行的数据恢复方法还包括在构建数据存储表的过程中,确定存储表构建作业是否成功执行;上述至少一个数据提取作业在存储表构建作业成功执行后执行;上述确定存储表构建作业是否成功执行包括:确定存储表构建作业位于执行队列还是位于执行完成队列;在存储表构建作业位于执行完成队列中的情况下,确定存储表构建作业是否反馈预定信息:在存储表构建作业反馈预定信息的情况下,确定存储表构建作业成功执行;以及在存储表构建作业未反馈预定信息的情况下,重新执行存储表构建作业。
根据本公开的实施例,上述由第一设备执行的数据恢复方法还包括在提取待恢复数据的过程中,确定至少一个数据提取作业是否成功执行;至少一个数据导入作业中的每个数据导入作业在对应的数据提取作业成功执行后执行;上述确定至少一个数据提取作业是否成功执行包括:确定至少一个数据提取作业中的每一个数据提取作业位于执行队列,还是位于执行完成队列;在至少一个数据提取作业中的任一数据提取作业位于执行完成队列的情况下,确定任一数据提取作业是否反馈预定信息;在任一数据提取作业反馈预定信息的情况下,确定任一数据提取作业成功执行;在任一数据提取作业未反馈预定信息的情况下,重新执行任一数据提取作业。其中,在至少一个数据提取作业中的每个数据提取作业均成功执行的情况下,确定至少一个数据提取作业成功执行。
根据本公开的实施例,上述由第一设备执行的数据恢复方法还包括在导入待恢复数据的过程中,确定至少一个数据导入作业是否成功执行。上述确定至少一个数据导入作业是否成功执行包括:确定至少一个数据导入作业中的每一个数据提取作业位于执行队列还是位于执行完成队列;在至少一个数据导入作业中的任一数据导入作业位于所述执行完成队列的情况下,确定任一数据导入作业是否反馈预定信息:在任一数据导入作业反馈预定信息的情况下,确定任一数据导入作业成功执行;在任一数据导入作业未反馈预定信息的情况下,杀掉执行任一数据导入作业的进程,以重新执行任一数据导入作业。其中,在至少一个数据导入作业中的每个数据导入作业均成功执行的情况下,确定至少一个数据导入作业成功执行。
本公开的另一方面提供了一种由第二设备执行的数据处理方法,该第二没备与第一设备通过传输控制协议通信。该数据处理方法包括:响应于请求信息的输入,确定与请求信息匹配的待恢复数据的属性信息;以及向第一设备推送待恢复数据的属性信息。
根据本公开的实施例,上述由第二设备执行的数据处理方法还包括:接收第一设备发送的第一进度信息、第二进度信息或第三进度信息;以及根据第一进度信息、第二进度信息或第三进度信息,更新展示的数据恢复的进度。
本公开的另一方面提供了一种设置于第一设备的数据恢复装置,第一设备与第二设备通过传输控制协议通信,该数据恢复装置包括:属性信息接收模块,用于接收第二设备推送的待恢复数据的属性信息;作业库构建模块,用于根据属性信息,构建作业库,该作业库存储有用于恢复待恢复数据的多个待执行作业;以及作业运行模块,用于运行多个待执行作业,以执行以下操作:构建数据存储表;从数据库中提取与属性信息匹配的待恢复数据;以及将待恢复数据导入数据存储表。
本公开的另一方面提供了一种设置于第二设备的数据处理装置,第二设备与第一设备通过传输控制协议通信,该数据处理装置包括:属性信息确定模块,用于响应于请求信息的输入,确定与请求信息匹配的待恢复数据的属性信息;以及属性信息推送模块,用于向第二设备推送待恢复数据的属性信息。
本公开的另一方面提供了一种电子设备,该电子设备包括一个或多个处理器;以及存储装置,该存储装置用于存储一个或多个程序。其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器执行前述的数据恢复方法;并且/或者执行前述的数据处理方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的数据恢复方法;并且/或者如上所述的数据处理方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的数据恢复方法;并且/或者如上所述的数据处理方法。
根据本公开的实施例,通过根据待恢复数据的属性信息自动构建作业库,并运行作业库中的多个待执行作业,而无需人工裁剪作业进行提交。因此至少可以部分地提高数据恢复的自动化和智能化,释放重复的人力劳动。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的数据恢复方法和装置、以及数据处理方法和装置的应用场景图;
图2示意性示出了根据本公开示例性实施例一的由第一设备执行的数据恢复方法的流程图;
图3示意性示出了根据本公开实施例的运行多个待执行作业执行的操作的流程图;
图4示意性示出了根据本公开实施例的构建作业库的流程图;
图5示意性示出了根据本公开示意性实施例二的由第一设备执行的数据恢复方法的流程图;
图6示意性示出了根据本公开实施例的确定存储表构建作业是否成功执行的流程图;
图7示意性示出了根据本公开实施例的确定数据提取作业是否成功执行的流程图;
图8示意性示出了根据本公开实施例的确定数据导入作业是否成功执行的流程图;
图9示意性示出了根据本公开示例性实施例一的由第二设备执行的数据处理方法的流程图;
图10示意性示出了根据本公开示例性实施例二的由第二设备执行的数据处理方法的流程图;
图11示意性示出了根据本公开实施例的数据恢复装置的结构框图;
图12示意性示出了根据本公开实施例的数据处理装置的结构框图;以及
图13示意性示出了根据本公开实施例的适于执行数据恢复方法和/或数据处理方法的电子设备的结构框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的***”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的***等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的***”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的***等)。
本公开的实施例提供了一种数据恢复方法和装置,以及数据处理方法和装置。其中,数据恢复方法由第一设备执行,该第一设备与第二设备通过传输控制协议通信。该数据恢复方法包括:接收第二设备推送的待恢复数据的属性信息;根据属性信息,构建作业库,该作业库存储有用于恢复待恢复数据的多个待执行作业;以及运行多个待执行作业,以执行以下操作:构建数据存储表;从数据库中提取与属性信息匹配的待恢复数据;以及将待恢复数据导入数据存储表。
图1示意性示出了根据本公开实施例的数据恢复方法和装置、以及数据处理方法和装置的应用场景100。需要注意的是,图1所示仅为可以应用本公开实施例的应用场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、***、环境或场景。
如图1所示,根据该实施例的应用场景100可以包括第一设备101、网络102和数据库103。网络102用于在第一设备101与数据库103之间提供通信链路的介质,该网络102例如可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等。
该第一设备101可以是具有处理功能的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等。该第一设备101例如可以安装有各种客户端应用,例如数据处理平台和/或数据恢复平台,该数据处理平台与数据恢复平台之间例如可以通过TCP(Transmission Control Protocol,传输控制协议)进行通信。数据处理平台用于向用户提供交互界面,以根据交互界面获取输入信息。该输入信息例如可以包括用户需要获取的数据的属性信息。数据恢复平台可以根据数据的属性信息从数据库103中提取数据,以实现数据的恢复。
根据本公开的实施例,如图1所示,该应用场景100例如还可以包括第二设备104,该第二设备104与第一设备101类似。在一实施例中,第一设备101例如可以安装有数据恢复平台/数据处理平台,第二设备104例如可以安装有数据处理平台/数据恢复平台,第一设备101与第二设备104通过网络102根据TCP协议进行通信,实现数据的恢复。
根据本公开的实施例,第一设备101和/或第二设备104例如还可以具有显示功能,以向用户显示数据恢复的进度。
需要说明的是,本公开实施例所提供的数据恢复方法和/或数据处理方法一般可以由第一设备101或第二设备104执行。相应地,本公开实施例所提供的数据恢复装置和/或数据处理装置一般可以设置于第一设备101或第二设备104中。
应该理解,上述第一设备101、网络102,数据库103和第二设备104的类型仅仅是示意性的,根据实现需要,可以具有任意类型的第一设备101、网络102,数据库103和第二设备104。
以下将结合图2~图8对本公开实施例的由第一设备执行的数据恢复方法进行详细描述。
图2示意性示出了根据本公开示例性实施例一的由第一设备执行的数据恢复方法的流程图,图3示意性示出了根据本公开实施例的运行多个待执行作业执行的操作的流程图。
如图2所示,该数据恢复方法例如可以包括操作S210~操作S230。其中,第一设备与第二设备通过传输控制协议通信。第一设备例如可以为图1中的第一设备101,第二设备例如可以为图1中的第二设备104。或者,第一设备可以为图1中第一设备101中安装的数据恢复平台,第二设备为图1中第一设备101中安装的数据处理平台。
在操作S210,接收第二设备推送的待恢复数据的属性信息。
根据本公开的实施例,待恢复数据例如可以为用户通过第二设备提供的交互界面登记的各类服务需求信息,待恢复数据的属性信息例如可以用于唯一表征待恢复数据。例如,若待恢复数据包括用户请求的账户A在固定时段B内的交易数据时,待恢复数据的属性信息例如可以包括:用户的属性信息,账户A、固定时段B、数据类型(交易数据)等。其中,用户的属性信息例如可以包括用户的类别(个人用户还是对公用户)、用户的户籍信息(本地用户还是海外用户)等。可以理解的是,上述待恢复数据的属性信息仅作为示例以利于理解本公开,本公开对此不作限定。
根据本公开的实施例,根据该属性信息,例如可以定位得到待恢复数据在数据库103中的存储位置,从而直接根据该存储位置获取待恢复数据,便于实现待恢复数据的恢复。
在操作S220,根据属性信息,构建作业库。其中,作业库存储有用于恢复待恢复数据的多个待执行作业。
根据本公开的实施例,为了便于对构建的作业进行存储,上述操作S220例如可以先自动创建临时文件,用于存储构建的作业。存储有作业的临时文件可以作为所述的作业库。在创建临时文件后,根据属性信息创建作业。最后将创建的作业存储该临时文件,得到存储有用于恢复待恢复数据的多个待执行作业的作业库。
根据本公开的实施例,为了便于对获取的待处理数据进行统计整理,在从数据库103中提取数据之前,例如可以先构建有数据存储表。因此,多个待执行作业例如可以包括存储表构建作业,通过运行该存储表构建作业,可以构建数据存储表。该存储表构建作业例如可以规定有根据待恢复数据的属性信息,确定数据存储表的表名、行数、列数、行名称和列名称等的规则。根据本公开的实施例,该数据存储表例如可以为操作表DLL。通过运行存储表构建作业构建数据存储表时,例如可以先生成表名(NTBNAME),然后再根据表名生成构建数据存储表。例如,若待恢复数据为账户A在固定时段B内的交易数据时,表名例如可以为“账户A的交易表”,列名称例如可以包括交易类型的名称,例如“收入”、“支出”,行名称例如可以包括“交易日期”、“交易金额”、“交易对象”等。可以理解的是,上述数据存储表仅作为示例以利于理解本公开,本公开对此不作限定。
根据本公开的实施例,在构建了数据存储表后,可以从数据库103中提取数据。因此,多个待执行作业例如可以包括至少一个数据提取作业,用于提取与属性信息匹配的待恢复数据。根据本公开的实施例,该数据提取作业的数量例如可以根据待恢复数据的数据量来确定,若待恢复数据的数据量较大,可以生成较多的数据提取作业。若待恢复数据包括位于数据库103中的不同存储空间的多组数据时,可以生成多组数据提取作业,以便于提高数据提取的效率。其中,根据属性信息,每个数据提取作业中例如可以规定有提取的数据在数据库103中的定位信息,以准确提取待恢复数据。
根据本公开的实施例,在提取了数据之后,可将提取的数据导入数据存储表中。因此,多个待执行作业例如还可以包括至少一个数据导入作业,用于将待恢复数据导入数据存储表。其中,为了便于操作,该数据导入作业的数量例如可以与数据提取作业的数量相等。至少一个数据导入作业与至少一个数据提取作业一一对应,每个数据提取作业提取的待恢复数据通过与其对应的数据导入作业导入数据存储表中。
根据本公开的实施例,该操作S220例如可以通过图4描述的流程来实现,在此不再赘述。
在操作S230,运行多个待执行作业,以完成每个待执行作业的执行,得到待恢复数据。
根据本公开的实施例,在构建得到作业库后,可以通过运行多个待执行作业来完成待恢复数据的恢复。其中,在多个待执行作业包括前述的存储表构建作业、数据提取作业和数据导入作业时,运行多个待执行作业的顺序可以为:先运行存储表构建作业,再运行数据提取作业,最后再运行数据导入作业。
根据本公开的实施例,如图3所示,通过运行多个待执行作业可以顺序执行操作S331~操作S333。
在操作S331,构建数据存储表。该操作S331例如可以通过运行存储表构建作业来实现。
在操作S332,从数据库中提取与属性信息匹配的待恢复数据。该操作S332例如可以通过完成至少一个数据提取作业中的每个数据提取作业来实现。根据本公开的实施例,与属性信息匹配的待恢复数据例如可以是数据库中与数据提取作业中的定位信息对应位置的数据。其中,定位信息例如可以根据属性信息和数据库中数据存储的存储信息来确定。数据库中数据存储的信息例如可以包括:数据库中各个存储空间存储的数据类别、存储的数据量、存储的数据生成日期等。
在操作S333,将待恢复数据导入数据存储表。该操作S333例如可以通过完成至少一个数据导入作业中的每个数据导入作业来实现。
根据本公开的实施例,数据导入作业例如可以规定有导入数据的位置信息,该位置信息为数据存储表中行和列的位置信息。因此,通过运行数据导入作业,可以将提取的待恢复数据导入数据存储表中的对应位置。
根据本公开的实施例,为了提高数据恢复效率,在运行多个待执行作业时,若多个待执行作业包括多个数据提取作业和多个数据导入作业,则可以先并行地运行多个数据提取作业,在运行完多个数据提取作业中的任意一个数据提取作业后,运行该任意一个数据提取作业对应的数据导入作业。
根据本公开的实施例,为了便于提高数据恢复效率,解决相关技术中无法根据环境资源状况动态调整作业并发的问题,在操作S220构建作业库时,例如可以根据待恢复数据及数据库中数据的分区存储信息,来确定可以并发的作业量,从而确定构建的作业库中待执行作业的数量。
图4示意性示出了根据本公开实施例的构建作业库的流程图。
如图4所示,构建作业库的操作S220例如可以包括操作S421~操作S424。
在操作S421,获取数据库的数据统计信息。
根据本公开的实施例,该数据库的数据统计信息例如可以包括前述的数据库中数据存储的信息。根据该数据统计信息,可以得到数据库中存储的所有数据所存储的存储空间的信息,各个存储空间的数据总量,各个存储空间存储的数据的属性信息等。
在操作S422,根据数据统计信息及属性信息,确定待恢复数据的分布信息。
根据本公开的实施例,该操作S422例如可以包括:将属性信息与数据统计信息中各个存储空间存储的数据的属性信息进行比对,确定数据库中待恢复数据所在的存储空间的个数,及所在的存储空间的位置信息等,从而得到待恢复数据在数据库中的分布信息。根据本公开的实施例,例如还可以根据待恢复数据的属性信息及其所在的任意一个存储空间中存储的数据的属性信息,来确定在该任意一个存储空间中待恢复数据的数据量。
在操作S423,根据待恢复数据的分布信息,确定多个待执行作业的数量。
根据本公开的实施例,该操作S423例如可以包括:先根据分布信息,确定待恢复数据所在的存储空间的个数。然后根据该所在的存储空间的个数及所在的存储空间中待恢复数据的数据量,来确定多个待执行作业中数据提取作业和数据导入作业的个数。例如,数据提取作业和数据导入作业的个数与所在的存储空间的个数的比值例如可以为预定比值,或者,针对每个存储空间的数据提取作业的个数例如可以与每个存储空间包括的待恢复数据的数据量成比例关系。其中,预定比值例如可以为自然数,存储空间包括的待恢复数据越多,则针对该存储空间的数据提取作业越多。
根据本公开的实施例,考虑到数据导入作业与数据提取作业一一对应,因此多个待执行作业的个数例如可以为数据提取作业的个数*2+1。其中,1为存储表构建作业的个数。
在操作S424,根据作业生成模板及属性信息生成多个待执行作业,以构建作业库。
根据本公开的实施例,作业生成模板例如可以包括存储表构建作业的生成模板、数据提取作业的生成模板和数据导入作业的生成模板。该操作S424例如可以包括:将属性信息代入各个作业生成模板中,生成待执行作业。其中,若数据提取作业和数据导入作业包括多个,则首先需要将属性信息根据待恢复数据的分布进行划分,得到针对数据提取作业的生成模板的多组属性信息;根据多组属性信息及存储表构建作业中定义的数据存储表的行列分布信息,组成针对数据导入作业的生成模板的多组导入信息。然后将多组属性信息和多组导入信息分别代入所针对的作业生成模板,得到多个数据提取作业和多个数据导入作业。
根据本公开的实施例,若待恢复数据为交易数据,交易数据中的收入数据和支出数据分别存储于数据库中的不同存储空间。则在生成多个待执行作业时,可以将属性信息划分为以下两组信息:收入数据的属性信息和支出数据的属性信息,并将该两组信息分别代入数据提取作业的生成模板,得到两个数据提取作业。相应地,若待恢复数据为交易数据,得到的导入信息例如可以包括:数据导入作业所针对的数据提取作业提取得到的数据导入数据存储表时所针对的行列信息。从而通过运行数据导入作业,可以将提取的数据导入数据存储表中行列信息对应的行和列中。
根据本公开的实施例,为了避免相关技术中需要用户频繁的登录才能跟踪数据恢复进度的问题,例如可以在完成数据恢复的各个阶段中,向集成有用户交互界面的第二设备推送指示各个阶段完成的进度信息。从而便于第二设备根据该进度信息更新其通过交互界面展示的数据恢复进度信息。例如,本公开实施例的数据恢复方法可以在操作S230的执行过程中,执行以下操作中的至少一个:响应于存储表构建作业的成功执行,向第二设备推送第一进度信息,该第一进度信息用于指示完成数据存储表的构建。响应于至少一个数据提取作业的成功执行,向第二设备推送第二进度信息,该第二进度信息用于指示完成待恢复数据的提取。响应于数据导入作业的成功执行,向第二设备推送第三进度信息,该第三进度信息用于指示完成待恢复数据的恢复。其中,第一进度信息、第二进度信息和/或第三进度信息例如可以为通过TCP协议传输的相似类型的信息。
根据本公开的实施例,为了便于推送进度信息,该实施例还应包括在各个待执行作业的运行过程中,判断各个待执行作业是否成功执行的操作。该进度信息例如可以包括前述的第一进度信息、第二进度信息和/或第三进度信息。
图5示意性示出了根据本公开示意性实施例二的由第一设备执行的数据恢复方法的流程图。
如图5所示,本公开实施例的信息处理方法除了操作S210~操作S230外,还可以包括在操作S230执行过程中执行的S540~操作S570。其中,操作S230可以实现为操作S531~操作S533。
在操作S531,执行存储表构建作业,构建数据存储表。在操作S532,执行至少一个数据提取作业,从数据库中提取与属性信息匹配的待恢复数据。在操作S533,执行至少一个数据导入作业,将提取的待恢复数据导入数据存储表。该操作S531~操作S533与图3中描述的操作S331~操作S333类似,在此不再赘述。
在操作S540,判断存储表构建作业是否成功执行。该操作S540可以是在操作S531的执行过程中周期性执行的。操作S532仅在操作S540的判断结果为存储表构建作业成功执行的情况下才执行。在操作S540的判断结果为存储表构建作业成功执行时,同时可以执行操作S570,以向第二设备推送第一进度信息。在操作S540的判断结果为存储表构建作业未成功执行时,为了便于数据恢复的自动化完成,可以返回重新执行操作S531,以重新运行存储表构建作业。
在操作S550,判断数据提取作业是否成功执行。该操作S550可以是在操作S532的执行过程中周期性执行的。操作S533仅在操作S550的判断结果为数据提取作业成功执行的情况下才执行。在操作S550的判断结果为数据提取作业成功执行时,同时可以执行操作S570:推送进度信息,以向第二设备推送第二进度信息。在操作S550的判断结果为数据提取作业未成功执行时,为了便于数据恢复的自动化完成,可以返回重新执行操作S532,以重新运行数据提取作业。
类似地,在操作S560,判断数据导入作业是否成功执行。该操作S560可以是在操作S533的执行过程中周期性执行的。在操作S560的判断结果为数据导入作业成功执行时,可以执行操作S570,以向第二设备推送第三进度信息。在操作S560的判断结果为数据导入作业未成功执行时,为了数据恢复的自动化完成,可以返回重新执行操作S533,以重新运行数据导入作业。
根据本公开的实施例,为了便于确定待执行作业的状态,例如可以设定规则来维护待执行作业。例如在待执行作业的运行过程中,若待执行作业正在运行,该待执行作业可以被维护于执行队列。若待执行作业已经执行完成,该待执行作业可以被维护于执行完成队列,并反馈用于指示成功执行的信息(例如0/4信息)或反馈未成功执行的信息(例如error信息)。因此,在判断各个待执行作业是否成功执行时,可以根据该待执行作业所处的队列及反馈的信息来确定。
图6示意性示出了根据本公开实施例的确定存储表构建作业是否成功执行的流程图。
根据本公开的实施例,如图6所示,确定存储表构建作业是否成功执行的操作S540例如可以包括操作S641~操作S645。
在操作S641,判断存储表构建作业是否位于执行队列中。若操作S641的判断结果为存储表构建作业位于执行队列中,说明存储表构建作业当前正在被运行,则执行操作S642休眠。即暂不执行任何操作,以等待完成存储表构建作业的运行。在休眠固定时段后,可以返回重新执行操作S641,以重新确定存储表构造作业是否运行完成。其中,该执行队列例如可以为INPUT队列。
若操作S641的判断结果为存储表构建作业未位于执行队列中,则可能存储表构建作业已被运行完成,则执行操作S643,判断存储表构建作业是否位于执行完成队列。若操作S643的判断结果为存储表构建作业位于执行完成队列,则为了确定该作业是否被成功执行,还需要确定该作业反馈的信息。因此执行操作S644,判断存储表构建作业是否反馈预定信息。其中,执行完成队列例如可以为H*队列,预定信息例如可以为用于指示该存储表构建作业成功执行的信息(例如0/4信息)。
若操作S644的判断结果为存储表构建作业反馈了预定信息,则执行操作S645,确定存储表构建作业成功执行。若操作S644的判断结果为存储表构建作业未反馈预定信息,则说明存储表构建作业虽然执行完成了,但未成功构建存储表,则返回重新执行操作S531,以重新构建数据存储表。
综上可知,本公开实施例的数据存储表的构建可以实现作业报错的自动处理,从而保证最终成功构建到数据存储表,并因此提高本公开实施例的数据恢复方法的自动化。
图7示意性示出了根据本公开实施例的确定数据提取作业是否成功执行的流程图。
与图6描述的确定存储表构建作业是否成功执行的流程类似,如图7所示,确定至少一个数据提取作业中的任一数据提取作业是否成功执行的操作S550例如可以包括操作S751~操作S755。
在操作S751,判断该任一数据提取作业是否位于执行队列中。若未位于执行队列中,则执行操作S752休眠,即暂不执行任何操作,以等待完成该任一数据提取作业的运行。在休眠固定时段后,可以返回重新执行操作S751,以重新确定该任一数据提取作业是否运行完成。其中,该执行队列例如可以为INPUT队列。
若操作S751的判断结果为该任一数据提取作业未位于执行队列中,则可能该任一数据提取作业已被运行完成,则执行操作S753,判断该任一数据提取作业是否位于执行完成队列。若操作S753的判断结果为位于执行完成队列,则为了确定该作业是否被成功执行,还需要确定该作业反馈的信息。因此执行操作S754,判断该任一数据提取作业是否反馈预定信息。其中,执行完成队列例如可以为H*队列,预定信息例如可以为用于指示该任一数据提取作业成功执行的信息(例如0/4信息)。
若操作S754的判断结果为该任一数据提取作业反馈了预定信息,则执行操作S755,确定该任一数据提取作业成功执行。若操作S754的判断结果为该任一数据提取作业未反馈预定信息,则说明该任一数据提取作业虽然执行完成了,但未成功提取数据,则返回重新执行操作S532,以重新运行该任一数据提取作业。
根据本公开的实施例,对于至少一个数据提取作业中的每个数据提取作业均执行图7所示的流程,例如可以仅在确定该至少一个数据提取作业均被成功运行时,才通过图5中的操作S570推送第二进度信息。或者,也可以根据成功运行完的数据提取作业的数量,每成功运行一个数据提取作业,推送一次第二进度信息。推送第二进度信息的次数与数据提取作业的数量相同。第二设备根据接收到的第二进度信息的次数,即可确定至少一个数据提取作业成功运行的百分比,从而根据该百分比更新展示的进度信息。
图8示意性示出了根据本公开实施例的确定数据导入作业是否成功执行的流程图。
与图6描述的确定存储表构建作业是否成功执行的流程类似,如图8所示,确定至少一个数据导入作业中的任一数据导入作业是否成功执行的操作S560例如可以包括操作S861~操作S865。
在操作S861,判断该任一数据导入作业是否位于执行队列中。若未位于执行队列中,则执行操作S862休眠,即暂不执行任何操作,以等待完成该任一数据导入作业的运行。在休眠固定时段后,可以返回重新执行操作S861,以重新确定该任一数据导入作业是否运行完成。其中,该执行队列例如可以为INPUT队列。
若操作S861的判断结果为该任一数据导入作业未位于执行队列中,则可能该任一数据导入作业已被运行完成,则执行操作S863,判断该任一数据导入作业是否位于执行完成队列。若操作S863的判断结果为位于执行完成队列,则为了确定该作业是否被成功执行,还需要确定该作业反馈的信息。因此执行操作S864,判断该任一数据导入作业是否反馈预定信息。其中,执行完成队列例如可以为H*队列,预定信息例如可以为用于指示该任一数据提取作业成功执行的信息(例如0/4信息)。
若操作S864的判断结果为该任一数据导入作业反馈了预定信息,则执行操作S865,确定该任一数据导入作业成功执行。若操作S864的判断结果为该任一数据导入作业未反馈预定信息,则说明该任一数据导入作业虽然执行完成了,但未将数据成功导入数据存储表。此种情况下,为了避免引起数据导入的混乱,例如可以先将执行该任一数据导入作业的进程杀掉后再返回重新执行操作S533。因此,先执行操作S866,杀掉执行该任一数据导入作业的进程,再返回重新执行操作S533,以重新运行该任一数据导入作业。
根据本公开的实施例,在杀掉执行该任一数据导入作业的进程时,为了保证杀掉所有执行该任一数据导入作业的进程,例如可以先判断该任一数据导入作业的当前运行状态,若当前运行状态为正在运行,说明存在线程运行该任一数据导入作业,则杀掉相应进程。在杀掉相应进程后,例如可以在预定时段后重新判断该任一数据导入作业的运行状态。若运行状态不是未运行状态,则再次进行杀掉进程的操作,直至预定时段后该任一数据导入作业的状态为未运行状态。
根据本公开的实施例,对于至少一个数据导入作业中的每个数据导入作业均执行图8所示的流程,例如可以仅在确定该至少一个数据导入作业均被成功运行时,才通过图5中的操作S570推送第三进度信息。或者,也可以根据成功运行完的数据导入作业的数量,每成功运行一个数据导入作业,推送一次第三进度信息。推送第三进度信息的次数与数据导入作业的数量相同。第二设备根据接收到的第三进度信息的次数,即可确定至少一个数据导入作业成功运行的百分比,从而根据该百分比更新展示的进度信息。
图9示意性示出了根据本公开示例性实施例一的由第二设备执行的数据处理方法的流程图。
如图9所示,该数据处理方法例如可以包括操作S910~操作S920。其中,第二设备与第一设备通过数据控制协议通信。该第一设备和第二设备与数据恢复方法中的第一设备和第二设备类似,在此不再赘述。
在操作S910,响应于请求信息的输入,确定与请求信息匹配的待恢复数据的属性信息,在操作S920,向第一设备推送待恢复数据的属性信息。
根据本公开的实施例,该请求信息例如可以为用户通过对第二设备的交互界面的操作而得到的输入信息。根据本公开的实施例,在第二设备得到输入信息后,例如还可以通过对该输入信息进行处理得到属性信息。例如,若输入信息包括用户通过交互界面选择的账户A、固定时段B,交易数据时,可以根据该输入信息及用户的个人属性信息,得到待恢复的属性信息包括:个人用户、本地用户、账户A、时段B、数据类型为交易数据等。
根据本公开的实施例,为了便于用户能够及时的看到数据恢复进度,该第二设备例如可以通过交互界面显示数据恢复的进度条。相应地,在第一设备发送第一进度信息、第二进度信息或第三进度信息后,第二设备还可以根据该接收的进度信息及时更新通过交互界面显示的进度条。
图10示意性示出了根据本公开示例性实施例二的由第二设备执行的数据处理方法的流程图。
如图10所示,由第二设备执行的数据处理方法还包括操作S1030~操作S1040。
在操作S1030,接收第一设备发送的第一进度信息、第二进度信息或第三进度信息。在操作S1040,根据第一进度信息、第二进度信息或第三进度信息,更新展示的数据恢复的进度。从而便于用户实时的得到数据恢复的进度。
图11示意性示出了根据本公开实施例的数据恢复装置的结构框图。
如图11所示,本公开实施例的数据恢复装置1100例如可以包括属性信息接收模块1110、作业库构建模块1120和作业运行模块1130。该数据恢复装置1100例如可以设置于第一设备中。
属性信息接收模块1110用于接收第二设备推送的待恢复数据的属性信息(操作S210)。
作业库构建模块1120用于根据属性信息,构建作业库。该作业库存储有用于恢复待恢复数据的多个待执行作业(操作S220)。
作业运行模块1130用于运行多个待执行作业(操作S230)。其中,通过运行多个待执行作业,可以执行以下操作:构建数据存储表(操作S331);从数据库中提取与属性信息匹配的待恢复数据(操作S332);以及将待恢复数据导入数据存储表(操作S333)。
根据本公开的实施例,上述作业库构建模块1120例如可以包括统计信息获取子模块1121、分布信息确定子模块1122、数量确定子模块1123和作业生成子模块1124。统计信息获取子模块1121用于获取数据库的数据统计信息(操作S421)。分布信息确定子模块1122用于根据数据统计信息及属性信息,确定待恢复数据的分布信息(操作S422)。数量确定子模块1123用于根据待恢复数据的分布信息,确定多个待执行作业的数量(操作S423)。作业生成子模块1124用于根据作业生成模板及属性信息生成多个待执行作业,以构建作业库(操作S424)。
根据本公开的实施例,如图11所示,该数据恢复装置1100例如还可以包括进度信息推送模块1140,该进度信息推送模块1140例如可以用于执行图5描述的操作S570。具体地,该进度信息推送模块可以用于执行以下操作中的至少一个:响应于存储表构建作业的成功执行,向第二设备推送第一进度信息,该第一进度信息用于指示完成数据存储表的构建;响应于至少一个数据提取作业的成功执行,向第二设备推送第二进度信息,该第二进度信息用于指示完成待恢复数据的提取;以及响应于数据导入作业的成功执行,向第二设备推送第三进度信息,该第三进度信息用于指示完成待恢复数据的恢复。
根据本公开的实施例,如图11所示,该数据恢复装置1100例如还可以包括第一确定模块1150,用于在作业库构建模块1120构建数据存储表的过程中,确定存储表构建作业是否成功执行(操作S540)。其中,至少一个数据提取作业在存储表构建作业成功执行后执行。第一确定模块1150具体例如可以用于执行以下操作:确定存储表构建作业位于执行队列还是位于执行完成队列(操作S641和操作S643);在存储表构建作业位于执行完成队列中的情况下,确定存储表构建作业是否反馈预定信息(操作S644);在存储表构建作业反馈预定信息的情况下,确定存储表构建作业成功执行(操作S645);在存储表构建作业未反馈预定信息的情况下,重新执行存储表构建作业。
根据本公开的实施例,如图11所示,该数据恢复装置1100例如还可以包括第二确定模块1160,用于在作业库构建模块1120提取待恢复数据的过程中,确定至少一个数据提取作业是否成功执行(操作S550)。其中,至少一个数据导入作业中的每个输入导入作业在对应的数据提取作业成功执行后执行。该第二确定模块1160具体例如可以用于执行以下操作:确定至少一个数据提取作业中的每一个数据提取作业位于执行队列,还是位于执行完成队列(操作S751和操作S753);在至少一个数据提取作业中的任一数据提取作业位于执行完成队列的情况下,确定任一数据提取作业是否反馈预定信息(操作S754):在任一数据提取作业反馈预定信息的情况下,确定任一数据提取作业成功执行(操作S755);以及在任一数据提取作业未反馈预定信息的情况下,重新执行任一数据提取作业。其中,在至少一个数据提取作业中的每个数据提取作业均成功执行的情况下,确定至少一个数据提取作业成功执行。
根据本公开的实施例,如图11所示,该数据恢复装置1100例如还可以包括第三确定模块1170,用于确定至少一个数据导入作业是否成功执行(操作S560)。该第三确定模块1170具体例如可以用于执行以下操作:确定至少一个数据导入作业中的每一个数据提取作业位于执行队列还是位于执行完成队列(操作S861和操作S863);在至少一个数据导入作业中的任一数据导入作业位于执行完成队列的情况下,确定任一数据导入作业是否反馈预定信息(操作S864):在任一数据导入作业反馈预定信息的情况下,确定任一数据导入作业成功执行(操作S865);在任一数据导入作业未反馈预定信息的情况下,杀掉执行任一数据导入作业的进程,以重新执行任一数据导入作业(操作S866)。其中,在至少一个数据导入作业中的每个数据导入作业均成功执行的情况下,确定至少一个数据导入作业成功执行。
图12示意性示出了根据本公开实施例的数据处理装置的结构框图。
如图12所示,数据处理装置1200例如可以包括属性信息确定模块1210和属性信息推送模块1220。该数据处理装置1200例如可以设置于第二设备中。
属性信息确定模块1210例如可以用于响应于请求信息的输入,确定与请求信息匹配的待恢复数据的属性信息(操作S910)。
属性信息推送模块1220例如可以用于向第二设备推送待恢复数据的属性信息(操作S920)。
如图12所示,本公开实施例的数据处理装置1200例如还可以包括进度信息接收模块1230和进度更新模块1240。进度信息接收模块1230用于接收第一设备发送的第一进度信息、第二进度信息或第三进度信息(操作S1030)。进度更新模块1240用于根据第一进度信息、第二进度信息或第三进度信息,更新展示的数据恢复的进度(操作S1040)。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上***、基板上的***、封装上的***、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图13示意性示出了根据本公开实施例的适于执行数据恢复方法和/或数据处理方法的电子设备的结构框图。图13示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图13所示,根据本公开实施例的电子设备1300包括处理器1301,其可以根据存储在只读存储器(ROM)1302中的程序或者从存储部分1308加载到随机访问存储器(RAM)1303中的程序而执行各种适当的动作和处理。处理器1301例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理揩(例如,专用集成电路(ASIC)),等等。处理器1301还可以包括用于缓存用途的板载存储器。处理器1301可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1303中,存储有电子设备1300操作所需的各种程序和数据。处理器1301、ROM 1302以及RAM 1303通过总线1304彼此相连。处理器1301通过执行ROM 1302和/或RAM1303中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1302和RAM 1303以外的一个或多个存储器中。处理器1301也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备1300还可以包括输入/输出(I/O)接口1305,输入/输出(I/O)接口1305也连接至总线1304。电子设备1300还可以包括连接至I/O接口1305的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1307;包括硬盘等的存储部分1308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1309。通信部分1309经由诸如因特网的网络执行通信处理。驱动器1310也根据需要连接至I/O接口1305。可拆卸介质1311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1310上,以便于从其上读出的计算机程序根据需要被安装入存储部分1308。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1309从网络上被下载和安装,和/或从可拆卸介质1311被安装。在该计算机程序被处理器1301执行时,执行本公开实施例的***中限定的上述功能。根据本公开的实施例,上文描述的***、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/***中所包含的;也可以是单独存在,而未装配入该设备/装置/***中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1302和/或RAM 1303和/或ROM 1302和RAM 1303以外的一个或多个存储器。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (13)

1.一种由第一设备执行的数据恢复方法,所述第一设备与第二设备通过传输控制协议通信,所述方法包括:
接收所述第二设备推送的待恢复数据的属性信息;
根据所述属性信息,构建作业库,所述作业库存储有用于恢复所述待恢复数据的多个待执行作业;以及
运行所述多个待执行作业,以执行以下操作:
构建数据存储表;
从数据库中提取与所述属性信息匹配的待恢复数据;以及
将所述待恢复数据导入所述数据存储表。
2.根据权利要求1所述的方法,其中,所述构建作业库包括:
获取所述数据库的数据统计信息;
根据所述数据统计信息及所述属性信息,确定所述待恢复数据的分布信息;
根据所述待恢复数据的分布信息,确定所述多个待执行作业的数量;以及
根据作业生成模板及所述属性信息生成所述多个待执行作业,以构建所述作业库。
3.根据权利要求1所述的方法,其中,所述多个待执行作业包括:
存储表构建作业,用于构建数据存储表;
至少一个数据提取作业,用于提取与所述属性信息匹配的待恢复数据;以及
至少一个数据导入作业,用于将所述待恢复数据导入所述数据存储表,
其中,所述至少一个数据导入作业与所述至少一个数据提取作业一一对应;在所述多个待执行作业包括多个数据提取作业与多个数据导入作业的情况下,并行执行所述多个数据提取作业和/或并行执行所述多个数据导入作业。
4.根据权利要求3所述的方法,还包括执行以下操作中的至少一个:
响应于所述存储表构建作业的成功执行,向所述第二设备推送第一进度信息,所述第一进度信息用于指示完成所述数据存储表的构建;
响应于所述至少一个数据提取作业的成功执行,向所述第二设备推送第二进度信息,所述第二进度信息用于指示完成所述待恢复数据的提取;以及
响应于所述数据导入作业的成功执行,向所述第二设备推送第三进度信息,所述第三进度信息用于指示完成所述待恢复数据的恢复。
5.根据权利要求3所述的方法,其中,还包括在构建所述数据存储表的过程中,确定所述存储表构建作业是否成功执行;所述至少一个数据提取作业在所述存储表构建作业成功执行后执行;所述确定所述存储表构建作业是否成功执行包括:
确定所述存储表构建作业位于执行队列还是位于执行完成队列;
在所述存储表构建作业位于所述执行完成队列中的情况下,确定所述存储表构建作业是否反馈预定信息:
在所述存储表构建作业反馈所述预定信息的情况下,确定所述存储表构建作业成功执行;
在所述存储表构建作业未反馈所述预定信息的情况下,重新执行所述存储表构建作业。
6.根据权利要求3所述的方法,还包括在提取所述待恢复数据的过程中,确定所述至少一个数据提取作业是否成功执行;所述至少一个数据导入作业中的每个数据导入作业在对应的数据提取作业成功执行后执行;所述确定所述至少一个数据提取作业是否成功执行包括:
确定所述至少一个数据提取作业中的每一个数据提取作业位于执行队列,还是位于执行完成队列;
在所述至少一个数据提取作业中的任一数据提取作业位于所述执行完成队列的情况下,确定所述任一数据提取作业是否反馈预定信息:
在所述任一数据提取作业反馈所述预定信息的情况下,确定所述任一数据提取作业成功执行;
在所述任一数据提取作业未反馈所述预定信息的情况下,重新执行所述任一数据提取作业,
其中,在所述至少一个数据提取作业中的每个数据提取作业均成功执行的情况下,确定所述至少一个数据提取作业成功执行。
7.根据权利要求3所述的方法,还包括在导入所述待恢复数据的过程中,确定所述至少一个数据导入作业是否成功执行;所述确定所述至少一个数据导入作业是否成功执行包括:
确定所述至少一个数据导入作业中的每一个数据提取作业位于执行队列还是位于执行完成队列;
在所述至少一个数据导入作业中的任一数据导入作业位于所述执行完成队列的情况下,确定所述任一数据导入作业是否反馈预定信息:
在所述任一数据导入作业反馈所述预定信息的情况下,确定所述任一数据导入作业成功执行;
在所述任一数据导入作业未反馈所述预定信息的情况下,杀掉执行所述任一数据导入作业的进程,以重新执行所述任一数据导入作业,
其中,在所述至少一个数据导入作业中的每个数据导入作业均成功执行的情况下,确定所述至少一个数据导入作业成功执行。
8.一种由第二设备执行的数据处理方法,所述第二设备与第一设备通过传输控制协议通信,所述方法包括:
响应于请求信息的输入,确定与所述请求信息匹配的待恢复数据的属性信息;以及
向所述第一设备推送所述待恢复数据的属性信息。
9.根据权利要求8所述的方法,还包括:
接收所述第一设备发送的第一进度信息、第二进度信息或第三进度信息;以及
根据所述第一进度信息、第二进度信息或第三进度信息,更新展示的数据恢复的进度。
10.一种设置于第一设备的数据恢复装置,所述第一设备与第二设备通过传输控制协议通信,所述装置包括:
属性信息接收模块,用于接收所述第二设备推送的待恢复数据的属性信息;
作业库构建模块,用于根据所述属性信息,构建作业库,所述作业库存储有用于恢复所述待恢复数据的多个待执行作业;以及
作业运行模块,用于运行所述多个待执行作业,以执行以下操作:
构建数据存储表;
从数据库中提取与所述属性信息匹配的待恢复数据;以及
将所述待恢复数据导入所述数据存储表。
11.一种设置于第二设备的数据处理装置,所述第二设备与第一设备通过传输控制协议通信,所述装置包括:
属性信息确定模块,用于响应于请求信息的输入,确定与所述请求信息匹配的待恢复数据的属性信息;以及
属性信息推送模块,用于向所述第二设备推送所述待恢复数据的属性信息。
12.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行:
权利要求1~7中任一项所述的数据恢复方法;并且/或者
权利要求8~9中任一项所述的数据处理方法。
13.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行:
权利要求1~7中任一项所述的数据恢复方法;并且/或者
权利要求8~9中任一项所述的数据处理方法。
CN201911179047.8A 2019-11-26 2019-11-26 数据恢复方法和装置、以及数据处理方法和装置 Pending CN110888760A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911179047.8A CN110888760A (zh) 2019-11-26 2019-11-26 数据恢复方法和装置、以及数据处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911179047.8A CN110888760A (zh) 2019-11-26 2019-11-26 数据恢复方法和装置、以及数据处理方法和装置

Publications (1)

Publication Number Publication Date
CN110888760A true CN110888760A (zh) 2020-03-17

Family

ID=69748971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911179047.8A Pending CN110888760A (zh) 2019-11-26 2019-11-26 数据恢复方法和装置、以及数据处理方法和装置

Country Status (1)

Country Link
CN (1) CN110888760A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102171661A (zh) * 2008-09-30 2011-08-31 赛门铁克公司 从整体数据库备份中恢复所选对象
CN104166600A (zh) * 2014-08-01 2014-11-26 腾讯科技(深圳)有限公司 数据备份与恢复方法及装置
US9229952B1 (en) * 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
CN106528896A (zh) * 2016-12-29 2017-03-22 网易(杭州)网络有限公司 一种数据库优化方法和装置
CN106547646A (zh) * 2015-09-23 2017-03-29 阿里巴巴集团控股有限公司 一种数据备份及恢复方法、数据备份及恢复装置
CN108197155A (zh) * 2017-12-08 2018-06-22 深圳前海微众银行股份有限公司 信息数据同步方法、装置及计算机可读存储介质
CN108762982A (zh) * 2018-05-18 2018-11-06 杭州数梦工场科技有限公司 一种数据库恢复方法、装置及***
CN109189613A (zh) * 2018-09-20 2019-01-11 快云信息科技有限公司 一种数据库数据恢复方法及相关装置
CN110309024A (zh) * 2019-04-23 2019-10-08 网宿科技股份有限公司 数据处理***及其执行数据处理任务的方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102171661A (zh) * 2008-09-30 2011-08-31 赛门铁克公司 从整体数据库备份中恢复所选对象
CN104166600A (zh) * 2014-08-01 2014-11-26 腾讯科技(深圳)有限公司 数据备份与恢复方法及装置
US9229952B1 (en) * 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
CN106547646A (zh) * 2015-09-23 2017-03-29 阿里巴巴集团控股有限公司 一种数据备份及恢复方法、数据备份及恢复装置
CN106528896A (zh) * 2016-12-29 2017-03-22 网易(杭州)网络有限公司 一种数据库优化方法和装置
CN108197155A (zh) * 2017-12-08 2018-06-22 深圳前海微众银行股份有限公司 信息数据同步方法、装置及计算机可读存储介质
CN108762982A (zh) * 2018-05-18 2018-11-06 杭州数梦工场科技有限公司 一种数据库恢复方法、装置及***
CN109189613A (zh) * 2018-09-20 2019-01-11 快云信息科技有限公司 一种数据库数据恢复方法及相关装置
CN110309024A (zh) * 2019-04-23 2019-10-08 网宿科技股份有限公司 数据处理***及其执行数据处理任务的方法

Similar Documents

Publication Publication Date Title
US10922053B2 (en) Random number generator in a parallel processing database
US10496375B2 (en) Random number generator in a parallel processing database
CN109951547B (zh) 事务请求并行处理方法、装置、设备和介质
US20140298350A1 (en) Distributed processing system
CN111241061A (zh) 状态数据库的写入方法、数据处理装置及存储介质
CN111198769A (zh) 信息处理方法及其***、计算机***及计算机可读介质
CN107643904B (zh) 代码提交日志的检测方法、装置、介质及电子设备
US20070226342A1 (en) Transaction request processing system and method
US8898126B1 (en) Method and apparatus for providing concurrent data insertion and updating
US11232123B2 (en) Pseudo-synchronous processing by an analytic query and build cluster
US9886473B2 (en) Managing job status
CN107247784B (zh) 一种分布式事务的控制方法及事务管理器
CN114090113A (zh) 数据源处理插件动态加载的方法、装置、设备及存储介质
CN110888760A (zh) 数据恢复方法和装置、以及数据处理方法和装置
CN111159355A (zh) 客户投诉单处理方法及装置
US11669316B2 (en) Web-based customer service via single-class rebuild
CN107678839B (zh) 基于优先级的客户跟进方法、***及可读存储介质
CN115982273A (zh) 一种数据同步方法、***、电子设备和存储介质
EP3940549A1 (en) Parallel load operations for etl with unified post-processing
CN110033145B (zh) 财务共享作业分单方法及装置、设备和存储介质
CN112214497A (zh) 一种标签的处理方法、装置及计算机***
US20210182104A1 (en) Executing computing modules using multi-coring
CN108614871B (zh) 数据查询与结果生成方法、装置、设备及存储介质
US10831534B2 (en) Mainframe data flow optimization for data integration
CN113592342B (zh) 基于大数据的任务处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200317