CN113901057A - 数据回放方法、装置、计算机设备和存储介质 - Google Patents
数据回放方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN113901057A CN113901057A CN202111243590.7A CN202111243590A CN113901057A CN 113901057 A CN113901057 A CN 113901057A CN 202111243590 A CN202111243590 A CN 202111243590A CN 113901057 A CN113901057 A CN 113901057A
- Authority
- CN
- China
- Prior art keywords
- data
- incremental
- played back
- temporary
- target
- 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/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/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种数据回放方法、装置、计算机设备和存储介质。所述方法包括:获取电力系统的中间件的增量数据;所述增量数据携带有对应的数据类型;若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表;从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。采用本方法能够提升电力系统的数据回放效率。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据回放方法、装置、计算机设备和存储介质。
背景技术
随着电力系统的业务飞速发展,电力系统的数据变更频率在逐渐增加,对电力系统更新数据库的要求也越来越高,经常需要进行数据写入、数据回放等问题。
传统的数据回放方法通常是基于数据库的回放,需要长时间连接数据库,然后对数据库中数据表的数据进行逐条写入。但是,这种方法会使电力系统消耗大量的时间资源来连接数据库进行数据回放,尤其在数据量较大的电力系统中,使用这种传统的数据回放技术进行数据回放,会消耗更长的时间进行数据库连接,无法达到电力系统数据的实时写入效果,因此需要对电力系统的数据回放方式进行改进,以适应高数据量、变更频繁、低延迟要求的电力系统。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升电力系统数据回放效率的数据回放方法、装置、计算机设备和存储介质。
一种数据回放方法,所述方法包括:
获取电力系统的中间件的增量数据;所述增量数据携带有对应的数据类型;
若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表;
从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
在其中一个实施例中,获取电力系统的中间件的增量数据,包括:
当所述电力系统的中间件中存储有增量数据时,则按照第一预设格式,从所述中间件中读取出所述增量数据,得到所述第一预设格式的增量数据;所述第一预设格式的增量数据的数据结构为双层嵌套结构。
在其中一个实施例中,在获取电力系统的中间件的增量数据之后,还包括:
从所述第一预设格式的增量数据中,解析出待回放数据;
按照第二预设格式,将所述待回放数据进行格式转换处理,得到所述第二预设格式的待回放数据,作为目标增量数据;
所述若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表,包括:
若所述目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述目标增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的目标增量数据存储至待回放数据库中对应的临时数据表。
在其中一个实施例中,若所述目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述目标增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的目标增量数据存储至待回放数据库中对应的临时数据表,包括:
若所述目标增量数据的数据类型为所述删除数据,则将所述目标增量数据存储至第一临时文件,并将所述第一临时文件中的目标增量数据进行复制后存储至所述待回放数据库中的第一临时数据表;
若所述目标增量数据的数据类型为所述新增数据或所述修改数据,则将所述目标增量数据存储至第二临时文件,并将所述第二临时文件中的目标增量数据进行复制后存储至所述待回放数据库中的第二临时数据表。
在其中一个实施例中,从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表,包括:
若所述待回放数据库中所述增量数据关联的待回放数据表中,包括与所述第一临时数据表和所述第二临时数据表中的至少一个数据表中的数据相匹配的数据,则对所述待回放数据表中与所述至少一个数据表中的数据相匹配的数据进行删除处理,得到删除后的待回放数据表;
将所述第二临时数据表中的数据添加到所述删除后的待回放数据表,得到所述目标回放数据表。
在其中一个实施例中,在获取电力系统的中间件的增量数据之后,还包括:
若所述增量数据的数据类型为变更表结构,则对所述待回放数据表进行相应的结构变更处理。
在其中一个实施例中,若所述增量数据的数据类型为变更表结构,则对所述待回放数据表进行相应的结构变更处理,包括:
若所述增量数据的数据类型为变更表结构,则对所述增量数据进行结构采集处理,得到所述增量数据的表结构;
根据所述增量数据的表结构,对所述待回放数据表进行相应的结构变更处理。
一种数据回放装置,所述装置包括:
数据获取模块,用于获取电力系统的中间件的增量数据;所述增量数据携带有对应的数据类型;
数据存储模块,用于若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表;
数据回放模块,用于从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取电力系统的中间件的增量数据;所述增量数据携带有对应的数据类型;
若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表;
从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取电力系统的中间件的增量数据;所述增量数据携带有对应的数据类型;
若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表;
从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
上述数据回放方法、装置、计算机设备和存储介质,通过获取电力系统的中间件的增量数据,若增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将增量数据存储至数据类型对应的临时文件中,然后将临时文件中的增量数据直接存储至待回放数据库中对应的临时数据表,最后从待回放数据表中,对与临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。采用本方法,通过直接将临时文件中的增量数据存储至临时数据表,能够根据临时数据表对待回放数据表进行数据回放,无需与数据库建立长时间的连接来写入增量数据,减少了与数据库的交互次数,使得数据回放的速度提升了,从而提升了电力系统的数据回放效率。
附图说明
图1为一个实施例中数据回放方法的流程示意图;
图2为一个实施例中获取目标回放数据表步骤的流程示意图;
图3为另一个实施例中数据回放方法的流程示意图;
图4为又一个实施例中数据回放方法的流程示意图;
图5为一个实施例中数据回放装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种数据回放方法,本实施例以该方法应用于服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的系统,并通过服务器和终端的交互实现。本实施例中,该方法包括以下步骤:
步骤S101,获取电力系统的中间件的增量数据;增量数据携带有对应的数据类型。
其中,中间件是指电力系统的服务器中的一组应用程序,用于缓存电力系统中的数据。增量数据是指上次获取中间件中的数据之后产生的新数据。增量数据的数据类型包括删除数据、新增数据、修改数据和变更表结构。
具体地,服务器对电力系统的中间件发送数据检测指令,检测中间件内是否存在增量数据,若检测出中间件内存在增量数据,则调用数据读取指令获取中间件中的增量数据。由此,服务器获取增量数据之后,将增量数据作为数据存储依据执行后续的数据回放步骤。电力系统中数据的变更较为频繁,将电力系统数据存储在服务器的缓存中间件中,有利于对电力系统的数据进行快速读取,提升电力系统的数据回放速度。
步骤S102,若增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将增量数据存储至数据类型对应的临时文件中,并将临时文件中的增量数据存储至待回放数据库中对应的临时数据表。
其中,待回放数据库是指需要进行数据回放的数据库。数据类型中的删除数据是指当前增量数据已在电力系统中删除了,数据类型中的新增数据是指当前增量数据是新增加到在电力系统中的数据,数据类型中的修改数据是指当前增量数据已在电力系统中发生数值变更了。
具体地,服务器获取增量数据之后,对增量数据进行数据解析,进而服务器得到增量数据的数据类型,然后服务器根据数据类型创建多个临时文件,服务器判断增量数据的数据类型,将增量数据存储到与数据类型对应的临时文件中,接着服务器根据数据类型,在待回放数据库中创建多个临时数据表,并将临时文件中的增量数据存储到与其数据类型对应的临时数据表中。
步骤S103,从待回放数据库中增量数据关联的待回放数据表中,对与临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
其中,待回放数据表是指需要进行数据回放的数据表,用于存储电力系统中间件的增量数据。
具体地,服务器分别将各个临时数据表中的数据,与待回放数据库中需要进行增量数据的数据回放的待回放数据表进行数据匹配,若待回放数据表中存在与任一临时数据表中数据相同的数据,则将待回放数据表中该相同数据进行删除,然后将临时数据表中需要写入的数据拷贝到待回放数据表中,从而得到目标回放数据表。
上述数据回放方法中,通过获取电力系统的中间件的增量数据,若增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将增量数据存储至数据类型对应的临时文件中,然后将临时文件中的增量数据直接存储至待回放数据库中对应的临时数据表,最后从待回放数据表中,对与临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。采用本方法,通过直接将临时文件中的增量数据存储至临时数据表,能够根据临时数据表对待回放数据表进行数据回放,无需与数据库建立长时间的连接来写入增量数据,减少了与数据库的交互次数,使得数据回放的速度提升了,从而提升了电力系统的数据回放效率。
在一个实施例中,步骤S101,获取电力系统的中间件的增量数据,具体包括:当电力系统的中间件中存储有增量数据时,则按照第一预设格式,从中间件中读取出增量数据,得到第一预设格式的增量数据;第一预设格式的增量数据的数据结构为双层嵌套结构。
其中,增量数据的数据结构为双层嵌套结构是指增量数据的数据结构为两层,双层嵌套结构的第一层包括表名、到达时间等增量数据的基础数据信息,双层嵌套结构的第二层包括ID、名称、用电量和数据类型等增量数据的数据具体数值。
具体地,服务器根据电力系统的中间件,调用中间件的增量数据检测指令,并将该增量数据检测指令发送至中间件,中间件响应该指令,若中间件中存在增量数据,则中间件生成数据存在信息并将该信息发送至服务器,服务器接收该信息,调用数据读取指令,按照第一预设格式从中间件中读取增量数据,进而服务器得到第一预设格式的增量数据;若中间件内不存在增量数据,则中间件生成数据不存在信息,并将该信息发送至服务器,服务器接收该信息,等待下一次的触发数据回放时,服务器再次调用增量数据检测指令,执行上述步骤。
进一步地,第一预设格式是指预先设置的从中间件中读取的增量数据的数据格式,例如,将第一预设格式设置为json(JavaScript Object Notation,JS对象简谱)格式,则服务器从电力系统的中间件内读取增量数据,得到json格式的增量数据。
本实施例中,按照第一预设格式,获取电力系统的中间中存储的增量数据,从而方便后续对第一预设格式的增量数据进行数据解析,进而将解析得到的数据存储至临时文件,然后将临时文件的数据存储至临时数据表,根据临时数据表对待回放数据表进行数据回放,无需与数据库建立长时间的连接来写入增量数据,减少了与数据库的交互次数,使得数据回放的速度提升了,从而提升了电力系统的数据回放效率。
在一个实施例中,在获取电力系统的中间件的增量数据之后,还包括:从第一预设格式的增量数据中,解析出待回放数据;按照第二预设格式,将待回放数据进行格式转换处理,得到第二预设格式的待回放数据,作为目标增量数据;那么,上述步骤S102,若增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将增量数据存储至数据类型对应的临时文件中,并将临时文件中的增量数据存储至待回放数据库中对应的临时数据表,具体包括:若目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将目标增量数据存储至数据类型对应的临时文件中,并将临时文件中的目标增量数据存储至待回放数据库中对应的临时数据表。
具体地,服务器根据第一预设格式的增量数据的双层嵌套结构,调用对应的数据解析指令,对第一预设格式的增量数据进行数据解析处理,进而服务器得到增量数据的第二层的数据具体数值,作为待回放数据,然后按照第二预设格式,将待回放数据进行格式转换,得到第二预设格式的待回放数据,作为目标增量数据;目标增量数据携带有对应的数据类型,服务器根据数据类型创建多个临时文件,临时文件的文件格式与第二预设格式相同;然后服务器判断目标增量数据的数据类型是否为删除数据、新增数据、修改数据中的任意一种,若目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则根据数据类型,将目标增量数据拷贝到与数据类型对应的临时文件中,然后在待回放数据库中创建多个临时数据表,并将临时文件中的目标增量数据存储到与其数据类型对应的临时数据表中。
进一步地,第二预设格式是指预先设置的待回放数据的数据格式,例如,将第二预设格式设置为csv(Comma-Separated Values,逗号分隔值)格式,则服务器按照第二预设格式,将增量数据进行数据解析后得到的待回放数据进行格式转换,得到csv格式的待回放数据。
在本实施例中,服务器从第一预设格式的增量数据中,解析出待回放数据,然后按照第二预设格式,将待回放数据进行格式转换处理,得到第二预设格式的待回放数据,作为目标增量数据,进而将目标增量数据作为数据存储依据执行后续的数据回放步骤,通过存储有目标增量数据的临时数据表进行与回放数据表的数据回放操作,无需与数据库建立长时间的连接来写入增量数据,减少了与数据库的交互次数,使得数据回放的速度提升了,从而提升了电力系统的数据回放效率。
在一个实施例中,若目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将目标增量数据存储至数据类型对应的临时文件中,并将临时文件中的目标增量数据存储至待回放数据库中对应的临时数据表,具体包括:若目标增量数据的数据类型为删除数据,则将目标增量数据存储至第一临时文件,并将第一临时文件中的目标增量数据进行复制后存储至待回放数据库中的第一临时数据表;若目标增量数据的数据类型为新增数据或修改数据,则将目标增量数据存储至第二临时文件,并将第二临时文件中的目标增量数据进行复制后存储至待回放数据库中的第二临时数据表。
具体地,服务器得到目标增量数据之后,获得目标增量数据的数据类型,在本地磁盘上创建第二预设格式的第一临时文件和第二临时文件。服务器判断目标增量数据的数据类型,若目标增量数据的数据类型为删除数据,则服务器将该目标增量数据存储至第一临时文件,然后在待回放数据库中创建第一临时数据表,进而将第一临时文件中存储的目标增量数据拷贝到待回放数据库的第一临时数据表中,之后,服务器将本地磁盘中的第一临时文件进行删除;若目标增量数据的数据类型为新增数据或修改数据,服务器将该目标增量数据存储至第二临时文件,然后在待回放数据库中创建第二临时数据表,进而将第二临时文件中存储的目标增量数据拷贝到待回放数据库的第二临时数据表中,之后,服务器将本地磁盘中的第二临时文件进行删除。
在本实施例中,服务器在本地磁盘上创建第一临时文件和第二临时文件,第一临时文件用于存储数据类型为删除数据的目标增量数据,第一临时文件用于存储数据类型为新增数据或修改数据的目标增量数据,然后将第一临时文件和第二临时文件中存储的目标增量数据拷贝到待回放数据库中的第一临时数据表和第二临时数据表中。采用本方法,通过将目标增量数据存储至本地磁盘,能够直接将本地磁盘中的第一、第二临时文件中的目标增量数据拷贝至第一、第二临时数据表,无需与数据库建立长时间的连接来写入增量数据,不仅减少了与数据库的交互次数,数据拷贝方式还具有更快的回放速度,使得数据回放的速度提升了,从而提升了电力系统的数据回放效率。
在一个实施例中,如图2所示,上述步骤S103,从待回放数据库中增量数据关联的待回放数据表中,对与临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表,具体包括:
步骤S201,若待回放数据库中增量数据关联的待回放数据表中,包括与第一临时数据表和第二临时数据表中的至少一个数据表中的数据相匹配的数据,则对待回放数据表中与至少一个数据表中的数据相匹配的数据进行删除处理,得到删除后的待回放数据表。
具体地,服务器将待回放数据库中增量数据关联的待回放数据表中存储的数据,分别与第一临时数据表和第二临时数据表中存储的数据进行主键匹配,若待回放数据表中,存在与第一临时数据表和第二临时数据表中的至少一个数据表中主键相匹配的数据,则调用数据表的删除指令,对待回放数据表中相匹配的数据进行删除,然后删除后的待回放数据表。此时的删除后的待回放数据表中仅包括在电力系统中未发生任何变更的数据,即不包括在电力系统中发生了变更的删除数据、新增数据和修改数据。
步骤S202,将第二临时数据表中的数据添加到删除后的待回放数据表,得到目标回放数据表。
具体地,服务器将第二临时数据表中的目标增量数据复制到待回放数据表中,得到目标回放数据表,此时的目标回放数据表已经删除了与数据类型为删除数据相同的数据,对第二临时数据表中数据类型为新增数据、修改数据的数据也进行了存储,实现了数据变更后的数据回放,目标回放数据表为最终的数据回放结果。
在本实施例中,服务器将待回放数据表中与至少一个数据表中的数据相匹配的数据进行删除处理,得到删除后的待回放数据表,然后将第二临时数据表中的数据添加到删除后的待回放数据表,得到目标回放数据表。采用本方法,能够根据临时数据表对待回放数据表进行数据回放,无需与数据库建立长时间的连接来写入增量数据,减少了与数据库的交互次数,使得数据回放的速度提升了,从而提升了电力系统的数据回放效率。
在一个实施例中,在获取电力系统的中间件的增量数据之后,还包括:若增量数据的数据类型为变更表结构,则对待回放数据表进行相应的结构变更处理。
其中,数据类型中的变更表结构是指当前电力系统的数据表的表结构已发生变更,例如数据表新增了一列、数据表删除了某列、数据表的某列修改了,具体情况也可以根据电力系统的实际数据表变更情况进行调整,在此不做具体限定。
具体地,服务器目标增量数据之后,对目标增量数据的数据类型进行判断,若所述目标增量数据的数据类型为变更表结构,则根据目标增量数据的表结构,对待回放数据表进行相应的结构变更,使得待回放数据表的表结构与目标增量数据的表结构一致。
在本实施例中,通过对待回放数据表进行结构变更处理,使得最终获取的数据表的表结构与目标增量数据的表结构一致。采用本方法,不仅能够在待回放数据表中进行数据写入,还能够实时对待回放数据表进行表结构变更,无需根据变更的表结构重新创建数据表进行数据回放,减少了数据库中内存资源的占用,也避免了与数据库建立长时间的连接,从而进一步提升了电力系统的数据回放效率。
在一个实施例中,若增量数据的数据类型为变更表结构,则对待回放数据表进行相应的结构变更处理,具体包括:若增量数据的数据类型为变更表结构,则对增量数据进行结构采集处理,得到增量数据的表结构;根据增量数据的表结构,对待回放数据表进行相应的结构变更处理。
具体地,服务器目标增量数据之后,对目标增量数据的数据类型进行判断,若所述目标增量数据的数据类型为变更表结构,则调用数据表的结构采集指令,对目标增量数据的表结构进行采集,进而服务器得到目标增量数据的表结构,根据目标增量数据的表结构,对待回放数据表的表结构进行相应的结构变更处理,结构变更处理包括删除列、新增列和修改列等;最终得到的待回放数据表的表结构与目标增量数据的表结构一致。
在本实施例中,对数据类型为变更表结构的目标增量数据进行结构采集处理,得到目标增量数据的表结构,然后根据目标增量数据的表结构,对待回放数据表进行相应的结构变更处理。采用本方法,不仅能够实现变更数据的数据回放,还能够对待回放数据表进行表结构变更的数据回放,无需根据变更的表结构重新创建数据表进行数据回放,减少了数据库中内存资源的占用,也避免了与数据库建立长时间的连接,从而进一步提升了电力系统的数据回放效率。
在一个实施例中,如图3所示,提供了另一种数据回放方法,以该方法应用于服务器为例进行说明,包括以下步骤:
步骤S301,当电力系统的中间件中存储有增量数据时,则按照第一预设格式,从中间件中读取出增量数据,得到第一预设格式的增量数据;第一预设格式的增量数据的数据结构为双层嵌套结构。
步骤S302,从第一预设格式的增量数据中,解析出待回放数据。
步骤S303,按照第二预设格式,将待回放数据进行格式转换处理,得到第二预设格式的待回放数据,作为目标增量数据。
步骤S304,若目标增量数据的数据类型为删除数据,则将目标增量数据存储至第一临时文件,并将第一临时文件中的目标增量数据进行复制后存储至待回放数据库中的第一临时数据表。
步骤S305,若目标增量数据的数据类型为新增数据或修改数据,则将目标增量数据存储至第二临时文件,并将第二临时文件中的目标增量数据进行复制后存储至待回放数据库中的第二临时数据表。
步骤S306,若待回放数据库中增量数据关联的待回放数据表中,包括与第一临时数据表和所述第二临时数据表中的至少一个数据表中的数据相匹配的数据,则对待回放数据表中与至少一个数据表中的数据相匹配的数据进行删除处理,得到删除后的待回放数据表。
步骤S307,将第二临时数据表中的数据添加到删除后的待回放数据表,得到目标回放数据表。
上述数据回放方法,能够直接将临时文件中的增量数据存储至临时数据表,然后根据临时数据表对待回放数据表进行数据回放,无需与数据库建立长时间的连接来写入增量数据,减少了与数据库的交互次数,使得数据回放的速度提升了,从而提升了电力系统的数据回放效率。
为了更清晰阐明本公开实施例提供的数据回放方法,以下以一个具体的实施例对该数据回放方法进行具体说明。在一个实施例中,如图4所示,本公开还提供了一种数据回放方法,具体包括以下内容:
服务器从电力系统的缓存中间件中读取出增量数据,对增量数据进行数据解析,得到增量数据的业务系统、表名、主键和数据类型等信息,然后判断当前增量数据的数据类型,若数据类型为变更表结构,则进入结构变更(Data Definition Language,DDL)分支,根据当前增量数据,对待回放数据表进行同样的表结构变更处理;若数据类型为删除数据、新增数据、修改数据中的任意一种,则进入数据变更(Data Manipulation Language,DML)分支,然后继续对当前增量数据的数据类型进行进一步的判断;若当前增量数据的数据类型为删除数据,则进入删除类型分支,在本地磁盘中创建del本地数据文件作为临时文件,将当前增量数据存储至del本地数据文件,将del本地数据文件中所有的增量数据拷贝到待回放数据库中创建的del临时表中;若当前增量数据的数据类型为新增数据或修改数据,则进入新增类型或变更类型分支,在本地磁盘中创建inc本地数据文件作为临时文件,将当前增量数据存储至inc本地数据文件,将inc本地数据文件中所有的增量数据拷贝到待回放数据库中创建的inc临时表中;然后对待回放数据表分别与inc临时表和del临时表进行匹配,将待回放数据表中与至少一个数据表中的主键相匹配的数据进行删除,得到没有数据变更的删除后的待回放数据表,再将inc临时表中的数据全部插入到删除后的待回放数据表中,得到最新数据状态的目标表,作为目标回放数据表。
在本实施例中,将增量数据先存储至本地磁盘的临时文件中,再将临时文件中的增量数据拷贝至待回放数据库的临时数据表中,无需通过长时间连接数据库来进行数据回放,批量的数据拷贝方式能够使电力系统的数据回放速度更快、稳定性更好,此外,不仅实现了对数据变更的增量数据的数据回放,还实现了表结构变更的数据回放,从而进一步提高了电力系统的数据回放效率。
应该理解的是,虽然图1-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种数据回放装置500,包括:数据获取模块501、数据存储模块502和数据回放模块503,其中:
数据获取模块501,用于获取电力系统的中间件的增量数据;增量数据携带有对应的数据类型。
数据存储模块502,用于若增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将增量数据存储至数据类型对应的临时文件中,并将临时文件中的增量数据存储至待回放数据库中对应的临时数据表。
数据回放模块503,用于从待回放数据库中增量数据关联的待回放数据表中,对与临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
在一个实施例中,数据获取模块501,还用于当电力系统的中间件中存储有增量数据时,则按照第一预设格式,从中间件中读取出增量数据,得到第一预设格式的增量数据;第一预设格式的增量数据的数据结构为双层嵌套结构。
在一个实施例中,数据回放装置500还包括数据解析模块,用于从第一预设格式的增量数据中,解析出待回放数据;按照第二预设格式,将待回放数据进行格式转换处理,得到第二预设格式的待回放数据,作为目标增量数据;数据存储模块502,还用于若目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将目标增量数据存储至数据类型对应的临时文件中,并将临时文件中的目标增量数据存储至待回放数据库中对应的临时数据表。
在一个实施例中,数据回放装置500还包括数据变更模块,用于若所述目标增量数据的数据类型为删除数据,则将目标增量数据存储至第一临时文件,并将第一临时文件中的目标增量数据进行复制后存储至待回放数据库中的第一临时数据表;若目标增量数据的数据类型为新增数据或修改数据,则将目标增量数据存储至第二临时文件,并将第二临时文件中的目标增量数据进行复制后存储至待回放数据库中的第二临时数据表。
在一个实施例中,数据回放模块503,还用于若待回放数据库中增量数据关联的待回放数据表中,包括与第一临时数据表和所述第二临时数据表中的至少一个数据表中的数据相匹配的数据,则对待回放数据表中与至少一个数据表中的数据相匹配的数据进行删除处理,得到删除后的待回放数据表;将第二临时数据表中的数据添加到删除后的待回放数据表,得到目标回放数据表。
在一个实施例中,数据回放装置500还包括变更表结构模块,用于若增量数据的数据类型为变更表结构,则对待回放数据表进行相应的结构变更处理。
在一个实施例中,数据回放装置500还包括结构处理模块,用于若增量数据的数据类型为变更表结构,则对增量数据进行结构采集处理,得到增量数据的表结构;根据增量数据的表结构,对待回放数据表进行相应的结构变更处理。
关于数据回放装置的具体限定可以参见上文中对于数据回放方法的限定,在此不再赘述。上述数据回放装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储增量数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据回放方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据回放方法,其特征在于,所述方法包括:
获取电力系统的中间件的增量数据;所述增量数据携带有对应的数据类型;
若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表;
从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
2.根据权利要求1所述的方法,其特征在于,所述获取电力系统的中间件的增量数据,包括:
当所述电力系统的中间件中存储有增量数据时,则按照第一预设格式,从所述中间件中读取出所述增量数据,得到所述第一预设格式的增量数据;所述第一预设格式的增量数据的数据结构为双层嵌套结构。
3.根据权利要求2所述的方法,其特征在于,在获取电力系统的中间件的增量数据之后,还包括:
从所述第一预设格式的增量数据中,解析出待回放数据;
按照第二预设格式,将所述待回放数据进行格式转换处理,得到所述第二预设格式的待回放数据,作为目标增量数据;
所述若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表,包括:
若所述目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述目标增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的目标增量数据存储至待回放数据库中对应的临时数据表。
4.根据权利要求3所述的方法,其特征在于,所述若所述目标增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述目标增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的目标增量数据存储至待回放数据库中对应的临时数据表,包括:
若所述目标增量数据的数据类型为删除数据,则将所述目标增量数据存储至第一临时文件,并将所述第一临时文件中的目标增量数据进行复制后存储至所述待回放数据库中的第一临时数据表;
若所述目标增量数据的数据类型为新增数据或修改数据,则将所述目标增量数据存储至第二临时文件,并将所述第二临时文件中的目标增量数据进行复制后存储至所述待回放数据库中的第二临时数据表。
5.根据权利要求4所述的方法,其特征在于,所述从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表,包括:
若所述待回放数据库中所述增量数据关联的待回放数据表中,包括与所述第一临时数据表和所述第二临时数据表中的至少一个数据表中的数据相匹配的数据,则对所述待回放数据表中与所述至少一个数据表中的数据相匹配的数据进行删除处理,得到删除后的待回放数据表;
将所述第二临时数据表中的数据添加到所述删除后的待回放数据表,得到所述目标回放数据表。
6.根据权利要求1至5任一项所述的方法,其特征在于,在获取电力系统的中间件的增量数据之后,还包括:
若所述增量数据的数据类型为变更表结构,则对所述待回放数据表进行相应的结构变更处理。
7.根据权利要求6所述的方法,其特征在于,所述若所述增量数据的数据类型为变更表结构,则对所述待回放数据表进行相应的结构变更处理,包括:
若所述增量数据的数据类型为变更表结构,则对所述增量数据进行结构采集处理,得到所述增量数据的表结构;
根据所述增量数据的表结构,对所述待回放数据表进行相应的结构变更处理。
8.一种数据回放装置,其特征在于,所述装置包括:
数据获取模块,用于获取电力系统的中间件的增量数据;所述增量数据携带有对应的数据类型;
数据存储模块,用于若所述增量数据的数据类型为删除数据、新增数据、修改数据中的任意一种,则将所述增量数据存储至所述数据类型对应的临时文件中,并将所述临时文件中的增量数据存储至待回放数据库中对应的临时数据表;
数据回放模块,用于从所述待回放数据库中所述增量数据关联的待回放数据表中,对与所述临时数据表中的数据相匹配的数据进行处理,得到目标回放数据表。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111243590.7A CN113901057A (zh) | 2021-10-25 | 2021-10-25 | 数据回放方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111243590.7A CN113901057A (zh) | 2021-10-25 | 2021-10-25 | 数据回放方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113901057A true CN113901057A (zh) | 2022-01-07 |
Family
ID=79026284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111243590.7A Pending CN113901057A (zh) | 2021-10-25 | 2021-10-25 | 数据回放方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113901057A (zh) |
-
2021
- 2021-10-25 CN CN202111243590.7A patent/CN113901057A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200356624A1 (en) | Collaborative document editing system and method | |
CN111818175B (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
CN110727724B (zh) | 数据抽取方法、装置、计算机设备和存储介质 | |
CN111400246B (zh) | 异步导入文件方法、装置、计算机设备和存储介质 | |
CN106557307B (zh) | 业务数据的处理方法及处理系统 | |
CN110334086A (zh) | 数据去重方法、装置、计算机设备以及存储介质 | |
CN108446110B (zh) | Lua脚本生成方法、装置、终端及计算机可读介质 | |
CN111124872A (zh) | 基于差异代码分析的分支检测方法、装置及存储介质 | |
CN112860412B (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN105988995A (zh) | 一种基于HFile批量加载数据的方法 | |
CN111966531B (zh) | 数据快照方法、装置、计算机设备及存储介质 | |
CN111090701B (zh) | 业务请求处理方法、装置、可读存储介质和计算机设备 | |
CN113901057A (zh) | 数据回放方法、装置、计算机设备和存储介质 | |
CN110688400A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN116048609A (zh) | 配置文件更新方法、装置、计算机设备和存储介质 | |
CN111625500B (zh) | 文件快照方法及装置、电子设备和存储介质 | |
CN115481103A (zh) | 一种数据库扩缩容方法、装置及计算机可读存储介质 | |
CN115098503A (zh) | 空值数据处理方法、装置、计算机设备以及存储介质 | |
CN113886741A (zh) | 用于对公式进行排版的方法及其相关产品 | |
CN113961298A (zh) | 一种页面切换方法、装置、设备及介质 | |
CN110795389A (zh) | 基于存储快照的拷贝方法、用户设备、存储介质及装置 | |
CN117194350B (zh) | 一种数据中心工程建设阶段文档存储方法及系统 | |
JP6648567B2 (ja) | データ更新制御装置、データ更新制御方法、及び、データ更新制御プログラム | |
CN117278401A (zh) | 配置更新方法及装置 | |
CN115858496A (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 |