CN111427864A - 数据的分批归档方法、装置、设备及存储介质 - Google Patents
数据的分批归档方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111427864A CN111427864A CN202010182813.2A CN202010182813A CN111427864A CN 111427864 A CN111427864 A CN 111427864A CN 202010182813 A CN202010182813 A CN 202010182813A CN 111427864 A CN111427864 A CN 111427864A
- Authority
- CN
- China
- Prior art keywords
- data
- temporary
- partition
- batch
- archived
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据的分批归档方法、装置、设备及存储介质,即确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据;在所述临时分区数据与对应的分批待归档数据的数据量均相同时,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。本发明不仅可以快速校验归档的数据量是否正确,而且在发生归档错误时,可以快速针对性重新同步数据,提升了归档效率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据的分批归档方法、装置、设备及计算机可读存储介质。
背景技术
关系型数据库的数据存储量与库的性能有直接关系,通常为数据存储量越大则库的性能越低,即查询、插入等操作速度降低。在存储海量数据的情况下,性能问题尤为突出,甚至将成为应用端的最大性能瓶颈。目前进行数据归档时,一般是以时间为条件,分批次将数据从源库同步到归档库,然后查询核对归档库中的批次归档数据条数是否与源库表中的条数一致,但随着归档库数据量的增大,导致归档库的查询统计性能降低,降低了数据归档效率,因此,如何解决现有数据量大而导致数据归档效率低下,成为了目前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种数据的分批归档方法、装置、设备及计算机可读存储介质,旨在解决现有数据量大而导致数据归档效率低下的技术问题。
为实现上述目的,本发明提供一种数据的分批归档方法,所述数据的分批归档方法包括以下步骤:
在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;
根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;
在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
可选地,所述根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据的步骤之后,还包括:
将所述临时表中的各个临时分区数据分别与所述源库表中对应的分批待归档数据进行比对,判断所述临时表中是否存在数据量异常的异常临时分区数据,其中,所述异常临时分区的数据量与对应分批待归档数据不一致;
若所述临时表中存在所述异常临时分区数据,则获取所述异常临时分区数据对应的异常临时分区标识,并删除所述异常临时分区标识对应的临时分区;
在所述源库表中确定所述异常分区标识对应的相关分批时间标识,并将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区。
可选地,所述在所述源库表中确定所述异常分区标识对应的相关分批时间标识,并将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区步骤之后,还包括:
在将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区后,判断重新导入的异常临时分区数据的数据量是否与对应分批待归档数据的数据量相同;
若重新导入的异常临时分区数据的数据量与对应分批待归档数据的数据量不相同,则根据所述异常临时分区标识以及相关分批时间标识,生成对应的数据同步异常提醒消息,以便用户进行对应数据同步异常处理。
可选地,所述将所述临时表中的各个临时分区数据分别与所述源库表中对应的分批待归档数据进行比对,判断所述临时表中是否存在数据量异常的异常临时分区数据的步骤之后,还包括:
若所述临时表中不存在所述异常临时分区数据,则判定所述临时分区数据与对应的分批待归档数据的数据量均相同,执行步骤:
根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
可选地,所述根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,作为各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应的步骤具体包括:
根据所述分批待归档数据对应的分批时间标识,将所述目标表进行分区,生成各个目标分区,并根据所述分批时间标识,生成所述各个目标分区对应的目标分区标识;
根据所述各个目标分区,将所述临时表进行分区,生成各个临时分区,并根据所述目标分区标识,生成所述各个临时分区的临时分区标识;
基于所述分批时间标识,将所述分批待归档数据分批同步至所述临时表中的对应临时分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时分区标识一一对应。
可选地,所述在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区的步骤具体包括:
在所述临时分区数据与对应的分批待归档数据的数据量均相同时,获取所述临时表中的一临时分区,作为当前临时分区;
获取所述当前临时分区对应的当前临时分区标识,并确定与所述当前临时分区标识相同的目标分区标识,作为当前目标分区标识;
根据所述当前目标分区标识在所述目标表中确定当前目标分区,并将所述当前临时分区中的当前临时分区数据归档至所述当前目标分区,以完成所述目标表中各个目标分区的数据归档。
可选地,所述在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区的步骤之后,还包括:
在检测到完成所述目标表中各个目标分区的数据归档后,删除所述源库表中的待归档数据。
此外,为实现上述目的,本发明还提供一种数据的分批归档装置,所述数据的分批归档装置包括:
源表数据分批模块,用于在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;
临时数据同步模块,用于根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;
目标数据归档模块,用于在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
此外,为实现上述目的,本发明还提供一种数据的分批归档设备,所述数据的分批归档设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的数据的分批归档程序,其中所述数据的分批归档程序被所述处理器执行时,实现如上述的数据的分批归档方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据的分批归档程序,其中所述数据的分批归档程序被处理器执行时,实现如上述的数据的分批归档方法的步骤。
本发明提供一种数据的分批归档方法,通过在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。通过上述方式,本发明通过建立临时表用于数据校验,即将临时表按照源库表中待分批数据的分批时间标识进行同步分区,然后在将源库表中的数据分批次同步至所述临时表对应的分区后,验证临时表中各个分区的数据量是否与所述源库表中的各个分批数据相同,异常时,可针对异常分区快速进行数据二次同步,然后将所述临时表中的各个分区与所述目标表进行分区交换,完成了数据的分批归档。不仅可以快速校验归档的数据量是否正确,而且在发生归档错误时,可以快速针对性重新同步数据,提升了归档效率,解决了现有数据量大而导致数据归档效率低下的技术问题。
附图说明
图1为本发明实施例方案中涉及的数据的分批归档设备的硬件结构示意图;
图2为本发明数据的分批归档方法第一实施例的流程示意图;
图3为本发明数据的分批归档方法第二实施例的流程示意图;
图4为本发明数据的分批归档方法第三实施例的流程示意图;
图5为本发明数据的分批归档装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例涉及的数据的分批归档方法主要应用于数据的分批归档设备,该数据的分批归档设备可以是PC、便携计算机、移动终端等具有显示和处理功能的设备。
参照图1,图1为本发明实施例方案中涉及的数据的分批归档设备的硬件结构示意图。本发明实施例中,数据的分批归档设备可以包括处理器1001(例如CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口);存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的硬件结构并不构成对数据的分批归档设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种计算机可读存储介质的存储器1005可以包括操作系统、网络通信模块以及数据的分批归档程序。
在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的数据的分批归档程序,并执行本发明实施例提供的数据的分批归档方法。
本发明实施例提供了一种数据的分批归档方法。
参照图2,图2为本发明数据的分批归档方法第一实施例的流程示意图。
本实施例中,所述数据的分批归档方法包括以下步骤:
步骤S10,在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;
目前,关系型数据库的数据存储量与库的性能有直接关系,通常表现为数据存储量越大性能则越低,在存储海量数据的情况下,性能问题尤为突出,甚至将成为应用端的最大性能瓶颈。例如,将2年前的数据归档至归档库中。传统方案是以时间作为条件,分批次将数据从源库同步到归档库,然后再删除源库对应批次数据,但是上述方案存在以下缺陷:
1、随着归档库的数据量越来越大,分批次同步数据成功后,在核对本批次归档数据条数时,需要查询统计归档库,会因归档库的数据量过大而导致查询统计性能严重下降,最终无法查询成功。
2、在按数据时间分批次同步数据时,只要出现其中一次或多次同步失败,无法通过直接重新同步来解决,需要涉及数据的回滚,同时因为归档库数据量大导致回滚失败针对传统数据同步归档方案的不足。
为了解决上述问题,本发明需要归档的源库表,按照时间批次将归档数据分多批次同步,并将归档库的目标表设计为分区表,分区字段为源库表中的分批时间字段,并新建临时表用于单个批次要归档的数据,在验证本次归档数据量正确后,将临时表中的数据与目标表中分区作交换,实现快速插入数据至目标表。具体地,在接收到数据归档指令时,确定待归档的源库表、源库表中待归档数据以及归档后的目标表。可基于预设时间间隔,并结合数据量大小设置预设分批时间单位,在数据量较小时,可设置较长时间,如一年数据作为一批,在数据量较大时,可设置较短时间,如一个月数据作为一批。对应获取所述源库表中各个分批时间单位内的待归档数据,即为分批待归档数据。如一年内的待归档数据分为十二个月对应的分批待归档数据。
步骤S20,根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;
本实施例中,基于所述海量数据源库表TAB_SRC中各个分批待归档数据对应的分批时间标识,即时间T内的源库表数据作为一个同步数据批次,如2012年10月的数据作为一个同步数据批次,将目标表TAB_DIST设计为分区表,分区字段为各个分批时间标识,2012.10等。具体实施例中,还可以将分批时间标识设置对应的分区字段关联关系,以便基于目标表中的分区字段定位至所述源库表中的对应分批数据。然后新建临时表TAB_TMP,并基于所述目标表中的分区规则将所述临时表进行对应分区,并将临时表的分区设置与目标表中相同的分区字段。然后根据所述分批待归档数据对应的分批时间标识,即可将所述分批待归档数据分批同步至所述临时表中相同临时分区标识的分区中,生成各个临时分区数据。其中,所述分批时间标识与所述临时表中的临时分区标识一一对应,如相同,或者是在预设关联表中一一对应关联。
步骤S30,在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
本实施例中,为了防止发生同步异常,对所述临时表中的各个分区的数据量进行验证,即判断临时表中的各个分区的数据量是否与所述源库表中各个时间段对应的批次数据量相同,例如,验证TAB_TMP中的数据量N1与时间T内源表TAB_SRC对应的数据量N2,如果N1=N2则表示所述源库表中的各个批次数据同步至所述临时表中的各个分区时,未发生同步异常,则将临时表TAB_TMP表中的各个分区数据与所述目标表TAB_DIST表做分区交换。由此完成了所述源库表向所述目标表中海量数据的分批归档。
进一步地,所述步骤S30之后,还包括:
在检测到完成所述目标表中各个目标分区的数据归档后,删除所述源库表中的待归档数据。
本实施例中,若所述临时表与所述目标表各个分区数据交换成功则删除所述源库表中的待归档数据,若存在交换失败的分区,则针对该分区重试进行数据交换。在检测到临时表中所有分区数据全部归档至所述目标表中的各个分区后,然后根据归档条件,删除时间T内源表TAB_SRC的数据,直至TAB_SRC中没有时间T内的数据。若检测到临时表中的某个分区归档异常时,重新将该分区进行二次归档,直至归档成功。由此,依次将源库表TAB_SR0C中预设时间段,如两年前的数据同步归档至目标表TAB_DIST。
本实施例提供一种数据的分批归档方法,通过在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。通过上述方式,本发明通过建立临时表用于数据校验,即将临时表按照源库表中待分批数据的分批时间标识进行同步分区,然后在将源库表中的数据分批次同步至所述临时表对应的分区后,验证临时表中各个分区的数据量是否与所述源库表中的各个分批数据相同,异常时,可针对异常分区快速进行数据二次同步,然后将所述临时表中的各个分区与所述目标表进行分区交换,完成了数据的分批归档。不仅可以快速校验归档的数据量是否正确,而且在发生归档错误时,可以快速针对性重新同步数据,提升了归档效率,解决了现有数据量大而导致数据归档效率低下的技术问题。
参照图3,图3为本发明数据的分批归档方法第二实施例的流程示意图。
基于上述图2所示实施例,本实施例中,所述步骤S10之后,还包括:
步骤S40,将所述临时表中的各个临时分区数据分别与所述源库表中对应的分批待归档数据进行比对,判断所述临时表中是否存在数据量异常的异常临时分区数据,其中,所述异常临时分区的数据量与对应分批待归档数据不一致;
步骤S50,若所述临时表中存在所述异常临时分区数据,则获取所述异常临时分区数据对应的异常临时分区标识,并删除所述异常临时分区标识对应的临时分区;
步骤S60,在所述源库表中确定所述异常分区标识对应的相关分批时间标识,并将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区。
其中,若所述临时表中不存在所述异常临时分区数据,则判定所述临时分区数据与对应的分批待归档数据的数据量均相同,执行步骤:
根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
本实施例中,若所述临时表中存在异常的分区数据量,则可针对该异常分区进行二次同步,即删除所述临时表中该分区的数据,并重新从所述源库表中将该批次的数据重新导入至所述临时表的该分区。具体地,获取所述异常临时分区数据对应的异常临时分区标识,并将所述异常临时分区标识对应的临时分区中的数据清除,然后在所述源库表中确定所述异常分区标识对应的相关分批时间标识,并将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区。若所述临时表中不存在异常的分区数据量,则执行步骤S30即可。
进一步地,所述步骤S60之后,还包括:
在将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区后,判断重新导入的异常临时分区数据的数据量是否与对应分批待归档数据的数据量相同;
若重新导入的异常临时分区数据的数据量与对应分批待归档数据的数据量不相同,则根据所述异常临时分区标识以及相关分批时间标识,生成对应的数据同步异常提醒消息,以便用户进行对应数据同步异常处理。
本实施例中,如果N1不等于N2,则可快速定位至发生异常的分区,并针对性地将该分区的数据重新进行导入,即将临时表中对应分区的数据进行清楚,并将源库表中时间T内的数据重新导入至所述临时表中的对应分区。由此,通过分区特征,在发生数据导入异常时,无需导入源库表整个表的数据,提高数据回滚性能。进一步地,可针对数量不一致的错误进行检测,生成对应的提醒消息,或者进一步检测是否存在不可同步的数据,若存在,则根据所述不可同步的数据生成对应的提醒消息,以便用户进行对应处理。
参照图4,图4为本发明数据的分批归档方法第三实施例的流程示意图。
基于上述图3所示实施例,本实施例中,所述步骤S20具体包括:
步骤S21,根据所述分批待归档数据对应的分批时间标识,将所述目标表进行分区,生成各个目标分区,并根据所述分批时间标识,生成所述各个目标分区对应的目标分区标识;
步骤S22,根据所述各个目标分区,将所述临时表进行分区,生成各个临时分区,并根据所述目标分区标识,生成所述各个临时分区的临时分区标识;
步骤S23,基于所述分批时间标识,将所述分批待归档数据分批同步至所述临时表中的对应临时分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时分区标识一一对应。
其中,所述步骤S23具体包括:
在所述临时分区数据与对应的分批待归档数据的数据量均相同时,获取所述临时表中的一临时分区,作为当前临时分区;
获取所述当前临时分区对应的当前临时分区标识,并确定与所述当前临时分区标识相同的目标分区标识,作为当前目标分区标识;
根据所述当前目标分区标识在所述目标表中确定当前目标分区,并将所述当前临时分区中的当前临时分区数据归档至所述当前目标分区,以完成所述目标表中各个目标分区的数据归档。
本实施例中,若所述临时表中不存在异常的分区数据量,即所述源库表中的各个批次数据同步至所述临时表中的各个分区时,未发生同步异常,则将临时表TAB_TMP表中的各个分区数据与所述目标表TAB_DIST表做分区交换,各个分区数据交换成功则删除所述源库表中的待归档数据即可,交换失败则重试执行交换步骤。在检测到临时表中所有分区数据全部归档至所述目标表中的各个分区后,然后根据归档条件,删除时间T内源表TAB_SRC的数据,直至TAB_SRC中没有时间T内的数据。若检测到临时表中的某个分区归档异常时,重新将该分区进行二次归档,直至归档成功。由此,依次将源库表TAB_SR0C中预设时间段,如两年前的数据同步归档至目标表TAB_DIST。
此外,本发明实施例还提供一种数据的分批归档装置。
参照图5,图5为本发明数据的分批归档装置第一实施例的功能模块示意图。
本实施例中,所述数据的分批归档装置包括:
源表数据分批模块10,用于在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;
临时数据同步模块20,用于根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;
目标数据归档模块30,用于在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
进一步地,所述数据的分批归档装置还包括数据二次同步模块,所述数据二次同步模块用于:
将所述临时表中的各个临时分区数据分别与所述源库表中对应的分批待归档数据进行比对,判断所述临时表中是否存在数据量异常的异常临时分区数据,其中,所述异常临时分区的数据量与对应分批待归档数据不一致;
若所述临时表中存在所述异常临时分区数据,则获取所述异常临时分区数据对应的异常临时分区标识,并删除所述异常临时分区标识对应的临时分区;
在所述源库表中确定所述异常分区标识对应的相关分批时间标识,并将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区。
进一步地,所述数据二次同步模块还用于:
在将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区后,判断重新导入的异常临时分区数据的数据量是否与对应分批待归档数据的数据量相同;
若重新导入的异常临时分区数据的数据量与对应分批待归档数据的数据量不相同,则根据所述异常临时分区标识以及相关分批时间标识,生成对应的数据同步异常提醒消息,以便用户进行对应数据同步异常处理。
进一步地,所述数据二次同步模块还用于:
若所述临时表中不存在所述异常临时分区数据,则判定所述临时分区数据与对应的分批待归档数据的数据量均相同,则转入进一步地,所述数据二次同步模块,执行步骤:
根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
进一步地,所述临时数据同步模块20具体包括:
第一标识生成单元,用于根据所述分批待归档数据对应的分批时间标识,将所述目标表进行分区,生成各个目标分区,并根据所述分批时间标识,生成所述各个目标分区对应的目标分区标识;
第二标识生成单元,用于根据所述各个目标分区,将所述临时表进行分区,生成各个临时分区,并根据所述目标分区标识,生成所述各个临时分区的临时分区标识;
临时数据同步单元,用于基于所述分批时间标识,将所述分批待归档数据分批同步至所述临时表中的对应临时分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时分区标识一一对应。
进一步地,所述临时数据同步模块20还用于:
在所述临时分区数据与对应的分批待归档数据的数据量均相同时,获取所述临时表中的一临时分区,作为当前临时分区;
获取所述当前临时分区对应的当前临时分区标识,并确定与所述当前临时分区标识相同的目标分区标识,作为当前目标分区标识;
根据所述当前目标分区标识在所述目标表中确定当前目标分区,并将所述当前临时分区中的当前临时分区数据归档至所述当前目标分区,以完成所述目标表中各个目标分区的数据归档。
进一步地,所述数据的分批归档装置还包括数据清除模块,所述数据清除模块用于:
在检测到完成所述目标表中各个目标分区的数据归档后,删除所述源库表中的待归档数据。
其中,上述数据的分批归档装置中各个模块与上述数据的分批归档方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
此外,本发明实施例还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有数据的分批归档程序,其中所述数据的分批归档程序被处理器执行时,实现如上述的数据的分批归档方法的步骤。
其中,数据的分批归档程序被执行时所实现的方法可参照本发明数据的分批归档方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数据的分批归档方法,其特征在于,所述数据的分批归档方法包括以下步骤:
在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;
根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;
在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
2.如权利要求1所述的数据的分批归档方法,其特征在于,所述根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据的步骤之后,还包括:
将所述临时表中的各个临时分区数据分别与所述源库表中对应的分批待归档数据进行比对,判断所述临时表中是否存在数据量异常的异常临时分区数据,其中,所述异常临时分区的数据量与对应分批待归档数据不一致;
若所述临时表中存在所述异常临时分区数据,则获取所述异常临时分区数据对应的异常临时分区标识,并删除所述异常临时分区标识对应的临时分区;
在所述源库表中确定所述异常分区标识对应的相关分批时间标识,并将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区。
3.如权利要求2所述的数据的分批归档方法,其特征在于,所述在所述源库表中确定所述异常分区标识对应的相关分批时间标识,并将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区步骤之后,还包括:
在将所述相关分批时间标识对应的分批待归档数据重新导入至所述异常临时分区标识对应的临时分区后,判断重新导入的异常临时分区数据的数据量是否与对应分批待归档数据的数据量相同;
若重新导入的异常临时分区数据的数据量与对应分批待归档数据的数据量不相同,则根据所述异常临时分区标识以及相关分批时间标识,生成对应的数据同步异常提醒消息,以便用户进行对应数据同步异常处理。
4.如权利要求2所述的数据的分批归档方法,其特征在于,所述将所述临时表中的各个临时分区数据分别与所述源库表中对应的分批待归档数据进行比对,判断所述临时表中是否存在数据量异常的异常临时分区数据的步骤之后,还包括:
若所述临时表中不存在所述异常临时分区数据,则判定所述临时分区数据与对应的分批待归档数据的数据量均相同,执行步骤:
根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
5.如权利要求1所述的数据的分批归档方法,其特征在于,所述根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,作为各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应的步骤具体包括:
根据所述分批待归档数据对应的分批时间标识,将所述目标表进行分区,生成各个目标分区,并根据所述分批时间标识,生成所述各个目标分区对应的目标分区标识;
根据所述各个目标分区,将所述临时表进行分区,生成各个临时分区,并根据所述目标分区标识,生成所述各个临时分区的临时分区标识;
基于所述分批时间标识,将所述分批待归档数据分批同步至所述临时表中的对应临时分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时分区标识一一对应。
6.如权利要求5所述的数据的分批归档方法,其特征在于,所述在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区的步骤具体包括:
在所述临时分区数据与对应的分批待归档数据的数据量均相同时,获取所述临时表中的一临时分区,作为当前临时分区;
获取所述当前临时分区对应的当前临时分区标识,并确定与所述当前临时分区标识相同的目标分区标识,作为当前目标分区标识;
根据所述当前目标分区标识在所述目标表中确定当前目标分区,并将所述当前临时分区中的当前临时分区数据归档至所述当前目标分区,以完成所述目标表中各个目标分区的数据归档。
7.如权利要求1至6任意一项所述的数据的分批归档方法,其特征在于,所述在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区的步骤之后,还包括:
在检测到完成所述目标表中各个目标分区的数据归档后,删除所述源库表中的待归档数据。
8.一种数据的分批归档装置,其特征在于,所述数据的分批归档装置包括:
源表数据分批模块,用于在接收到数据归档指令时,根据所述数据归档指令确定待归档的源库表、所述源库表中的待归档数据以及归档后的目标表,并根据预设分批时间单位,分批获取所述源库表中的待归档数据,作为分批待归档数据;
临时数据同步模块,用于根据所述分批待归档数据对应的分批时间标识,将所述分批待归档数据分批同步至预设临时表中的对应分区,生成各个临时分区数据,其中,所述分批时间标识与所述临时表中的临时分区标识一一对应;
目标数据归档模块,用于在所述临时分区数据与对应的分批待归档数据的数据量均相同时,根据预设对应关联关系、所述临时分区标识以及所述目标表中的目标分区标识,将所述临时表中的各个临时分区数据归档至所述目标表中的对应目标分区。
9.一种数据的分批归档设备,其特征在于,所述数据的分批归档设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的数据的分批归档程序,其中所述数据的分批归档程序被所述处理器执行时,实现如权利要求1至7中任一项所述的数据的分批归档方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据的分批归档程序,其中所述数据的分批归档程序被处理器执行时,实现如权利要求1至7中任一项所述的数据的分批归档方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010182813.2A CN111427864A (zh) | 2020-03-16 | 2020-03-16 | 数据的分批归档方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010182813.2A CN111427864A (zh) | 2020-03-16 | 2020-03-16 | 数据的分批归档方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111427864A true CN111427864A (zh) | 2020-07-17 |
Family
ID=71546456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010182813.2A Pending CN111427864A (zh) | 2020-03-16 | 2020-03-16 | 数据的分批归档方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427864A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115200A (zh) * | 2020-09-16 | 2020-12-22 | 北京奇艺世纪科技有限公司 | 数据同步方法、装置、电子设备及可读存储介质 |
-
2020
- 2020-03-16 CN CN202010182813.2A patent/CN111427864A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115200A (zh) * | 2020-09-16 | 2020-12-22 | 北京奇艺世纪科技有限公司 | 数据同步方法、装置、电子设备及可读存储介质 |
CN112115200B (zh) * | 2020-09-16 | 2023-08-29 | 北京奇艺世纪科技有限公司 | 数据同步方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874644B (zh) | 数据监控方法、装置、计算机设备及存储介质 | |
CN108228814B (zh) | 数据同步方法及装置 | |
WO2020248375A1 (zh) | 数据库间数据同步方法、系统、计算机设备及存储介质 | |
WO2020253122A1 (zh) | 数据核对方法、装置、计算机设备和存储介质 | |
CN112364049B (zh) | 数据同步脚本生成方法、系统、终端及存储介质 | |
CN109376142B (zh) | 数据迁移方法及终端设备 | |
CN110737594A (zh) | 自动生成测试用例的数据库标准符合性测试方法及装置 | |
CN109002305B (zh) | 一种设备程序的更新方法及其系统 | |
CN111427864A (zh) | 数据的分批归档方法、装置、设备及存储介质 | |
CN113553373B (zh) | 数据同步方法及装置、存储介质及电子设备 | |
CN113468143A (zh) | 数据迁移方法、系统、计算设备及存储介质 | |
CN111385613B (zh) | 一种电视系统修复方法、存储介质及应用服务器 | |
CN114185867A (zh) | 确认数据一致性的方法、装置和电子设备 | |
CN110046172B (zh) | 在线计算数据处理方法及系统 | |
CN115827657A (zh) | 数据库的数据同步方法、存储介质以及设备 | |
WO2016180174A1 (zh) | 语音文件同步的方法和装置 | |
CN114116253A (zh) | 一种消息队列的消息处理方法及系统 | |
CN111339100A (zh) | 数据核对方法及装置 | |
CN109240906B (zh) | 数据库配置信息适配方法、装置、计算机设备和存储介质 | |
CN114900531B (zh) | 数据同步方法、装置和系统 | |
CN108509328B (zh) | 数据库校验方法及装置 | |
CN114003266B (zh) | 一种基于Android刷机固件生成多个差分包的方法与装置 | |
KR102030544B1 (ko) | 프로그램에서 지원하는 기능에 대한 함수 호출 정보의 생성이 가능한 프로그램 분석 장치 및 그 동작 방법 | |
CN115048416A (zh) | 数据查询方法、装置和设备 | |
CN113987075A (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 |