CN114218325A - 数据同步方法、装置、电子设备及存储介质 - Google Patents
数据同步方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114218325A CN114218325A CN202111413551.7A CN202111413551A CN114218325A CN 114218325 A CN114218325 A CN 114218325A CN 202111413551 A CN202111413551 A CN 202111413551A CN 114218325 A CN114218325 A CN 114218325A
- Authority
- CN
- China
- Prior art keywords
- synchronization
- data
- cache data
- naming rule
- cached
- 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
- G06F16/273—Asynchronous replication or reconciliation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据同步方法、装置、电子设备及存储介质。其中,数据同步方法,包括:统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息;所述同步信息包括同步成功次数和同步耗时;对象命名规则用于指示缓存数据的业务类型;根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期;按照所述同步周期,将所述待缓存数据同步至数据库。采用本申请实施例,一方面,可以有效提高任务代码的复用率,降低代码的冗余率,从而可以有效降低维护成本;另一方面,还可以使得各类型的缓存数据的同步周期更符合实际需要,提高同步效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据同步方法、装置、电子设备及存储介质。
背景技术
随着计算机技术的不断发展,高并发场景也越来越多,为了提高高并发场景下系统的吞吐量和健壮性,通常会将缓存数据同步到数据库中存储。
目前,在将缓存数据同步到数据库中时,通常会为不同业务类型的缓存数据分别设定固定的同步周期,按照不同业务类型的缓存数据各自对应的固定周期,定时对缓存数据进行快照操作,以将缓存数据同步至数据库中。这样,为不同业务类型的缓存数据设定不同的定时同步任务,会导致任务代码复用率较低,从而会导致维护成本较高。
发明内容
本申请提供一种数据同步方法、装置、电子设备及存储介质,以至少解决相关技术中任务代码复用率较低,从而会导致维护成本较高的技术问题。本申请的技术方案如下:
根据本申请实施例的第一方面,提供一种数据同步方法,包括:
统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息;所述同步信息包括同步成功次数和同步耗时;对象命名规则用于指示缓存数据的业务类型;
根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期;
按照所述同步周期,将所述待缓存数据同步至数据库。
可选的,所述统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息之前,还包括:
配置各业务类型的缓存数据对应的对象命名规则;所述对象命名规则包括业务类型标识、所述业务类型中的业务对象标识中的至少一项。
可选的,所述预设历史时段包括一个或多个历史时段;所述同步信息包括各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期,包括:
根据各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
可选的,所述同步信息还包括所述目标缓存数据的数量、每个所述目标缓存数据的大小;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期之前,还包括:
获取已同步至所述数据库的缓存数据大小、缓存数据的同步成功率;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期,包括:
根据所述同步成功次数、所述同步耗时、所述目标缓存数据的数量、每个所述目标缓存数据的大小、已同步至所述数据库的缓存数据大小、所述目标缓存数据的同步成功率,确定符合所述目标对象命名规则的待缓存数据的同步周期。
可选的,所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期之前,还包括:
确定所述目标对象命名规则中的业务类型标识对应的优先级信息;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期,包括:
根据所述同步成功次数、所述同步耗时、所述优先级信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
根据本申请实施例的第二方面,提供一种数据同步装置,包括:
统计模块,用于统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息;所述同步信息包括同步成功次数和同步耗时;对象命名规则用于指示缓存数据的业务类型;
第一确定模块,用于根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期;
同步模块,用于按照所述同步周期,将所述待缓存数据同步至数据库。
可选的,所述数据同步装置,还包括:
配置模块,用于配置各业务类型的缓存数据对应的对象命名规则;所述对象命名规则包括业务类型标识、所述业务类型中的业务对象标识中的至少一项。
可选的,所述预设历史时段包括一个或多个历史时段;所述同步信息包括各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息;
所述第一确定模块,包括:
第一确定单元,用于根据各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
可选的,所述同步信息还包括所述目标缓存数据的数量、每个所述目标缓存数据的大小;
所述数据同步装置,还包括:
获取模块,用于获取已同步至所述数据库的缓存数据大小、缓存数据的同步成功率;
所述第一确定模块,包括:
第二确定单元,用于根据所述同步成功次数、所述同步耗时、所述目标缓存数据的数量、每个所述目标缓存数据的大小、已同步至所述数据库的缓存数据大小、所述目标缓存数据的同步成功率,确定符合所述目标对象命名规则的待缓存数据的同步周期。
可选的,所述数据同步装置,还包括:
第二确定模块,用于确定所述目标对象命名规则中的业务类型标识对应的优先级信息;
所述第一确定模块,包括:
第三确定单元,用于根据所述同步成功次数、所述同步耗时、所述优先级信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
根据本申请实施例的第三方面,提供一种电子设备,其包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面中任一项所述的数据同步方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面中任一项所述的数据同步方法。
根据本申请实施例的第五方面,提供一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如第一方面中任一项所述的数据同步方法。
本申请的实施例提供的技术方案至少带来以下有益效果:
在本申请实施例中,通过统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步成功次数和同步耗时,其中,对象命名规则可以用于指示缓存数据的业务类型;再根据同步成功次数和同步耗时,确定符合目标对象命名规则的待缓存数据的同步周期,以根据该同步周期,将待缓存数据同步至数据库。这样,一方面,由于对象命名规则可以用于指示缓存数据的业务类型,故而,本申请实施例提供的方法仅需要创建一个同步任务,即可确定各业务类型的缓存数据对应的同步周期,以进行缓存数据的同步,如此,可以有效提高任务代码的复用率,降低代码的冗余率,从而可以有效降低维护成本。另一方面,本申请实施例提供的方法还可以根据各业务类型的缓存数据的同步信息,动态调整缓存数据的同步周期,如此,还可以使得各类型的缓存数据的同步周期更符合实际需要,提高同步效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
图1是本申请实施例提供的一种数据同步方法的流程图;
图2是本申请实施例提供的一种数据同步装置的框图;
图3是本申请实施例提供的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
由背景技术可知,现有技术中,需要为不同业务类型的缓存数据设定不同的定时同步任务,会导致任务代码复用率较低,维护成本较高。基于此,本申请实施例提供了一种数据同步方法,不仅可以有效提高任务代码的复用率,有效降低维护成本;还可以动态调整缓存数据的同步周期,使得各业务类型的缓存数据的同步周期更符合实际需要,提高同步效率。
下面结合附图对本申请实施例提供的数据同步方法进行详细说明。
图1是本申请实施例示出的一种数据同步方法的流程图,该数据同步方法的执行主体可以是服务器,或者服务器集群,如图1所示,该方法包括以下处理:
S110,统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息。
其中,同步信息可以包括符合目标对象命名规则的目标缓存数据在预设历史时段内的同步成功次数和同步耗时。对象命名规则可以用于指示缓存数据的业务类型,其可以是预先设置好的。预设历史时段可以是预先设定的从当前时刻起过去的一段时间,如可以设置为当前时刻起之前的1秒、60秒、300秒等。
作为一个示例,在进行数据同步时,可以先统计在预设历史时段内的,符合某个对象命名规则(即目标对象命名规则)的缓存数据(即目标缓存数据)的同步信息,如可以是获取目标缓存数据在预设历史时段内的同步成功次数和同步耗时。其中,同步成功次数可以是预设历史时段内目标缓存数据成功同步至数据库的次数,同步耗时可以是预设历史时段内目标缓存数据成功同步至数据库的耗时。
S120,根据同步成功次数和同步耗时,确定符合目标对象命名规则的待缓存数据的同步周期。
作为一个示例,在统计到预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息之后,可以根据同步信息中的同步成功次数和同步耗时,计算符合目标对象命名规则的待缓存数据的同步周期,如可以计算通过计算同步耗时和同步成功次数的商,得到平均同步耗时。然后,可以将该平均同步耗时确定为符合目标对象命名规则的待缓存数据的同步周期。
S130,按照同步周期,将待缓存数据同步至数据库。
作为一个示例,在根据同步成功次数和同步耗时,确定符合目标对象命名规则的待缓存数据的同步周期之后,可以按照该同步周期进行符合目标对象命名规则的待缓存数据的同步,将符合目标对象命名规则的待缓存数据同步至数据库中。
可以理解的是,上述方法可以是在接收到用户的访问请求后执行的,也可以是实时执行或者周期性执行的。
在本申请实施例中,通过统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步成功次数和同步耗时,其中,对象命名规则可以用于指示缓存数据的业务类型;再根据同步成功次数和同步耗时,确定符合目标对象命名规则的待缓存数据的同步周期,以根据该同步周期,将待缓存数据同步至数据库。这样,一方面,由于对象命名规则可以用于指示缓存数据的业务类型,故而,本申请实施例提供的方法仅需要创建一个同步任务,即可确定各业务类型的缓存数据对应的同步周期,以进行缓存数据的同步,如此,可以有效提高任务代码的复用率,降低代码的冗余率,从而可以有效降低维护成本。另一方面,本申请实施例提供的方法还可以根据各业务类型的缓存数据的同步信息,动态调整缓存数据的同步周期,如此,还可以使得各类型的缓存数据的同步周期更符合实际需要,提高同步效率。
在一些实施例中,在上述步骤S110之前还可以执行如下处理:
配置各业务类型的缓存数据对应的对象命名规则。
作为一个示例,在上述方法执行之前,可以先为各业务类型的缓存数据配置对应的对象命名规则,其中,对象命名规则可以包括业务类型标识、业务类型中的业务对象标识中的至少一项,也就是说,对象命名规则可以只包括业务类型标识,也可以只包括业务类型中的业务对象标识,也可以包括业务类型标识和业务类型中的业务对象标识。以缓存数据的业务类型为投票类型为例,投票类型的缓存数据对应的对象命名规则可以配置为“votenumber:user:*”,其中,“*”可以用于表示候选人的ID(Identity document,身份标识号)编号,该业务类型的缓存数据可以用于记录所有候选人的投票数据。这样,可以为后续的数据同步方法提供数据支撑。
在一些实施例中,预设历史时段可以包括一个或多个历史时段;相应的,同步信息可以包括各个历史时段内符合目标对象命名规则的目标缓存数据的同步信息。此时,上述步骤S120的具体实现方式可以如下:
根据各个历史时段内符合目标对象命名规则的目标缓存数据的同步信息,确定符合目标对象命名规则的待缓存数据的同步周期。
作为一个示例,预设历史时段可以是一个历史时段或者多个历史时段。当预设历史时段包括一个历史时段时,可以仅根据这一个预设历史时段内,符合目标对象命名规则的目标缓存数据的同步信息,确定符合目标对象命名规则的待缓存数据的同步周期。当预设历史时段包括多个历史时段时,可以分别统计每个历史时段内符合目标对象命名规则的目标缓存数据的同步信息,根据每个历史时段内符合目标对象命名规则的目标缓存数据的同步信息,确定符合目标对象命名规则的待缓存数据的同步周期。作为一个具体的示例,当预设历史时段包括多个历史时段时,可以分别统计每个历史时段内的同步成功次数和同步耗时,再根据每个历史时段内的同步成功次数和同步耗时,确定符合目标对象命名规则的待缓存数据的同步周期。例如,可以计算每个历史时段内的平均同步耗时,再计算预设历史时段中所有历史时段的平均同步耗时的均值,将该均值作为符合目标对象命名规则的待缓存数据的同步周期。这样,结合多个历史时段内的同步信息确定同步周期,可以使得确定出的同步周期更加准确,从而可以进一步提高同步效率。
可以理解的是,还可以为不同的历史时段设置对应的权重,结合每个历史时段的平均同步耗时及每个历史时段内对应的权重,计算符合目标对象命名规则的待缓存数据的同步周期。
在一些实施例中,同步信息还可以包括目标缓存数据的数量、每个目标缓存数据的大小,相应的,在上述步骤S120之前,还可以执行如下处理:
获取已同步至数据库的缓存数据大小、缓存数据的同步成功率。
基于此,上述步骤S120的具体实现方式可以如下:
根据同步成功次数、同步耗时、目标缓存数据的数量、每个目标缓存数据的大小、已同步至数据库的缓存数据大小、目标缓存数据的同步成功率,确定符合目标对象命名规则的待缓存数据的同步周期。
作为一个示例,同步信息还可以包括目标缓存数据的数量,以及每个目标缓存数据的大小,其中,每个目标缓存数据的大小可以是每个目标缓存数据占用的存储空间大小,其单位可以是byte(字节),还可以计算目标缓存数据的数量和每个目标缓存数据的大小的乘积得到目标缓存数据占用的总存储空间。在确定符合目标对象命名规则的待缓存数据的同步周期之前,还可以获取已同步至数据库的缓存数据的大小(即数据库中已存在的缓存数据占用的总存储空间),以及目标缓存数据的同步成功率(即目标缓存数据的同步成功次数与向数据库进行目标缓存数据同步操作总次数的比值)。
然后,可以根据获取到的目标缓存数据的同步成功次数、同步耗时、目标缓存数据的数量、每个目标缓存数据的大小,以及已同步至数据库的缓存数据大小、目标缓存数据的同步成功率等信息,确定符合目标对象命名规则的待缓存数据的同步周期。例如,可以在已同步至数据库的缓存数据在数据库占用的存储空间小于预设占比,且目标缓存数据的同步成功率大于预设成功率的情况下,将根据同步成功次数和同步耗时,确定的符合目标对象命名规则的待缓存数据的同步周期,确定为符合目标对象命名规则的待缓存数据的同步周期。或者,在已同步至数据库的缓存数据在数据库占用的存储空间小于预设占比,且目标缓存数据的同步成功率大于预设成功率时,还可以根据目标缓存数据的数量以及每个目标缓存数据的大小,判断目标缓存数据在数据库中占用的总存储空间大小是否小于预设空间大小,在目标缓存数据在数据库中占用的总存储空间大小小于预设空间大小的情况下,将根据同步成功次数和同步耗时,确定的符合目标对象命名规则的待缓存数据的同步周期,确定为符合目标对象命名规则的待缓存数据的同步周期。
可以理解的是,其中的预设占比、预设成功率、预设空间大小可以是预先根据实际情况设定的具体数值。而且,还可以结合已同步至所述数据库的缓存数据的数量、每个历史时段内的请求频率、每个历史时段内的同步频率等参数,确定待缓存数据的同步周期,结合的相关参数越多,相应的,确定出的同步时长也会更准确。
这样,在同步成功次数和同步耗时的基础上,结合目标缓存数据的数量、每个目标缓存数据的大小、已同步至数据库的缓存数据大小、目标缓存数据的同步成功率等参数确定待缓存数据的同步周期,可以进一步提高待缓存数据的同步周期准确性。
在一些实施例中,在上述步骤S120之前,还可以执行如下处理:
确定目标对象命名规则中的业务类型标识对应的优先级信息;
基于此,上述步骤S120的具体实现方式可以如下:
根据同步成功次数、同步耗时、优先级信息,确定符合目标对象命名规则的待缓存数据的同步周期。
作为一个示例,在执行上述方法之前,还可以预先为各业务类型设置优先级信息,具体的,可以在各业务类型标识上添加对应的优先级标识,或者也可以将各业务类型标识与对应的优先级信息建立关联关系,优先级信息可以根据业务类型的缓存数据的重要程度设置,优先级越高则可以认为该业务类型的缓存数据越重要、越需要优先同步至数据库。这样,在根据同步成功次数和同步耗时,确定符合目标对象命名规则的待缓存数据的同步周期之前,可以先确定目标对象命名规则中的业务类型标识对应的优先级信息。
然后,可以根据同步成功次数、同步耗时,以及优先级信息,确定符合目标对象命名规则的待缓存数据的同步周期。作为一个具体的示例,当目标对象命名规则中的业务类型标识对应的优先级信息较高(如满足优先级等级条件)时,可以认为该业务类型的数据需要优先同步,此时,可以将根据同步成功次数、同步耗时计算出的同步周期确定为待缓存数据的同步周期;反之,当目标对象命名规则中的业务类型标识对应的优先级信息较低(如不满足优先级等级条件)时,可以认为该业务类型的数据不需要优先同步,此时,可以在适当延长根据同步成功次数、同步耗时计算出的同步周期,将延长后的同步周期确定为待缓存数据的同步周期。这样,为各业务类型设置优先级可以避免数据同步时出现堵塞的情况,还可以避免出现较为重要的缓存数据同步失败的情况,如此,一方面,可以进一步提高数据同步效率;另一方面,还可以有效的保证重要数据的完整性。
需要说明的是,优先级等级条件可以是预先设定的,其具体条件可以根据实际需要进行设定。当对根据同步成功次数、同步耗时计算出的同步周期进行适当延长时,其具体延长策略也可以是根据实际情况设定的,本申请实施例对此不作限定。
为使本申请实施例提供的方法更加清晰,下面结合一个具体的示例对本申请实施例提供的方法进行说明。
以目标对象命名规则的业务标识为投票类型,投票ID编号为100为例,数据同步的流程可以如下:
在执行数据同步方法之前,可以配置投票类型对应的对象命名规则,如可以配置为:votenumber:user:*,其中*表示候选人的ID编号,该缓存数据记录了所有候选人的投票数。
在执行数据同步时,首先,当有用户给ID编号为100的候选人的投票请求时,服务器可以统计并更新当前时刻起过去的1分钟和5分钟内给ID编号为100的候选人的投票的缓存数据的同步信息,示例如下:
目标缓存数据的数量:1;
读写频率(统计1分钟和5分钟的总投票请求数):1分钟请求数为1,5分钟的请求为1;
每个目标缓存数据的大小:4byte
总大小:目标缓存数据的数量与每个目标缓存数据的大小的乘积,即*1*4byte=4byte;
然后,可以上一步中的投票数据同步至数据库,并收集数据库的信息,示例如下:
已同步至数据库的缓存数据数量:1;
缓存数据的同步成功率:100%;
同步频率(统计1分钟和5分钟的总同步次数):1分钟内同步1次,5分钟内同步1次;
同步耗时:上次同步时长为0,平均同步时长为2毫秒;
之后,当有新的用户投票时,持续进行第二步和第三步,并更新缓存数据的同步信息,示例如下:
目标缓存数据的数量:100;
读写频率:1分钟请求数为200,5分钟的请求为1000;
每个目标缓存数据的大小:8byte
总大小:100*8byte=800byte
还可以更新数据库的统计信息:
已同步至数据库的缓存数据数量:100;
缓存数据的同步成功率:100%;
同步频率:1分钟内同步500次,5分钟内同步5000次;
同步耗时:上次同步时长为2毫秒,平均同步时长为2毫秒;
最后,服务器可以结合综合同步频率高、已同步至数据库的缓存数据数量小、同步耗时短等因素,采用每2毫秒同步一次的策略同步投票数据。
基于相同的发明构思,本申请实施例还提供了一种数据同步装置。参照图2,该数据同步装置200可以包括:
统计模块210,可以用于统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息;所述同步信息包括同步成功次数和同步耗时;对象命名规则用于指示缓存数据的业务类型;
第一确定模块220,可以用于根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期;
同步模块230,可以用于按照所述同步周期,将所述待缓存数据同步至数据库。
可选的,所述数据同步装置200,还可以包括:
配置模块,可以用于配置各业务类型的缓存数据对应的对象命名规则;所述对象命名规则包括业务类型标识、所述业务类型中的业务对象标识中的至少一项。
可选的,所述预设历史时段包括一个或多个历史时段;所述同步信息包括各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息;
所述第一确定模块220,可以包括:
第一确定单元,可以用于根据各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
可选的,所述同步信息还包括所述目标缓存数据的数量、每个所述目标缓存数据的大小;
所述数据同步装置200,还可以包括:
获取模块,可以用于获取已同步至所述数据库的缓存数据大小、缓存数据的同步成功率;
所述第一确定模块220,可以包括:
第二确定单元,用于根据所述同步成功次数、所述同步耗时、所述目标缓存数据的数量、每个所述目标缓存数据的大小、已同步至所述数据库的缓存数据大小、所述目标缓存数据的同步成功率,确定符合所述目标对象命名规则的待缓存数据的同步周期。
可选的,所述数据同步装置200,还可以包括:
第二确定模块,可以用于确定所述目标对象命名规则中的业务类型标识对应的优先级信息;
所述第一确定模块220,可以包括:
第三确定单元,用于根据所述同步成功次数、所述同步耗时、所述优先级信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
关于上述实施例中的数据同步装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图3示出了可以用来实施本申请的实施例的示例电子设备300的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图3所示,电子设备300包括计算单元301,其可以根据存储在只读存储器(ROM)302中的计算机程序或者从存储单元308加载到随机访问存储器(RAM)303中的计算机程序,来执行各种适当的动作和处理。在(RAM)303中,还可存储设备300操作所需的各种程序和数据。计算单元301、(ROM)302以及(RAM)303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
电子设备300中的多个部件连接至I/O接口305,包括:输入单元306,例如键盘、鼠标等;输出单元307,例如各种类型的显示器、扬声器等;存储单元308,例如磁盘、光盘等;以及通信单元309,例如网卡、调制解调器、无线通信收发机等。通信单元309允许电子设备300通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元301可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元301的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元301执行上文所描述的各个方法和处理,例如所述数据同步方法。例如,在一些实施例中,所述数据同步方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元308。在一些实施例中,计算机程序的部分或者全部可以经由(ROM)302和/或通信单元309而被载入和/或安装到电子设备300上。当计算机程序加载到(RAM)303并由计算单元301执行时,可以执行上文描述的所述数据同步方法的一个或多个步骤。备选地,在其他实施例中,计算单元301可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行所述基于数据同步方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
用于实施本申请的方法的计算机程序产品可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
本领域技术人员在考虑本申请说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种数据同步方法,其特征在于,包括:
统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息;所述同步信息包括同步成功次数和同步耗时;对象命名规则用于指示缓存数据的业务类型;
根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期;
按照所述同步周期,将所述待缓存数据同步至数据库。
2.根据权利要求1所述的数据同步方法,其特征在于,所述统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息之前,还包括:
配置各业务类型的缓存数据对应的对象命名规则;所述对象命名规则包括业务类型标识、所述业务类型中的业务对象标识中的至少一项。
3.根据权利要求1所述的数据同步方法,其特征在于,所述预设历史时段包括一个或多个历史时段;所述同步信息包括各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期,包括:
根据各个所述历史时段内符合所述目标对象命名规则的所述目标缓存数据的同步信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
4.根据权利要求1所述的数据同步方法,其特征在于,所述同步信息还包括所述目标缓存数据的数量、每个所述目标缓存数据的大小;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期之前,还包括:
获取已同步至所述数据库的缓存数据大小、缓存数据的同步成功率;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期,包括:
根据所述同步成功次数、所述同步耗时、所述目标缓存数据的数量、每个所述目标缓存数据的大小、已同步至所述数据库的缓存数据大小、所述目标缓存数据的同步成功率,确定符合所述目标对象命名规则的待缓存数据的同步周期。
5.根据权利要求2所述的数据同步方法,其特征在于,所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期之前,还包括:
确定所述目标对象命名规则中的业务类型标识对应的优先级信息;
所述根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期,包括:
根据所述同步成功次数、所述同步耗时、所述优先级信息,确定符合所述目标对象命名规则的待缓存数据的同步周期。
6.一种数据同步装置,其特征在于,包括:
统计模块,用于统计预设历史时段内符合目标对象命名规则的目标缓存数据的同步信息;所述同步信息包括同步成功次数和同步耗时;对象命名规则用于指示缓存数据的业务类型;
第一确定模块,用于根据所述同步成功次数和同步耗时,确定符合所述目标对象命名规则的待缓存数据的同步周期;
同步模块,用于按照所述同步周期,将所述待缓存数据同步至数据库。
7.根据权利要求6所述的数据同步装置,其特征在于,所述数据同步装置,还包括:
配置模块,用于配置各业务类型的缓存数据对应的对象命名规则;所述对象命名规则包括业务类型标识、所述业务类型中的业务对象标识中的至少一项。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至5中任一项所述的数据同步方法。
9.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至5中任一项所述的数据同步方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111413551.7A CN114218325A (zh) | 2021-11-25 | 2021-11-25 | 数据同步方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111413551.7A CN114218325A (zh) | 2021-11-25 | 2021-11-25 | 数据同步方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114218325A true CN114218325A (zh) | 2022-03-22 |
Family
ID=80698288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111413551.7A Pending CN114218325A (zh) | 2021-11-25 | 2021-11-25 | 数据同步方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114218325A (zh) |
-
2021
- 2021-11-25 CN CN202111413551.7A patent/CN114218325A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113850394B (zh) | 联邦学习方法、装置、电子设备及存储介质 | |
CN115718620A (zh) | 一种代码程序迁移方法、装置、设备和存储介质 | |
CN113392984B (zh) | 用于训练模型的方法、装置、设备、介质和产品 | |
CN112883041A (zh) | 一种数据更新方法、装置、电子设备及存储介质 | |
CN115174686B (zh) | 一种基于服务效率的多个服务通道权重动态调整方法和装置 | |
CN116545905A (zh) | 一种服务健康检测方法、装置、电子设备及存储介质 | |
CN114218325A (zh) | 数据同步方法、装置、电子设备及存储介质 | |
CN113360689B (zh) | 图像检索系统、方法、相关装置及计算机程序产品 | |
CN115617800A (zh) | 数据读取方法、装置、电子设备及存储介质 | |
CN115103024A (zh) | 一种序列号生成方法、装置、电子设备及存储介质 | |
CN115630078A (zh) | 基于数字孪生的用户数据处理方法、装置、设备及介质 | |
CN115426287A (zh) | 一种系统监控和优化方法、装置、电子设备及介质 | |
CN114691781A (zh) | 一种数据同步方法、系统、装置、设备及介质 | |
CN114676177A (zh) | 一种金融指标的确定方法、装置、设备、介质及产品 | |
CN114564149A (zh) | 一种数据存储方法、装置、设备及存储介质 | |
CN107589907A (zh) | 数据处理方法、电子设备及计算机可读存储介质 | |
CN112463399A (zh) | 一种服务器bmc信息管理方法、系统、终端及存储介质 | |
CN111767318A (zh) | 一种数据统计方法、装置、电子设备及介质 | |
CN116719621B (zh) | 一种针对海量任务的数据回写方法、装置、设备及介质 | |
CN115563015B (zh) | 一种代码热度统计方法、装置、设备和存储介质 | |
CN115858104A (zh) | 一种事务提交序号快照获取方法、装置、设备及存储介质 | |
CN112633683B (zh) | 资源使用量统计方法、装置、系统、电子设备及存储介质 | |
CN113225228B (zh) | 数据处理方法及装置 | |
CN114896030A (zh) | 一种确定方法、装置、设备和存储介质 | |
CN115456627A (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 |