CN115203329A - 数据同步方法、数据同步装置、计算机可读存储介质 - Google Patents
数据同步方法、数据同步装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN115203329A CN115203329A CN202210860264.9A CN202210860264A CN115203329A CN 115203329 A CN115203329 A CN 115203329A CN 202210860264 A CN202210860264 A CN 202210860264A CN 115203329 A CN115203329 A CN 115203329A
- Authority
- CN
- China
- Prior art keywords
- time point
- version
- task
- effective
- data
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2322—Optimistic concurrency control using timestamps
-
- 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/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2329—Optimistic concurrency control using versioning
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)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据同步方法、数据同步装置、计算机可读存储介质,数据同步方法包括获取输入的版本时点;根据版本时点生成同步任务;轮询同步任务以将生产数据库中的数据同步至测试数据库。根据本申请的技术方案,根据同步任务可以根据非周期性的版本时点或者周期性的版本时点,将生产数据库中的数据同步至测试数据库,能够提高数据同步的便捷性,从而能够达到提高数据同步的效率的目的。
Description
技术领域
本申请涉及数据同步技术领域,尤其涉及一种数据同步方法、数据同步装置、计算机可读存储介质。
背景技术
目前,大数据测试中,一般需要最新的生产数据支持,所以在每个版本结束后就都需要从生产数据库中同步数据至测试数据库。当前导数平台的数据同步仅支持单次执行或者固定时点重复执行,然而,每个月的版本日是无规律的,比如分别在1月8号、1月22号和2月19号进行版本更新并将数据同步至测试数据库,如何根据非周期性的版本时点,将数据从生产数据库同步至测试数据库是亟待解决的技术问题。
发明内容
本申请的目的在于至少解决现有技术中存在的技术问题之一,提供一种数据同步方法、数据同步装置、计算机可读存储介质,能够通过轮询同步任务在版本时点将生产数据库中的数据同步至测试数据库,提高了数据同步的效率。
第一方面,本申请实施例提供一种数据同步方法,应用于导数平台,所述导数平台用于将生产数据库中的数据导入测试数据库,包括:
获取输入的版本时点;
根据所述版本时点生成同步任务;
轮询所述同步任务将所述生产数据库中的数据同步至所述测试数据库。
根据本申请实施例的数据同步方法,至少具有以下有益效果:获取输入的版本时点;根据版本时点生成同步任务;轮询同步任务以将生产数据库中的数据同步至测试数据库。根据本申请的技术方案,根据同步任务可以在版本时点,将生产数据库中的数据同步至测试数据库,适用于非周期性的版本时点以及周期性的版本时点,能够提高数据同步的便捷性,从而能够达到提高数据同步的效率的目的。
第二方面,本申请实施例提供一种数据同步装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的数据同步方法。
第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的数据同步方法。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
下面结合附图和实施例对本申请进一步地说明;
图1是本申请实施例提供的数据同步方法的步骤流程图;
图2是图1中步骤S130的具体方法的流程图;
图3是图1中步骤S230的具体方法的流程图;
图4是图1中步骤S230的另一具体方法的流程图;
图5是本申请另一个实施例提供的数据同步方法的步骤流程图;
图6是本申请又一个实施例提供的数据同步方法的步骤流程图;
图7是本申请再一个实施例提供的数据同步方法的步骤流程图;
图8是图1中步骤S120的具体方法的流程图;
图9是本申请实施例提供的数据同步装置的结构示意图;
图10是本申请实施例提供的数据同步方法的同步任务的状态转换示意图。
具体实施方式
本部分将详细描述本申请的具体实施例,本申请之较佳实施例在附图中示出,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本申请的每个技术特征和整体技术方案,但其不能理解为对本申请保护范围的限制。
在本申请的描述中,如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本申请的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本申请中的具体含义。
大数据测试中,一般需要最新的生产数据支持,所以在每个版本结束后就都需要从生产数据库中同步数据至测试数据库。导数平台是用于控制数据同步的平台,导数平台分别连接生产数据库以及测试数据库,相关技术中的导数平台对数据同步操作仅支持单次执行或者固定时点重复执行,而在实际情况下,版本日受到测试端的测试进度的影响,每个月的版本日是无规律的,比如1月可以是8号和22号,2月可以是19号。如果固定每周或者每月时间同步数据,那可能导致数据同步不及时,或者,同步后的数据影响测试数据库中的数据,从而影响测试数据的准确性的情况。所以,如果想要每个版本开始前从生产数据库中同步最新的数据至测试数据库,每次的数据同步都重新提单,N指的是任意数量值,一年有N个版本就需要提N次,从而导致涉及的申请单较多,提单时间成本以及审批流程的时间成本都很大。
本申请实施例提供一种数据同步方法及其装置、计算机可读存储介质,包括获取输入的版本时点;根据版本时点生成同步任务;轮询同步任务以将生产数据库中的数据同步至测试数据库。根据本申请的技术方案,根据同步任务可以在非周期性的版本时点,将生产数据库中的数据同步至测试数据库,能够提高数据同步的便捷性,从而能够达到提高数据同步的效率的目的。
下面结合附图,对本申请实施例作进一步阐述。
参照图1,本申请的第一方面实施例提供一种数据同步方法,应用于导数平台,导数平台用于将生产数据库中的数据导入测试数据库,该方法可以包括但不限于有步骤S110、步骤S120、步骤S130。
步骤S110:获取输入的版本时点。
本步骤中,导数平台用于将生产数据库中的数据导入测试数据库,版本时点指的是导数平台将生产数据库中的数据导入测试数据库的时点,版本时点是一个具体的时间点的数值,例如2021年7月3日13点45分。版本时点可以是周期性的,由于版本时点指的是导数平台导数的时点,版本时点可以是与开发进度有关,版本时点也可以是非周期性的,获取输入的版本时点是为了便于后续步骤中生成同步任务。
本申请另一个实施例中,导数平台可以设置有输入端用于输入版本时点,输入端可以是设置有用于输入字符串的输入框,导数平台可以从输入端获取输入的非周期性版本时点。
本申请另一个实施例中,输入的版本时点可以是任意数量的版本时点,在此不作具体限定。
步骤S120:根据版本时点生成同步任务。
本步骤中,版本时点指的是非周期性的版本时点,也可以是周期性的版本时点,同步任务指的是系统上的任意任务,例如在导数平台上定时执行的任务。根据版本时点生成同步任务,同步任务将版本时点聚合起来,能够提高同步数据的效率。根据版本时点生成同步任务是为了便于后续步骤中将生产数据库中的数据同步至测试数据库。
本申请另一个实施例中,同步任务可以是存储在数据库中的同步任务,导数平台可以是设置有对应的同步规则以便于同步任务根据版本时点同步数据,例如:对于同步任务中的每一个版本时点,将版本时点与当前时点进行比较,版本时点与当前时点相同则同步数据。
步骤S130:轮询同步任务以将生产数据库中的数据同步至测试数据库。
本步骤中,由于同步任务是根据版本时点生成,轮询同步任务以将生产数据库中的数据同步至测试数据库,可以是导数平台中根据同步任务监听当天时点,从而能够在版本时点到来时将生产数据库中的数据同步至测试数据库,从而能够达到根据版本时点自动更新数据的目的,从而能够减少人工成本,避免人工遗忘的风险,效率也得到很大的提高。
可以理解的是,由于需要轮询的是由版本时点生成同步任务,对于同步任务中的版本时点不做限制,本数据同步方法能够应用于周期性的版本时点以及非周期性的版本时点,适用性较强,从而能够达到提高数据同步的效率的目的。
本实施例中,通过步骤S110至步骤S130,获取输入的版本时点;根据版本时点生成同步任务;轮询同步任务以将生产数据库中的数据同步至测试数据库,根据本申请实施例的方案,根据同步任务可以在同步任务对应的版本时点,将生产数据库中的数据同步至测试数据库,能够提高数据同步的便捷性,从而能够达到提高数据同步的效率的目的。
值得注意的是,生产数据库指的是生产端的数据库,测试数据库指的是在测试端的数据库,在一个可选的实施方式中,测试数据库中目标表格的数据数据不完整且只有100条,生产数据库中目标表格有完整的数据120条。为了验证完整的业务场景,那我们就需要通过导数平台从生产数据库把在目标表格中完整的数据导入到测试数据库。
在一实施例中,如图2所示,同步任务包括版本时点,同步任务具有任务状态,任务状态包括有效状态和无效状态,对步骤S130进行进一步说明,该步骤包括但不限于有步骤S210、步骤S220和步骤S230。
步骤S210:获取有效同步任务,有效同步任务为具有有效状态的同步任务。
本步骤中,同步任务由版本时点生成,同步任务可以是由多个版本时点聚合而成,同步任务具有任务状态,指的是对于每一个同步任务均设置有对应的任务状态,任务状态包括有效状态和无效状态,有效同步任务指的是具有有效状态的同步任务。获取有效同步任务是为了便于后续步骤中将生产数据库中的数据同步至测试数据库。
本申请另一个实施例中,任务状态可以是设置一个固定值作为对应的任务状态值,例如,任务状态为1表示有效状态,任务状态为0表示无效状态,在此不作具体限定。任务状态为有效状态指的是同步任务中存在当前时点还没到达的版本时点,即是说,同步任务还需要继续监听当前时点,以根据同步任务中的版本时点对数据进行同步;任务状态为无效状态指的是同步任务中的版本时点均被执行以同步数据。
步骤S220:每间隔第一时间,轮询有效同步任务。
本步骤中,第一时间指的是任意时间值,例如一天、一个月。每间隔第一时间轮询有效同步任务,即是说,在第一时间的时间周期中,对所有的有效同步任务进行轮询,从而能够判断有效同步任务中的版本时点是否与当前时点与当前时点加上第一时间之间的时点匹配,达到对数据进行同步的目的。
本申请另一个实施例中,第一时间为一天,当前时点为2022年3月1日八点整,轮询有效同步任务,判断有效同步任务中的版本时点是否包括从2022年3月1日八点整到2022年3月2日八点整的版本时点,从而确定将生产数据库中的数据同步至测试数据库。
本申请又一个实施例中,轮询指的是相关技术中的任意形式的轮询,即能够达到遍历有效同步任务中的所有版本时点的作用即可,在此不作具体限定,每间隔第一时间轮询有效同步任务,可以是在每天的开始时点,即零点整对有效同步任务进行轮询。
步骤S230:根据有效同步任务以及有效版本时点,将生产数据库中的数据同步至测试数据库,其中,有效版本时点为有效同步任务所包括的版本时点。
本步骤中,有效版本时点指的是有效同步任务所包括的版本时点,根据有效同步任务以及有效版本时点,将生产数据库中的数据同步至测试数据库,指的是当轮询有效同步任务后发现可以存在版本时点在当前时点至当前时点加上第一时间的时点的范围之间,可以采用设置定时器或者其他任意的方式,在当前时点与版本时点匹配的时点将生产数据库中的数据同步至测试数据库,从而能够实现根据同步任务自动同步数据,达到提高数据同步的效率的目的。
本申请另一个实施例中,有效同步任务中的有效版本时点只是对数据同步的时间作出限制,不影响数据的内容,当存在多个有效版本时点落在当前时点至当前时点加上第一时间后的时点的范围内,例如当前时点是2022年3月1日零点整,第一时间是一天,有效同步任务中存在2022年3月1日零点整至2022年3月2日零点整之间的有效版本时点,可以是再次轮询或者设置定时器或者其他任意的提醒方式,当当前时点等于有效版本时点,将生产数据库中的数据同步至测试数据库。
本实施例中,通过步骤S210至步骤S230,获取有效同步任务,有效同步任务为具有有效状态的同步任务;每间隔第一时间,轮询有效同步任务;根据有效同步任务以及有效版本时点,将生产数据库中的数据同步至测试数据库,其中,有效版本时点为有效同步任务所包括的版本时点,根据本申请实施例的方案,能够实现根据同步任务自动同步数据,达到提高数据同步的效率的目的。
值得注意的是,当前时点指的是对于导数平台而言,导数平台在执行轮询程序或者其他任务时的当前时刻对应的时点。
在一实施例中,如图3所示,对步骤S230进行进一步说明,该步骤包括但不限于有步骤S310、步骤S320、步骤S330和步骤S340。
步骤S310:每间隔第一时间获取轮询有效同步任务的第一轮询时点以及有效版本时点。
本步骤中,第一轮询时点指的是导数平台在轮询有效同步任务时对应的系统时点,有效版本时点指的是有效同步任务中的版本时点,获取有效版本时点可以是导数平台在轮询有效同步任务时进行获取。获取第一轮询时点以及有效版本时点是为了便于后续步骤中判断有效版本时点与第一轮询时点之间的时间差值是否小于第一时间。
本申请另一个实施例中,由于每间隔第一时间轮询有效同步任务,每间隔第一时间获取轮询有效同步任务的第一轮询时点,指的是每间隔第一时间,当导数平台需要执行轮询操作,将对应的系统时点作为第一轮询时点。能够理解的是,每次重新开始轮询操作,均会更新该第一轮询时点。
步骤S320:当有效版本时点与第一轮询时点之间的时间差值小于第一时间,每间隔第二时间轮询有效同步任务,其中,第二时间小于第一时间。
本步骤中,第二时间可以是小于第一时间的任意时间,例如第一时间是一天,第二时间可以是一个小时。当有效版本时点与执行时点的时间差值小于第一时间,即是说,导数平台在轮询有效同步任务过程中,有效同步任务中的有效版本时点存在位于第一轮询时点至第一轮询时点加上第一时间对应的时点之间的版本时点,从而每间隔第二时间轮询有效同步任务,能够得到更接近有效版本时点的执行时点,从而能够提高监听时间更新的效率,达到提高数据同步的效率的目的。
本申请另一个实施例中,有效同步任务中的有效版本时点存在位于第一轮询时点至第一轮询时点加上第一时间对应的时点之间的版本时点,指的是当第一轮询时点是2022年3月1日零点整,第一时间是一天,存在有效版本时点位于2022年3月1日零点整至2022年3月2日零点整之间的情况。
步骤S330:每间隔第二时间获取轮询有效同步任务的第二轮询时点;
本步骤中,由于每间隔第二时间轮询有效同步任务,当导数平台轮询有效同步任务,第二轮询时点为当前的系统时点,从而能够得到第二轮询时点。每间隔第二时间获取轮询有效同步任务的第二轮询时点是为了便于后续步骤中将生产数据库中的数据同步至测试数据库。
步骤S340:当第二轮询时点匹配上有效版本时点,将生产数据库中的数据同步至测试数据库。
本步骤中,当第二轮询时点匹配上有效版本时点,即是说,第二轮询时点与有效版本时点相同,例如第二时间是一小时,每间隔一个小时轮询有效同步任务,当第二轮询时点与有效版本时点匹配,则第二轮询时点与有效版本时点位于同一日期的同一小时,从而可以将生产数据库中的数据同步至测试数据库,轮询均由导数平台进行操作,能够达到提高数据同步的效率的目的。
本实施例中,通过步骤S310至步骤S340,每间隔第一时间获取轮询有效同步任务的第一轮询时点以及有效版本时点;当有效版本时点与第一轮询时点之间的时间差值小于第一时间,每间隔第二时间轮询有效同步任务,其中,第二时间小于第一时间;每间隔第二时间获取轮询有效同步任务的第二轮询时点;当第二轮询时点匹配上有效版本时点,将生产数据库中的数据同步至测试数据库,根据本申请实施例的方案,轮询均由导数平台进行操作,能够达到提高数据同步的效率的目的。
在一实施例中,如图4所示,对步骤S230进行进一步说明,该步骤包括但不限于有步骤S410、步骤S420、步骤S430。
步骤S410:每间隔第一时间获取轮询有效同步任务的第三执行时点以及有效版本时点。
本步骤中,第三轮询时点指的是导数平台在轮询有效同步任务时对应的系统时点,有效版本时点指的是有效同步任务中的版本时点,获取有效版本时点可以是导数平台在轮询有效同步任务时进行获取。获取第三轮询时点以及有效版本时点是为了便于后续步骤中判断有效版本时点与第三轮询时点之间的时间差值是否小于第一时间。
本申请另一个实施例中,由于每间隔第一时间轮询有效同步任务,每间隔第一时间获取轮询有效同步任务的第三轮询时点,指的是每间隔第一时间,当导数平台需要执行轮询操作,将对应的系统时点作为第三轮询时点。能够理解的是,每次重新开始轮询操作,可以更新该第三轮询时点。
步骤S420:当有效版本时点与第三执行时点的时间差值小于第一时间,根据有效版本时点设置准点执行触发器。
本步骤中,准点执行触发器指的是相关技术中的任意形式的准点执行触发器,当有效版本时点与第三执行时点的时间差值小于第一时间,即是说,在下次轮询开始之前,需要根据有效版本时点将生产数据库中的数据同步至测试数据库,因此,根据有效版本设置准点执行触发器,触发器可以是监听系统时点的触发器,当该有效版本时点等于系统时点,执行数据同步任务,将生产数据库中的数据同步至测试数据库。
本申请另一个实施例中,同步任务可以包括多个非周期性的版本时点,从而使导数平台根据周期性的轮询,得到与版本时点相近的系统时点,从而设置准点执行触发器来触发数据同步操作,能够实现在对应的版本时点对数据进行同步的目的,并且,导数平台可以是自动执行轮询操作,不需要耗费人力资源去处理,适用性强,能够达到提高数据同步的效率的目的。
步骤S430:根据准点执行触发器,在有效版本时点将生产数据库中的数据同步至测试数据库。
本步骤中,根据准点执行触发器,在有效版本时点将生产数据库中的数据同步至测试数据库,即是说,准点执行触发器监听系统时点,当系统时点等于有效版本时点,将生产数据库中的数据同步至测试数据库,能够限定每间隔第一时间轮询有效同步任务,减少触发器的监听时长,从而能够达到提高数据同步的效率的目的。
本实施例中,通过步骤S410至步骤S430,每间隔第一时间获取轮询有效同步任务的第三执行时点以及有效版本时点;当有效版本时点与第三执行时点的时间差值小于第一时间,根据有效版本时点设置准点执行触发器;根据准点执行触发器,在有效版本时点将生产数据库中的数据同步至测试数据库,根据本申请实施例的方案,能够限定每间隔第一时间轮询有效同步任务,减少触发器的监听时长,从而能够达到提高数据同步的效率的目的。
在一实施例中,如图5所示,任务状态还包括执行状态,该数据同步方法还包括但不限于有步骤S510。
步骤S510:当同步任务正在执行,将同步任务的任务状态设置为执行状态,当同步任务执行完毕,若同步任务中的版本时点均已执行,将同步任务的任务状态设置为无效状态,若同步任务中存在未执行的版本时点,将同步任务的任务状态设置为有效状态。
本步骤中,任务状态包括有效状态以及无效状态,还包括执行状态。参照图10,当同步任务正在执行,即是说,同步任务被导数平台执行,可以是导数平台轮询、验证或者读取同步任务,从而使得同步任务被执行,并且,该同步任务进入执行状态,当同步任务处于执行状态,可以理解的是,导数平台可以根据同步任务的状态确定该任务是否是存在不合理的版本时点的,当导数平台正在对同步任务进行验证,可以暂时先不轮询该同步任务,从而能够避免线程冲突,达到提高数据同步方法的可用性的目的。
可以理解的是,参照图10,若同步任务中的版本时点均已执行,即是说,同步任务中的版本时点均已经小于系统时点,不需要再对同步任务进行轮询,例如同步任务中最大的版本时点是2021年3月1日零点整,当前系统时点已经到达2021年3月9日零点整,导数平台已经根据该版本时点进行数据同步操作,或者该版本时点无效,则将同步任务的任务状态废弃,同步任务的任务状态变成无效状态。
还可以理解的是,若同步任务中存在未执行的版本时点,还需要根据该同步任务中的版本时点将生产数据库中的数据同步至测试数据库,因此,将同步任务的任务状态设置为有效状态。
本申请另一个实施例中,根据版本时点生成同步任务,由于生成的同步任务中的版本时点还没有到达系统时点,因此,可以初始化同步任务的任务状态为有效状态,从而便于后续轮询同步任务。
本实施例中,通过步骤S510,当同步任务正在执行,将同步任务的任务状态设置为执行状态,当同步任务执行完毕,若同步任务中的版本时点均已执行,将同步任务的任务状态设置为无效状态,若同步任务中存在未执行的版本时点,将同步任务的任务状态设置为有效状态,根据本申请实施例的方案,根据同步任务的执行状态以及同步任务中的版本时点是否已执行,从而确定同步任务的任务状态,能够达到提高同步任务的可靠性的目的。
在一实施例中,如图6所示,该数据同步方法还包括但不限于有步骤S610和步骤S620。
步骤S610:获取有效同步任务,有效同步任务包括待修正的第一版本时点。
本步骤中,有效同步任务指的是需要每间隔第一时间进行轮询的同步任务,有效同步任务包括待修正的第一版本时点,即是说,该有效同步任务中的第一版本时点是存在错误或者需要修改的版本时点,因此,当导数平台在对有效同步任务进行轮询,或者在对有效同步任务进行验证,可以对有效同步任务中的版本时点进行验证,从而能够得到包括待修正的第一版本时点的有效同步任务。获取包括待修正的第一版本时点的有效同步任务是为了便于后续步骤中在该有效同步任务中添加正确的版本时点。
步骤S620:获取第二版本时点,根据第二版本时点对第一版本时点进行修改或者在有效同步任务中新增第二版本时点。
本步骤中,第二版本时点可以是用于代替第一版本时点的版本时点,根据第二版本时点对第一版本时点进行修改,可以是将第二版本时点代替第一版本时点,例如版本时点有变,不需要再在第一版本时点同步数据,则可以将第二把呢不能时点代替第一版本时点。在一个可选的实施方式中,当测试端遇到突发更新情况,需要在第二版本时点从生产数据库同步最新的数据至测试数据库,则可以将第二版本时点新增至有效同步任务中。
本申请另一个实施例中,可以理解的是,第一版本时点是同步任务中的版本时点,可以在第一版本时点将生产数据库中的数据同步至测试数据库。当第二版本时点是用于替换第一版本时点的版本时点,也可以是采用在有效同步任务中新增第二版本时点的方式用于在第二版本时点将生产数据库中的数据同步至测试数据库,从而能够达到提高新增或者修改版本时点的效率,达到提高数据同步的效率的目的。
本实施例中,通过步骤S610至步骤S620,获取有效同步任务,有效同步任务包括待修正的第一版本时点;获取第二版本时点,根据第二版本时点对第一版本时点进行修改或者在有效同步任务中新增第二版本时点,根据本申请实施例的方案,当存在新增的版本时点或者需要修改版本时点,可以采用修改或者直接新增版本时点的方式对同步任务进行修改,从而能够达到提高新增或者修改版本时点的效率,达到提高数据同步的效率的目的。
在一实施例中,如图7所示,在步骤S110之后,该数据同步方法还包括但不限于有步骤S710和步骤S720。
步骤S710:根据版本时点生成审批表单。
本步骤中,根据版本时点生成审批表单,可以是对版本时点进行列举,从而得到审批表单。生成审批表单是为了便于后续步骤中验证版本时点。
本申请另一个实施例中,审批表单中包括版本时点,审批表单还可以包括其他与数据同步相关的信息,例如包括在对应的版本时点下的测试数据库的状态,即是说,测试数据库中是否会存在手工制作的数据从而影响数据同步;另外,审批表单是在导数平台生成,可以是分别经过具有生产数据库的生产端以及具有测试数据库的测试端进行验证。
步骤S720:对审批表单进行验证,更新版本时点为验证后的版本时点。
本步骤中,对审批表单进行验证,指的是对审批表单中的版本时点进行验证,或者,也可以是当需要导数平台将生产数据库中的数据导入测试数据库,确定是否可以根据版本时点同步数据,这是因为生产数据库涉及安全问题是不可以随意取用的,取用生产数据库中的数据都需要生产数据库管理方审批同意。另外,测试数据库也是不可以随意更新的,因为测试数据库中里可能存在手工制造的数据,更新了会影响测试环境的使用。更新版本时点为验证后的版本时点,指的是在验证过程中可以对版本时点进行修改和调整,减少在版本时点同步数据导致测试环境出错的情况,以达到提高版本时点的可靠性的目的。
本申请另一个实施例中,参照图10,可以是先根据版本时点生成同步任务,将同步任务的任务状态初始化为无效状态,根据同步任务中的版本时点生成审批表格并审核,审核通过后将同步任务的任务状态设置为有效状态,若审核不通过,保持同步任务的任务状态为无效状态,从而能够便于根据同步任务的维度对版本时点进行处理,能够达到提高审核的效率的目的。
本实施例中,通过步骤S710至步骤S720,根据版本时点生成审批表单;对审批表单进行验证,更新版本时点为验证后的版本时点,根据本申请实施例的方案,对版本时点进行审核,减少在版本时点同步数据导致测试环境出错的情况,以达到提高版本时点的可靠性的目的。
在一实施例中,如图8所示,对步骤S120进行进一步说明,该步骤包括但不限于有步骤S810和步骤S820。
步骤S810:按照时间正序将版本时点进行排序。
本步骤中,由于输入的版本时点没有顺序要求,可以按照时间正序将版本时点进行排序,从而能够达到将版本时点进行排序的目的,根据排序后的版本时点可以能够便于后续步骤中生成同步任务。
本申请另一个实施例中,还可以是按照时间逆序将版本时点进行排序,以得到有顺序的版本时点,从而使得生成同步任务更加便于读取。
步骤S820:根据排序后的版本时点,生成任务状态为有效状态的同步任务。
本步骤中,版本时点经过排序之后,根据排序后的版本时点,生成任务状态为有效状态的同步任务,同步任务中的版本时点是经过排序的,能够便于对同步任务中的版本时点进行读取,从而能够达到提高数据同步的效率的目的。
本实施例中,通过步骤S810至步骤S820,按照时间正序将版本时点进行排序;根据排序后的版本时点,生成任务状态为有效状态的同步任务,根据本申请实施例的方案,同步任务中的版本时点是经过排序的,能够便于对同步任务中的版本时点进行读取,从而能够达到提高数据同步的效率的目的。
另外,参照图9,本申请的一个实施例还提供了一种数据同步装置,该数据同步装置包括:存储器1002、处理器1001及存储在存储器1002上并可在处理器1001上运行的计算机程序。
处理器1001和存储器1002可以通过总线或者其他方式连接。
存储器1002作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器1002可以包括高速随机存取存储器1002,还可以包括非暂态存储器1002,例如至少一个磁盘存储器1002件、闪存器件、或其他非暂态固态存储器1002件。在一些实施方式中,存储器1002可选包括相对于处理器1001远程设置的存储器1002,这些远程存储器1002可以通过网络连接至该处理器1001。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述实施例的数据同步方法所需的非暂态软件程序以及指令存储在存储器1002中,当被处理器1001执行时,执行上述实施例中的数据同步方法,例如,执行以上描述的图1中的方法步骤S110至S130、图2中的方法步骤S210至S230、图3中的方法步骤S310至S340、图4中的方法步骤S410至S1430、图5中的方法步骤S510、图6中的方法步骤S610至S620、图7中的方法步骤S710至S720、图8中的方法步骤S810至S820。
此外,本申请的一个实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个处理器或控制器执行,例如,被上述装置实施例中的一个处理器1001执行,可使得上述处理器1001执行上述实施例中的数据同步方法,例如,执行以上描述的图1中的方法步骤S110至S130、图2中的方法步骤S210至S230、图3中的方法步骤S310至S340、图4中的方法步骤S410至S1430、图5中的方法步骤S510、图6中的方法步骤S610至S620、图7中的方法步骤S710至S720、图8中的方法步骤S810至S820。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
上面结合附图对本申请实施例作了详细说明,但是本申请不限于上述实施例,在所述技术领域普通技术人员所具备的知识范围内,还可以在不脱离本申请宗旨的前提下作出各种变化。
Claims (10)
1.一种数据同步方法,应用于导数平台,所述导数平台用于将生产数据库中的数据导入测试数据库,其特征在于,包括:
获取输入的版本时点;
根据所述版本时点生成同步任务;
轮询所述同步任务以将所述生产数据库中的数据同步至所述测试数据库。
2.根据权利要求1所述的数据同步方法,其特征在于,所述同步任务包括所述版本时点,所述同步任务具有任务状态,所述任务状态包括有效状态和无效状态,所述轮询所述同步任务以将所述生产数据库中的数据同步至所述测试数据库,包括:
获取有效同步任务,所述有效同步任务为具有所述有效状态的同步任务;
每间隔第一时间,轮询所述有效同步任务;
根据所述有效同步任务以及有效版本时点,将所述生产数据库中的数据同步至所述测试数据库,其中,所述有效版本时点为所述有效同步任务所包括的版本时点。
3.根据权利要求2所述的数据同步方法,其特征在于,所述根据所述有效同步任务以及有效版本时点,将所述生产数据库中的数据同步至所述测试数据库,包括:
每间隔所述第一时间获取轮询所述有效同步任务的第一轮询时点以及有效版本时点;
当所述有效版本时点与所述第一轮询时点之间的时间差值小于所述第一时间,每间隔第二时间轮询所述有效同步任务,其中,所述第二时间小于所述第一时间;
每间隔所述第二时间获取轮询所述有效同步任务的第二轮询时点;
当所述第二轮询时点匹配上所述有效版本时点,将所述生产数据库中的数据同步至所述测试数据库。
4.根据权利要求2所述的数据同步方法,其特征在于,所述根据所述有效同步任务以及有效版本时点,将所述生产数据库中的数据同步至所述测试数据库,包括:
每间隔所述第一时间获取轮询所述有效同步任务的第三执行时点以及有效版本时点;
当所述有效版本时点与所述第三执行时点的时间差值小于所述第一时间,根据所述有效版本时点设置准点执行触发器;
根据所述准点执行触发器,在所述有效版本时点将所述生产数据库中的数据同步至所述测试数据库。
5.根据权利要求2所述的数据同步方法,其特征在于,所述任务状态还包括执行状态,所述数据同步方法还包括:
当所述同步任务正在执行,将所述同步任务的任务状态设置为执行状态,当所述同步任务执行完毕,若所述同步任务中的版本时点均已执行,将所述同步任务的任务状态设置为无效状态,若所述同步任务中存在未执行的版本时点,将所述同步任务的任务状态设置为有效状态。
6.根据权利要求2所述的数据同步方法,其特征在于,还包括:
获取所述有效同步任务,所述有效同步任务包括待修正的第一版本时点;
获取第二版本时点,根据所述第二版本时点对所述第一版本时点进行修改或者在所述有效同步任务中新增所述第二版本时点。
7.根据权利要求1所述的数据同步方法,其特征在于,在所述获取输入的版本时点之后,还包括:
根据所述版本时点生成审批表单;
对所述审批表单进行验证,更新所述版本时点为验证后的版本时点。
8.根据权利要求2所述的数据同步方法,其特征在于,所述根据所述版本时点生成同步任务,包括:
按照时间正序将所述版本时点进行排序;
根据排序后的所述版本时点,生成任务状态为有效状态的同步任务。
9.一种数据同步装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8任意一项所述的数据同步方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至8任意一项所述的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210860264.9A CN115203329A (zh) | 2022-07-21 | 2022-07-21 | 数据同步方法、数据同步装置、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210860264.9A CN115203329A (zh) | 2022-07-21 | 2022-07-21 | 数据同步方法、数据同步装置、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115203329A true CN115203329A (zh) | 2022-10-18 |
Family
ID=83583058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210860264.9A Pending CN115203329A (zh) | 2022-07-21 | 2022-07-21 | 数据同步方法、数据同步装置、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115203329A (zh) |
-
2022
- 2022-07-21 CN CN202210860264.9A patent/CN115203329A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107515874B (zh) | 一种分布式非关系型数据库中同步增量数据的方法与设备 | |
CN105450682B (zh) | 一种用于数据同步保存、向客户端同步数据的方法、装置和系统 | |
CN108848418B (zh) | 机顶盒集中升级方法 | |
CN112099825B (zh) | 组件进行升级的方法、装置、设备及存储介质 | |
CN110297663B (zh) | 应用程序的唤醒方法、装置、终端和介质 | |
CN109117295B (zh) | 一种交易超时监控方法及装置 | |
CN115203329A (zh) | 数据同步方法、数据同步装置、计算机可读存储介质 | |
CN111680106B (zh) | 一种多应用系统数据同步的方法及装置 | |
CN103530142A (zh) | 一种基于存储设备的Android系统升级方法和系统 | |
CN113783649B (zh) | 终端校时方法、系统、电子设备及存储介质 | |
CN106339176A (zh) | 中间文件处理方法、客户端、服务器和系统 | |
CN112256283A (zh) | 用于Android设备的应用版本管控方法及装置 | |
CN116257270A (zh) | 一种车辆、车辆的升级方法和装置 | |
CN115002507A (zh) | 一种视频数据更新方法、装置、设备及可读存储介质 | |
CN115495527A (zh) | 一种数据同步管理系统和方法 | |
CN112487004A (zh) | 基于数据血缘自动控制任务的方法、装置、介质及系统 | |
CN113672167A (zh) | 一种分布式存储系统的数据一致性校验方法、装置及设备 | |
CN115086355A (zh) | 基于区块链的用户信息处理方法及装置 | |
CN113986939A (zh) | 数据库的数据变更方法及装置 | |
CN113886049A (zh) | 定时任务运行方法、装置以及计算机设备 | |
CN111427864A (zh) | 数据的分批归档方法、装置、设备及存储介质 | |
CN110659042A (zh) | 一种服务器固件管理方法与装置 | |
CN115269160B (zh) | 一种定时任务执行方法、装置及系统 | |
CN117873737B (zh) | 数值模式滚动运行方法、装置、存储介质及电子设备 | |
CN116594749A (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 |