CN110245148B - 一种数据存储方法、装置、***及介质 - Google Patents
一种数据存储方法、装置、***及介质 Download PDFInfo
- Publication number
- CN110245148B CN110245148B CN201910554958.8A CN201910554958A CN110245148B CN 110245148 B CN110245148 B CN 110245148B CN 201910554958 A CN201910554958 A CN 201910554958A CN 110245148 B CN110245148 B CN 110245148B
- Authority
- CN
- China
- Prior art keywords
- data
- source system
- system database
- database
- synchronous
- 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.)
- Active
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/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/273—Asynchronous replication or reconciliation
-
- 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/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据存储方法、装置、***及介质。该方法应用于同步数据库,步骤包括:预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致;判断是否满足预设的存储触发条件;如果是,则停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储。由于当同步数据库满足预设的存储触发条件的时候,同步数据库即停止与源***数据库之间的数据同步操作,因此同步数据库中的数据内容将始终保持为源***数据库在某一时刻下对应的数据内容,进而数据仓库通过同步数据库获取源***数据库在某一时刻的数据内容,能够确保数据仓库中所存储的数据的准确性。此外,本发明还提供一种数据存储装置、***及介质。
Description
技术领域
本发明涉及数据存储领域,特别是涉及一种数据存储方法、装置、***及介质。
背景技术
一直以来,数据仓库一直是各个大型企业用于做决策分析的平台,传统的数据仓库多应用于如银行、保险公司、能源公司等传统企业中。随着大数据技术的火热,基于Hadoop的新型数据仓库逐渐成为当前的主流的数据仓库形式,Hadoop利用分布式管理的技术体系,将廉价的PC Server等机器和存储整合在一起构成一个具有强大计算能力和存储能力的平台,在该平台上,存储空间能够趋近于无限大,因此有越来越多的企业级数据仓库向着大数据基础的数据仓库转型或者融合传统数据仓库和新型大数据仓库的方向转变。
不论使用什么类型的数据仓库,其最重要的操作是需要对源***数据库内的数据进行汇总及存储。例如,在当前的应用场景中,各个企业的业务***,即源***数据库,往往需要按照一定的周期,如12小时或24小时,在周期结束的时刻将该时刻下的业务数据,即时点数据,以文件的形式提供并存储至数据仓库,此过程中数据的一致性由源***数据库保证,但是由于源***数据库中的业务数据是根据业务情况时刻变化的,而源***数据库中的时点数据完全存储至数据仓库需要一定的处理周期,因此如果在该处理周期内,源***数据库中尚未存储至数据仓库的业务数据发生了变化,则最终存储至数据仓库的时点数据将出现错误,把本不应该加载到数据仓库的数据加载到了数据仓库中,通常被称为“数据漂移”,而数据仓库作为源***数据库的一个下游***,无法保证该份数据的准确性,一旦源***数据库的数据文件发生变化则无法找回该周期结束时刻正确的时点数据,难以确保数据仓库中所存储的数据的准确性。
由此可见,提供一种数据存储方法,以确保数据仓库中所存储的数据的准确性,是本领域技术人员需要解决的技术问题。
发明内容
本发明的目的是提供一种数据存储方法、装置、***及介质,以确保数据仓库中所存储的数据的准确性。
为解决上述技术问题,本发明提供一种数据存储方法,应用于同步数据库,包括:
预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致;
判断是否满足预设的存储触发条件;
如果是,则停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储。
优选的,判断是否满足预设的存储触发条件包括:
判断当前时刻是否处于目标时刻点,或判断是否传入有触发指令。
优选的,在预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致之前,方法还包括:
判断是否同步数据库与源***数据库之间的SQL语法兼容且源***数据库中执行的SQL语句未包含有函数;
如果是,则预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致,包括:
预先通过获取并执行源***数据库中执行的SQL语句,保持与源***数据库中的数据一致;
否则,预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致,包括:
预先通过解析源***数据库的日志获取并执行相应的数据库操作逻辑,保持与源***数据库中的数据一致。
优选的,当同步数据库以及源***数据库均为Oracle类型的数据库时,预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致,包括:
预先基于OGG工具执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致。
优选的,在停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储之后,方法还包括:
当接收到由数据仓库传入的存储结束指令时,执行与源***数据库的数据同步操作,并保持与源***数据库中的数据一致。
此外,本发明还提供一种数据存储方法,应用于数据仓库,包括:
判断是否满足预设的存储触发条件;
如果是,则获取并存储同步数据库本地的当前数据;其中,同步数据库预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致。
优选的,在获取并存储同步数据库本地的当前数据之后,方法还包括:
当完成对同步数据库本地的当前数据的存储时,向同步数据库发送存储结束指令,以供同步数据库执行与源***数据库的数据同步操作,并保持与源***数据库中的数据一致。
此外,本发明还提供一种同步数据库装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的数据存储方法的步骤。
此外,本发明还提供一种数据存储***,包括:
源***数据库装置;
同步数据库装置,用于预先执行与源***数据库装置的数据同步操作,保持与源***数据库装置中的数据一致;判断是否满足预设的存储触发条件;如果是,则停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库装置获取并存储;
数据仓库装置,用于判断是否满足预设的存储触发条件;如果是,则获取并存储同步数据库装置本地的当前数据。
此外,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的应用于同步数据库的数据存储方法的步骤或实现如上述的应用于数据仓库的数据存储方法的步骤。
本发明所提供的数据存储方法,同步数据库通过预先执行源***数据库的数据同步操作,保持与源***数据库中的数据一致,进而当同步数据库满足预设的存储触发条件的时候,停止数据同步操作,并将本地的当前数据作为当前时间点对应的时点数据以供数据仓库获取并存储。由于当同步数据库满足预设的存储触发条件的时候,同步数据库即停止与源***数据库之间的数据同步操作,因此同步数据库中的数据内容将始终保持为源***数据库在某一时刻下对应的数据内容,进而数据仓库通过同步数据库获取源***数据库在某一时刻的数据内容,能够确保数据仓库中所存储的数据的准确性。此外,本发明还提供一种数据存储装置、***及介质。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种应用于同步数据库的数据存储方法的流程图;
图2为本发明实施例公开的一种具体的应用于同步数据库的数据存储方法的流程图;
图3为本发明实施例公开的一种应用于数据仓库的数据存储方法的流程图;
图4为本发明实施例公开的一种数据存储***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
不论使用什么类型的数据仓库,其最重要的操作是需要对源***数据库内的数据进行汇总及存储。例如,在当前的应用场景中,各个企业的业务***,即源***数据库,往往需要按照一定的周期,如12小时或24小时,在周期结束的时刻将该时刻下的业务数据,即时点数据,以文件的形式提供并存储至数据仓库,此过程中数据的一致性由源***数据库保证,但是由于源***数据库中的业务数据是根据业务情况时刻变化的,而源***数据库中的时点数据完全存储至数据仓库需要一定的处理周期,因此如果在该处理周期内,源***数据库中尚未存储至数据仓库的业务数据发生了变化,则最终存储至数据仓库的时点数据将出现错误,把本不应该加载到数据仓库的数据加载到了数据仓库中,通常被称为“数据漂移”,而数据仓库作为源***数据库的一个下游***,无法保证该份数据的准确性,一旦源***数据库的数据文件发生变化则无法找回该周期结束时刻正确的时点数据,难以确保数据仓库中所存储的数据的准确性。
为此,本发明的核心是提供一种数据存储方法,以确保数据仓库中所存储的数据的准确性。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
参见图1所示,本发明实施例公开了一种应用于同步数据库的数据存储方法,包括:
步骤S10:预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致。
需要说明的是,本步骤需要预先执行同步数据库与源***数据库之间的数据同步,目的是确保同步数据库与源***数据库中的数据内容相同,进而达到同步数据库能够代替源***数据库向数据仓库提供数据的目的。另外,本步骤中的源***数据库指的是业务平台在响应用户的业务操作后能够直接进行数据的增、删、改、查操作的数据库,因此源***数据库中的数据可能会随着用户在业务平台上的操作而随时发生变化。本步骤中同步数据库通过执行与源***数据库的数据同步操作,达到持续保持与源***数据库中的数据一致的效果,而且需要强调的是,同步数据库需要持续根据源***数据库的数据变化而进行数据内容的同步,进而持续确保与源***数据库中的数据一致。
步骤S11:判断是否满足预设的存储触发条件,如果是,则执行步骤S12。
步骤S12:停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储。
可以理解的是,在同步数据库与源***数据库的数据内容一致的基础上,同步数据库为了向数据仓库提供源***数据库在某一时刻下的数据内容,需要获悉保留源***数据库哪一时刻下的数据内容,因此同步数据库要判断当前是否满足预设的存储触发条件,也就是判断是否保留源***数据库当前时刻的数据内容。当满足预设的存储触发条件时,同步数据库则停止与源***数据库之间的数据同步操作,以此保留源***数据库当前时刻的数据内容,并将本地的当前数据作为时点数据以供数据仓库获取并存储,最终实现数据仓库对源***数据库中某一时刻下数据的准确存储。
本发明所提供的数据存储方法,同步数据库通过预先执行源***数据库的数据同步操作,保持与源***数据库中的数据一致,进而当同步数据库满足预设的存储触发条件的时候,停止数据同步操作,并将本地的当前数据作为当前时间点对应的时点数据以供数据仓库获取并存储。由于当同步数据库满足预设的存储触发条件的时候,同步数据库即停止与源***数据库之间的数据同步操作,因此同步数据库中的数据内容将始终保持为源***数据库在某一时刻下对应的数据内容,进而数据仓库通过同步数据库获取源***数据库在某一时刻的数据内容,能够确保数据仓库中所存储的数据的准确性。
在上述实施例的基础上,本发明还提供如下一些列优选实施方式。
作为一种优选的实施方式,判断是否满足预设的存储触发条件包括:
判断当前时刻是否处于目标时刻点,或判断是否传入有触发指令。
需要说明的是,本实施方式的重点在于存储触发条件具体包含两种类型的条件,即时刻条件以及指令条件,满足上述两种条件中的一种存储触发条件即停止同步数据库从源***数据库中进行的数据同步的操作。
目标时刻点可以是预设周期下的结束时刻,例如以60分钟为周期的结束时刻;目标时刻点也可以某一日期下或每一天的某一时间点,例如某一天或每天凌晨的0点时刻。在实际应用中,需要预先对目标时刻点进行规定,进而当处于目标时刻点时,同步数据库即刻保留源***数据库中的数据内容。基于时刻条件触发同步数据库停止从源***数据库中进行的数据同步的操作,适合于数据仓库对源***数据库中数据的进行存储的时刻相对规律的场景。
基于指令条件触发是指通过指令的方式告知同步数据库停止从源***数据库中进行的数据同步的操作,相比于基于时刻条件的触发而言,具有更高的灵活性,适合数据仓库对源***数据库中数据的存储相对灵活的场景。
本实施方式相对提高了存储触发条件的多样性,进而确保触发数据仓库对同步数据库中的数据进行存储的整体灵活性。
此外,作为一种优选的实施方式,当同步数据库以及源***数据库均为Oracle类型的数据库时,预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致,包括:
预先基于OGG工具执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致。
需要说明的是,OGG(Oracle GoldenGate)工具是Oracle类型的数据库的配套数据同步工具,能够实现Oracle类型的数据库之间的数据同步,与Oracle类型的数据库具有较高的兼容性,当同步数据库以及源***数据库均为Oracle类型的数据库时,通过OGG工具执行与源***数据库的数据同步操作,能够相对确保同步数据库与源***数据库保持数据一致过程中的整体可靠性以及效率。
参见图2所示,本发明实施例公开了一种应用于同步数据库的数据存储方法,包括:
步骤S20:判断是否同步数据库与源***数据库之间的SQL语法兼容且源***数据库中执行的SQL语句未包含有函数,如果是,则执行步骤S21,否则,执行步骤S22。
步骤S21:预先通过获取并执行源***数据库中执行的SQL语句,保持与源***数据库中的数据一致。
步骤S22:预先通过解析源***数据库的日志获取并执行相应的数据库操作逻辑,保持与源***数据库中的数据一致。
需要说明的是,当同步数据库与源***数据库之间的SQL语法兼容时,则说明同步数据库能够执行源***数据库所执行的SQL语句,并同样执行源***数据库中相应的数据操作,但是当SQL语句中包含有函数时,即使同步数据库能够执行源***数据库所执行的SQL语句,也可能会出现函数的值存在差异的情况,进而难以确保同步数据库与源***数据库之间的数据同步,因此需要同时确保同步数据库与源***数据库之间的SQL语法兼容且源***数据库中执行的SQL语句不包含有函数,才能够通过同步数据库执行源***数据库的SQL语句实现与源***数据库之间的同步,因此本实施例中,当判断同步数据库与源***数据库之间的SQL语法兼容且源***数据库中执行的SQL语句未包含有函数时,预先通过获取并执行源***数据库中执行的SQL语句,保持与源***数据库中的数据一致,也就是说同步数据库与源***数据库执行相同的SQL语句,以此确保同步数据库与源***数据库之间数据的一致。
当同步数据库与源***数据库之间的SQL语句不兼容时,或源***数据库执行的SQL语句中包含有函数时,则说明同步数据库通过执行源***数据库的SQL语句无法实现与源***数据库相同的数据操作,但是由于源***数据库在执行数据库操作时,会将操作的逻辑记录于日志中,通过源***数据库的日志内容即可解析得到源***数据库的数据操作内容,因此当同步数据库与源***数据库属于不同类型的数据库时,预先通过解析源***数据库的日志获取并执行相应的数据库操作逻辑,保持与源***数据库中的数据一致。
步骤S23:判断是否满足预设的存储触发条件,如果是,则执行步骤S24。
步骤S24:停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储。
本实施例针对于同步数据库与源***数据库为同类型的数据库的情况以及同步数据库与源***数据库为不同类型的数据库的情况均采取有相应的数据同步方式保持同步数据库与源***数据库中的数据一致,相对确保了不同场景下,同步数据库与源***数据库中的数据一致性。
在上述一系列实施方式的基础上,作为一种优选的实施方式,在停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储之后,方法还包括:
当接收到由数据仓库传入的存储结束指令时,执行与源***数据库的数据同步操作,并保持与源***数据库中的数据一致。
需要说明的是,由于同步数据库的目的是保留源***数据库某一时刻下的数据内容,而在该时刻之前需要持续与源***数据库的数据内容保持一致,因此在数据仓库完成对同步数据库中数据内容的获取及存储时,需要确保同步数据库能够再次向数据仓库提供源***数据库之后某一时刻的数据内容,因此需要在数据仓库完成对同步数据库中数据内容的获取及存储时向同步数据库传输存储结束指令,以此告知同步数据库继续与源***数据库保持数据内容一致,相对确保了同步数据库的高可用性。
参见图3所示,本发明实施例公开了一种应用于数据仓库的数据存储方法,包括:
步骤S30:判断是否满足预设的存储触发条件,如果是,则执行步骤S31。
步骤S31:获取并存储同步数据库本地的当前数据。
其中,同步数据库预先执行与源***数据库的数据同步操作,保持与源***数据库中的数据一致。
本发明所提供的数据存储方法,同步数据库通过预先执行源***数据库的数据同步操作,保持与源***数据库中的数据一致,进而当同步数据库满足预设的存储触发条件的时候,停止数据同步操作,并将本地的当前数据作为当前时间点对应的时点数据以供数据仓库获取并存储。由于当同步数据库满足预设的存储触发条件的时候,同步数据库即停止与源***数据库之间的数据同步操作,因此同步数据库中的数据内容将始终保持为源***数据库在某一时刻下对应的数据内容,进而数据仓库通过同步数据库获取源***数据库在某一时刻的数据内容,能够确保数据仓库中所存储的数据的准确性。
此外,作为一种优选的实施方式,在获取并存储同步数据库本地的当前数据之后,方法还包括:
当完成对同步数据库本地的当前数据的存储时,向同步数据库发送存储结束指令,以供同步数据库执行与源***数据库的数据同步操作,并保持与源***数据库中的数据一致。
此外,本发明还提供一种同步数据库装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的数据存储方法的步骤。
本发明所提供的同步数据库装置通过预先执行源***数据库的数据同步操作,保持与源***数据库中的数据一致,进而当同步数据库装置满足预设的存储触发条件的时候,停止数据同步操作,并将本地的当前数据作为当前时间点对应的时点数据以供数据仓库获取并存储。由于当同步数据库装置满足预设的存储触发条件的时候,同步数据库装置即停止与源***数据库之间的数据同步操作,因此同步数据库装置中的数据内容将始终保持为源***数据库在某一时刻下对应的数据内容,进而数据仓库通过同步数据库装置获取源***数据库在某一时刻的数据内容,能够确保数据仓库中所存储的数据的准确性。
参见图4所示,本发明实施例还公开了一种数据存储***,包括:
源***数据库装置10;
同步数据库装置11,用于预先执行与源***数据库装置10的数据同步操作,保持与源***数据库装置10中的数据一致;判断是否满足预设的存储触发条件;如果是,则停止数据同步操作,并将本地的当前数据作为时点数据以供数据仓库装置12获取并存储;
数据仓库装置12,用于判断是否满足预设的存储触发条件;如果是,则获取并存储同步数据库装置11本地的当前数据。
本发明所提供的数据存储***,同步数据库装置通过预先执行源***数据库装置的数据同步操作,保持与源***数据库装置中的数据一致,进而当同步数据库装置满足预设的存储触发条件的时候,停止数据同步操作,并将本地的当前数据作为当前时间点对应的时点数据以供数据仓库装置获取并存储。由于当同步数据库装置满足预设的存储触发条件的时候,同步数据库装置即停止与源***数据库装置之间的数据同步操作,因此同步数据库装置中的数据内容将始终保持为源***数据库装置在某一时刻下对应的数据内容,进而数据仓库装置通过同步数据库装置获取源***数据库装置在某一时刻的数据内容,能够确保数据仓库装置中所存储的数据的准确性。
进一步的,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的应用于同步数据库的数据存储方法的步骤或实现如上述的应用于数据仓库的数据存储方法的步骤。
本发明所提供的计算机可读存储介质,执行过程中实现了同步数据库通过预先执行源***数据库的数据同步操作,保持与源***数据库中的数据一致,进而当同步数据库满足预设的存储触发条件的时候,停止数据同步操作,并将本地的当前数据作为当前时间点对应的时点数据以供数据仓库获取并存储。由于当同步数据库满足预设的存储触发条件的时候,同步数据库即停止与源***数据库之间的数据同步操作,因此同步数据库中的数据内容将始终保持为源***数据库在某一时刻下对应的数据内容,进而数据仓库通过同步数据库获取源***数据库在某一时刻的数据内容,能够确保数据仓库中所存储的数据的准确性。
以上对本发明所提供的一种数据存储方法、装置、***及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (7)
1.一种数据存储方法,其特征在于,应用于同步数据库,包括:
预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致;
判断是否满足预设的存储触发条件;
如果是,则停止所述数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储;
其中,在所述预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致之前,所述方法还包括:
判断是否所述同步数据库与所述源***数据库之间的SQL语法兼容且所述源***数据库中执行的SQL语句未包含有函数;
如果是,则所述预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致,包括:
预先通过获取并执行所述源***数据库中执行的SQL语句,保持与所述源***数据库中的数据一致;
否则,所述预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致,包括:
预先通过解析所述源***数据库的日志获取并执行相应的数据库操作逻辑,保持与所述源***数据库中的数据一致。
2.根据权利要求1所述的数据存储方法,其特征在于,所述判断是否满足预设的存储触发条件包括:
判断当前时刻是否处于目标时刻点,或判断是否传入有触发指令。
3.根据权利要求1所述的数据存储方法,其特征在于,当所述同步数据库以及所述源***数据库均为Oracle类型的数据库时,所述预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致,包括:
预先基于OGG工具执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致。
4.根据权利要求1至3任意一项所述的数据存储方法,其特征在于,在所述停止所述数据同步操作,并将本地的当前数据作为时点数据以供数据仓库获取并存储之后,所述方法还包括:
当接收到由所述数据仓库传入的存储结束指令时,执行与所述源***数据库的所述数据同步操作,并保持与所述源***数据库中的数据一致。
5.一种同步数据库装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述的数据存储方法的步骤。
6.一种数据存储***,其特征在于,包括:
源***数据库装置;
同步数据库装置,用于预先执行与所述源***数据库装置的数据同步操作,保持与所述源***数据库装置中的数据一致;判断是否满足预设的存储触发条件;如果是,则停止所述数据同步操作,并将本地的当前数据作为时点数据以供数据仓库装置获取并存储;其中,在所述预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致之前,还包括:
判断是否所述同步数据库与所述源***数据库之间的SQL语法兼容且所述源***数据库中执行的SQL语句未包含有函数;
如果是,则所述预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致,包括:
预先通过获取并执行所述源***数据库中执行的SQL语句,保持与所述源***数据库中的数据一致;
否则,所述预先执行与源***数据库的数据同步操作,保持与所述源***数据库中的数据一致,包括:
预先通过解析所述源***数据库的日志获取并执行相应的数据库操作逻辑,保持与所述源***数据库中的数据一致;
所述数据仓库装置,用于判断是否满足预设的所述存储触发条件;如果是,则获取并存储所述同步数据库装置本地的当前数据。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的应用于同步数据库的数据存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554958.8A CN110245148B (zh) | 2019-06-25 | 2019-06-25 | 一种数据存储方法、装置、***及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554958.8A CN110245148B (zh) | 2019-06-25 | 2019-06-25 | 一种数据存储方法、装置、***及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110245148A CN110245148A (zh) | 2019-09-17 |
CN110245148B true CN110245148B (zh) | 2021-03-23 |
Family
ID=67889447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910554958.8A Active CN110245148B (zh) | 2019-06-25 | 2019-06-25 | 一种数据存储方法、装置、***及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110245148B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506653B (zh) * | 2020-04-17 | 2024-03-26 | 中国人民银行清算总中心 | 一种数据异地同步计划性数据恢复***及方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106339384A (zh) * | 2015-07-07 | 2017-01-18 | 小米科技有限责任公司 | 存储过程的转换方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7606838B2 (en) * | 2006-02-22 | 2009-10-20 | Microsoft Corporation | Distributed conflict resolution for replicated databases |
CN103631907B (zh) * | 2013-11-26 | 2016-09-07 | 中国科学院信息工程研究所 | 一种将关系型数据迁移至HBase的方法及*** |
CN106610875A (zh) * | 2015-10-23 | 2017-05-03 | 先智云端数据股份有限公司 | 混合备份还原管理***及其备份方法、还原方法 |
CN106557592A (zh) * | 2016-12-02 | 2017-04-05 | 中铁程科技有限责任公司 | 数据同步方法、装置及服务器集群 |
US10496673B2 (en) * | 2016-12-27 | 2019-12-03 | Salesforce.Com, Inc. | Org sync async subscribe emails |
CN109582695A (zh) * | 2018-12-04 | 2019-04-05 | 用友网络科技股份有限公司 | 一种微服务架构下数据通用查询方法及查询*** |
CN109819048B (zh) * | 2019-02-27 | 2022-03-15 | 北京字节跳动网络技术有限公司 | 数据同步方法、装置、终端及存储介质 |
-
2019
- 2019-06-25 CN CN201910554958.8A patent/CN110245148B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106339384A (zh) * | 2015-07-07 | 2017-01-18 | 小米科技有限责任公司 | 存储过程的转换方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110245148A (zh) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107220142B (zh) | 执行数据恢复操作的方法及装置 | |
EP3120261B1 (en) | Dependency-aware transaction batching for data replication | |
US8239389B2 (en) | Persisting external index data in a database | |
EP2891994A1 (en) | Method for achieving automatic synchronization of multisource heterogeneous data resources | |
US20180081956A1 (en) | Method for automatically synchronizing multi-source heterogeneous data resources | |
US8010578B2 (en) | Method of refactoring a running database system | |
KR102311032B1 (ko) | 데이터베이스 동기화 | |
WO2017063520A1 (zh) | 数据库的操作方法及装置 | |
US20110276603A1 (en) | Dependency graphs for multiple domains | |
CN109144785B (zh) | 用于备份数据的方法和装置 | |
JPWO2016016975A1 (ja) | 開発支援システム | |
CN103514223A (zh) | 一种数据仓库数据同步方法和*** | |
US20210286799A1 (en) | Automated transaction engine | |
AU2021244852B2 (en) | Offloading statistics collection | |
US20120330964A1 (en) | Smart index creation and reconciliation in an interconnected network of systems | |
US10855750B2 (en) | Centralized management of webservice resources in an enterprise | |
US20200364241A1 (en) | Method for data synchronization between a source database system and target database system | |
CN110245148B (zh) | 一种数据存储方法、装置、***及介质 | |
CN115237924A (zh) | 数据处理方法、***、设备、介质和程序产品 | |
WO2016007191A1 (en) | Service discovery and/or effort estimation in networked computing environments | |
CN112699129A (zh) | 一种数据处理***、方法及装置 | |
CN111125149B (zh) | 基于Hive的数据获取方法、装置及存储介质 | |
CN112181937B (zh) | 一种结转数据的方法和装置 | |
CN116955414A (zh) | 低代码平台的数据查询方法及相关*** | |
CN113641750A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |