CN109697140B - 数据备份方法及装置、数据恢复方法及装置、存储介质 - Google Patents
数据备份方法及装置、数据恢复方法及装置、存储介质 Download PDFInfo
- Publication number
- CN109697140B CN109697140B CN201811377156.6A CN201811377156A CN109697140B CN 109697140 B CN109697140 B CN 109697140B CN 201811377156 A CN201811377156 A CN 201811377156A CN 109697140 B CN109697140 B CN 109697140B
- Authority
- CN
- China
- Prior art keywords
- data
- storage area
- time period
- target account
- updated
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1461—Backup scheduling policy
-
- 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)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据备份方法及装置、数据恢复方法及装置、存储介质。其中,该方法包括:当目标应用中的目标帐号的数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,第一数据为目标帐号在第一时间段上更新后的数据;将第一存储区域中存储的第一数据存储到目标应用的数据库中;将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。本发明解决了现有技术中无法针对目标用户数据进行快速存档的技术问题。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据备份方法及装置、数据恢复方法及装置、存储介质。
背景技术
实际应用中,游戏中经常存在需要回档的情况,例如玩家利用游戏漏洞获利时,需要将玩家数据回退到获利之前的状态,或者删除角色后需要恢复角色。而通过存储的冷备文件和binlog消耗时间较大,操作复杂度高,且容易出错。而且很多情况下只需要回档少量玩家的数据,例如误删角色的玩家是很少量的玩家,如果采用上述方法,耗时耗力。
采用binlog方式则将数据直接存档在SQL语句信息库中,则存储的数据量大,无法实现对目标用户数据进行存档。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据备份方法及装置、数据恢复方法及装置、存储介质,以至少解决现有技术中无法针对目标用户数据进行快速存档的技术问题。
根据本发明实施例的一个方面,提供了一种数据备份方法,包括:当目标应用中的目标帐号的数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,第一数据为目标帐号在第一时间段上更新后的数据;将第一存储区域中存储的第一数据存储到目标应用的数据库中;将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。
根据本发明实施例的另一方面,还提供了一种数据恢复方法,包括:获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;在缓存中的第二存储区域存储有目标帐号在第四时间段上更新后的数据的情况下,待恢复的数据存储到共享内存中的第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第二存储区域为缓存中为目标帐号分配的存储区域;从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
根据本发明实施例的又一方面,还提供了一种数据备份装置,包括:第一检测单元,用于当目标应用中的目标帐号的数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,第一数据为目标帐号在第一时间段上更新后的数据;第一存储单元,用于将第一存储区域中存储的第一数据存储到目标应用的数据库中;第二存储单元,用于将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。
根据本发明实施例的再一方面,还提供了一种数据恢复装置,包括:获取单元,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;第一处理单元,用于在缓存中的第二存储区域存储有目标帐号在第四时间段上更新后的数据的情况下,待恢复的数据存储到共享内存中的第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第二存储区域为缓存中为目标帐号分配的存储区域;第一加载单元,用于从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
根据本发明实施例的又一方面,还提供了一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述的数据备份方法。
根据本发明实施例的又一方面,还提供了一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述的数据恢复方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行上述的数据备份方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行上述的数据恢复方法。
在本发明实施例中,通过当检测到目标应用中的目标帐号的数据在第一时间段上出现更新时,将目标帐号在第一时间段上更新后的数据存储到共享内存中的第一存储区域,将第一存储区域中存储的第一数据存储到目标应用的数据库中;将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载,达到了将待存储的数据可以同时存储到共享内存中的第一存储区域目的,从而实现了对目标用户数据存档的技术效果,进而解决了现有技术中无法针对目标用户数据进行快速存档的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的数据备份方法的硬件环境的示意图;
图2是根据本发明实施例的一种可选的数据备份方法的流程图;
图3是根据本发明优选实施例的一种可选的数据存储架构示意图;
图4是根据本发明优选实施例的一种可选的数据备份方法的流程图;
图5是根据本发明实施例的一种可选的数据恢复方法的流程图;
图6是根据本发明优选实施例的一种可选的数据回档方法的流程图;
图7是根据本发明实施例的一种可选的数据备份装置的示意图;
图8是根据本发明实施例的一种可选的数据备份装置的示意图;
图9是根据本发明实施例的一种可选的数据备份装置的示意图;
图10是根据本发明实施例的一种可选的数据备份装置的示意图;
图11是根据本发明实施例的一种可选的数据备份装置的示意图;
图12是根据本发明实施例的一种可选的数据恢复装置的示意图;
图13是根据本发明实施例的一种可选的电子装置的结构示意图;
图14是根据本发明实施例的一种可选的电子装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种数据备份方法的方法实施例。
可选地,在本实施例中,上述数据备份方法可以应用于如图1所示的由终端102和游戏服务器104、多个旁路服务器以及共享内存106、存储共享内存数据108、缓存110以及数据库112构成的硬件环境中。如图1所示,游戏服务器104从终端获取数据,将数据存储在共享内存106中,将数据备份在存储共享数据108中,多个旁路服务器的数据和存储共享数据108中的数据可以同时存储在缓存110中,将缓存110中的数据存储在数据库112中。
其中,上述终端102通过网络与服务器104进行连接,上述网络包括但不限于:广域网、城域网或局域网,存储器并不限定于PC、手机、平板电脑等。本发明实施例的数据备份方法可以由游戏服务器102来执行,也可以由终端来执行,还可以是由服务器102和终端共同执行。其中,终端执行本发明实施例的数据备份方法也可以是由安装在其上的客户端来执行。
图2是根据本发明实施例的一种可选的数据备份方法的流程图,如图2所示,该数据备份方法可以包括以下步骤:
步骤S202,当目标应用中的目标帐号的数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,第一数据为目标帐号在第一时间段上更新后的数据。
步骤S204,将第一存储区域中存储的第一数据存储到目标应用的数据库中。
步骤S206,将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。
通过上述步骤S202至步骤S206,通过当检测到目标应用中的目标帐号的数据在第一时间段上出现更新时,将目标帐号在第一时间段上更新后的数据存储到共享内存中的第一存储区域,将第一存储区域中存储的第一数据存储到目标应用的数据库中;将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载,达到了将待存储的数据可以同时存储到共享内存中的第一存储区域目的,达到了简化数据存档操作流程的目的,从而实现了提高数据存档效率且减小存档数据的容量的技术效果,进而解决了现有技术中无法针对目标用户数据进行快速存档的技术问题。
需要说明的是,本发明实施例中的目标帐号可以为移动端的目标应用中的目标帐号,也可以为非移动端的目标应用中的目标帐号,本发明实施例对其不做具体限定。目标帐号在第一时间段上更新后的数据为第一数据;将第一数据存储到共享内存中的第一存储区域,其中,在将第一存储区域中存储的数据被设置为存储到目标应用的数据库中时,将第一数据备份到缓存在为目标帐号分配的第二存储区域。也就是说,在实际应用时,将数据存储到目标数据库时候,也将数据存储到共享内存中的一个缓存的存储区域。第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。可选的,在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之前,检测第二存储区域中是否存储有目标帐号在第二时间段上更新后的数据,其中,第二时间段为与第一时间段相邻的上一个时间段;在第二存储区域中未存储有目标帐号在第二时间段上更新后的数据的情况下,将数据库中存储的目标帐号在第二时间段上更新后的数据存储到第二存储区域中。需要说明的是,当第二存储区域中不存在第一时间段之前的时间段的更新数据时,第二存储区域中存储的数据是当前更新的数据,也就是说,第二存储区域存储的数据是基于当前数据最接近的时间段的更新的数据。
在步骤S206提供的技术方案中,将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域包括:在第二存储区域中存储有目标帐号在第二时间段上更新后的数据的情况下,可以将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域。可选的,获取数据库中存储的目标帐号在第三时间段上更新后的数据,其中,第三时间段是在第二时间段之前最晚出现目标帐号的数据更新的时间段;将目标帐号在第三时间段上更新后的数据作为目标帐号在第二时间段上更新后的数据存储到第二存储区域。
在实际应用场景中,可以将第二存储区域中存储的数据备份到共享内存中的第一存储区域中。也可以将数据库中存储的目标帐号在第三时间段上更新后的数据,其中,第三时间段是在第二时间段之前最晚出现目标帐号的数据更新的时间段数据存储到第二存储区域中,进而解决了现有技术中无法针对目标用户进行数据回档的问题,从而实现了可以从第二存储区域中获得数据进行目标用户数据的恢复,减少恢复的时间、简化了流程操作。
例如,在服务器中检测到目标应用帐号在2018年10月02日的下午3-4点之间的目标应用数据出现了更新,则将该段时间的是数据存储到共享内存中的一个存储区域中,该共享内存的数据预设可以存储一个周的数据,共享内存中的数据可以存储两天的数据,同时也将该段的数据存储到目标应用对应的数据库中,数据库中可以保留一个月的数据,如果想要回到前一天10月01日时的状态,则可以直接在共享内存中的一个存储区域中获取10月01日的数据。进而节省了调取数据的时间。
作为一种可选的实施例,在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之后,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;在第二存储区域存储有目标帐号在第四时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第一存储区域中存储的目标帐号在第四时间段上更新后的数据被设置为被更新到数据库中;从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
需要说明的是,在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;在查找到目标帐号在第五时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据,第一存储区域中存储的目标帐号在第五时间段上更新后的数据被设置为被更新到数据库中;从第一存储区域中加载目标帐号在第五时间段上更新后的数据。此处需要说明的是,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第六时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;在查找到目标帐号在第六时间段上更新后的数据的情况下,将目标帐号在第六时间段上更新后的数据作为待恢复的数据;将待恢复的数据存储到第一存储区域;其中,待恢复的数据为目标帐号在第六时间段上更新后的数据,第一存储区域中存储的目标帐号在第六时间段上更新后的数据被设置为被更新到数据库中;从第一存储区域中加载目标帐号在第六时间段上更新后的数据。由于可以从第一存储区域存储的数据中获得需要恢复的数据,从而使数据启动速度快,大大节约了恢复数据的时间。还需要说明的是,上述自然数M、N可以相同也可以不同。
作为一种可选的实施例,当目标帐号不在线的情况下,可以将待恢复的数据存储到第一存储区域。可选的,当目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域。需要说明的是,获取目标帐号在当前时间段上的数据可以包括:通过目标应用的主线程来获取目标帐号在当前时间段上的数据;而将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线可以包括:通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域可以包括:通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域可以包括:通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
在实际应用的场景中,上述目标应用可以为游戏应用。
以下结合一个优选实施例进行上述方法的应用。
图3是根据本发明优选实施例的一种可选的数据存储架构示意图,如图3所示,该数据架构包括:GameServer为游戏逻辑服务器,GameServer产生的数据写进共享内存,RoleServer、AccountServer为旁路服务器,StorageServer负责存储共享内存的数据,DCache为缓存,MySQL为数据库,DBAccess将DCache的数据写进MySQL。该数据存储具体过程如下:
步骤1:架构中RoleServer、AccountServer直接将数据写进DCache,而GameServer需要先将数据写进共享内存,再由StorageServer将共享内存中数据写进DCache,采用共享内存原因是服务器启动时只需要从共享内存加载数据,不需从数据库中读取,启动速度快。
步骤2:每次在DBAccess将DCache中数据写入MySQL时,都按小时将数据备份到某块DCache中(下文称为DCacheX),每次备份当前小时数据之前,都需要检查DCacheX中是否有该玩家前一个小时数据,如果没有,需要从MySQL中取出该玩家数据,并存在DCacheX中作为玩家前一小时数据备份,然后再备份当前小时数据(当前小时向上取整,例如当前时间为8:29分,则当前小时为9点,前一小时为8点),然后检查一周之前是否有备份数据,如果有则删除,因为回档操作往往回档到很近的时间点,一周之前的备份没有意义。可以保证在DCache中的数据是近期的数据相对数据库中的数据以及通过调用数据库的数据将需要的数据存储在DCache中,确保数据调用时,是在相对容量小的数据存储处取出,进而可以节省目标应用调用数据的时间提供工作效率。
步骤3:回档时以指定时间点在DCacheX中先向前遍历k次、再向后遍历k次,只要命中,即可将命中的数据作为玩家需要回档到的数据,此时检查玩家是否在线,如果不在线则直接将该数据写到DCache中;如果在线则将该数据解压后复制给玩家,将玩家踢下线。进而当目标应用在线时间不是连续的情况下,可以获取最近一次在线时,其在想要回到某点为基准进行获取最近更新的数据。
例如,现在是周一的下午4点,最近一次上线的时间是周一上午11点至12点,如果玩家想回到上个周天的下午4点,则将以上周天4点为时间基准点,进行回档数据可以是周一上午11点至12点的数据,如果在上周天下午6点至7点玩家在线,进行回档数据可以是上周天下午6点至7点玩家在线的数据。可以确保回档的数据是玩家需要回档的数据。
需要说明的是,当玩家不在线时,共享内存没有该玩家数据,备份数据写进DCache后,不会再被共享内存中数据覆盖;当玩家在线时,共享内存有玩家数据,备份数据写进DCache后,会再被共享内存中数据覆盖,无法回档,因此直接将备份数据复制给玩家,然后该备份数据会被写进共享内存,共享内存再写进DCache。这种操作可以在进行数据恢复的时候,可以直接从共享内存中直接恢复数据,节约了时间,进而提高了效率。
还需要说明的是,上述流程中DCacheX的读写都较慢,会影响游戏主线程的效率,因此流程中除了将解压后的数据赋值给玩家并将玩家踢下线是其他线程交给游戏主线程处理(因为玩家数据的读写需要主线程处理,否则需要对数据加锁);其他操作都是在其他线程处理。例如,DBAccess在2018年5月10日8时29分,将DCache中guid为12345678910的玩家数据存储到MySQL,检查DCacheX中key为12345678910_2018051008(key的格式为guid_time)的数据是否存在,如果不存在,则从数据库将玩家12345678910的数据取出以key为12345678910_2018051008存放在DCacheX中,然后将当前DCache中的数据以key为12345678910_2018051009存在DCacheX中。在需要将玩家数据回档时,例如将guid为12345678910的玩家数据回档到2018年5月10日7时29分,则在DCacheX中遍历时间在2018年5月10日7时29分附近是否有数据。先往前遍历k次,依次遍历key为2345678910_2018051007、2345678910_2018051006等等,然后往后遍历k次,依次遍历key为2345678910_2018051008、2345678910_2018051009等等。2k次遍历中,只要有一次命中,则将该数据作为玩家回档到的数据。
图4是根据本发明优选实施例的一种可选的数据备份方法的流程图,如图4所示,该数据备份方法可以包括以下步骤:
步骤S402,在DBAccess中将DCache中数据存储备份到MySQL中;
步骤S404,判断当前一小时数据是否更新;
步骤S406,当前时刻前一小时有备份数据;
步骤S408,判断当前时刻前一周是否有备份数据;
步骤S410,当前时刻前一周有备份数据,则清除;
步骤S412,当前时刻前一小时无备份数据,则备份当前小时数据。
通过上述步骤,备份发生在DBAccess将DCache中数据存到MySQL时,如果当前时刻前一小时无备份数据,则备份前一小时数据,然后备份当前小时数据,再检查当前时刻前一周是否有备份数据,如果有则清除。
根据本发明实施例的另一个方面,提供了一种数据恢复方法的方法实施例。
可选地,在本实施例中,上述数据恢复方法可以应用于如图1所示的由终端102和服务器104、多个旁路服务器以及共享内存106、存储共享内存数据108、缓存110以及数据库112构成的硬件环境中。如图1所示,服务器游戏服务器102通过网络与服务器104,上述网络包括但不限于:广域网、城域网或局域网,终端104并不限定于PC、手机、平板电脑等。本发明实施例的数据恢复方法可以由服务器102来执行,也可以由终端104来执行,还可以是由服务器102和终端104共同执行。其中,终端104执行本发明实施例的数据恢复方法也可以是由安装在其上的客户端来执行。
图5是根据本发明实施例的一种可选的数据恢复方法的流程图,如图5所示,该数据恢复方法可以包括以下步骤:
步骤S502,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据。
步骤S504,在缓存中的第二存储区域存储有目标帐号在第四时间段上更新后的数据的情况下,将待恢复的数据存储到共享内存中的第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第二存储区域为缓存中为目标帐号分配的存储区域。
步骤S506,从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
通过上述步骤S502至步骤S506,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;待恢复的数据存储到共享内存中的第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第二存储区域为缓存中为目标帐号分配的存储区域将待恢复的数据存储在缓存中的第一存储区域,其中,第一存储区域中存储的待恢复的数据被设置为更新到目标应用的数据库中;从第一存储区域中加载目标帐号在第四时间段上更新后的数据,从而实现了提高数据回档效率的技术效果,进而解决了现有技术中无法针对目标用户数据回档的技术问题。
作为一种可选的实施例,在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;在查找到目标帐号在第五时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据,第一存储区域中存储的目标帐号在第五时间段上更新后的数据被设置为被更新到数据库中;从第一存储区域中加载目标帐号在第五时间段上更新后的数据。
作为一种可选的实施例,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据之后,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第五时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;在查找到目标帐号在第六时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第六时间段上更新后的数据,第一存储区域中存储的目标帐号在第六时间段上更新后的数据被设置为被更新到数据库中;从第一存储区域中加载目标帐号在第六时间段上更新后的数据。
作为一种可选的实施例,将待恢复的数据存储到第一存储区域包括:在目标帐号不在线的情况下,将待恢复的数据存储到第一存储区域。
作为一种可选的实施例,将待恢复的数据存储到第一存储区域包括:在目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域。
作为一种可选的实施例,获取目标帐号在当前时间段上的数据包括:通过目标应用的主线程来获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线包括:通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域包括:通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域包括:通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
图6是根据本发明优选实施例的一种可选的数据回档方法的流程图,如图6所示,该数据回档方法(相当于上述实施例中的数据恢复方法)可以包括以下步骤:
步骤S602,回档;
步骤S604,判断遍历指定时刻附近是否有备份数据;
步骤S606,当遍历指定时刻附近无备份数据,无法回档;
步骤S608,当遍历指定时刻附近有备份数据,判断玩家是否在线;
步骤S610,当玩家在线,备份数据写进DCache;
步骤S612,当玩家不在线,备份数据复制给玩家;
步骤S614,当备份数据复制给玩家,则将玩家踢下线。
通过上述步骤,回档时,遍历指定时刻附近是否有备份数据,如果无则无法回档;如果有,检查玩家是否在线,如果不在线,则将备份数据写进DCache,如果在线,则将备份数据复制给玩家,再将玩家踢下线。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储到一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例的另一个方面,还提供了一种用于实施上述数据备份方法的数据备份装置。图7是根据本发明实施例的一种可选的数据备份装置的示意图,如图7所示,该装置可以包括:
第一检测单元22,用于当目标应用中的目标帐号的数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,第一数据为目标帐号在第一时间段上更新后的数据。
第一存储单元24,用于将第一存储区域中存储的数据被设置为存储到目标应用的数据库中。
第二存储单元26,用于将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。
需要说明的是,该实施例中的第一检测单元22可以用于执行本发明实施例中的步骤S202,该实施例中的第一存储单元24可以用于执行本发明实施例中的步骤S204,该实施例中的第二存储单元26可以用于执行本发明实施例中的步骤S206。上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述由服务器102和终端104所构成的硬件环境中所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。
作为一种可选的实施例,如图8所示,该实施例的装置还包括:第二检测单元28,用于在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之前,检测第二存储区域中是否存储有目标帐号在第二时间段上更新后的数据,其中,第二时间段为与第一时间段相邻的上一个时间段;第三存储单元210,用于在第二存储区域中未存储有目标帐号在第二时间段上更新后的数据的情况下,将数据库中存储的目标帐号在第二时间段上更新后的数据存储到第二存储区域中。
作为一种可选的实施例,如图9所示,第二检测单元28可以包括:第一备份模块282,用于在第二存储区域中存储有目标帐号在第二时间段上更新后的数据的情况下,将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域。
作为一种可选的实施例,如图10所示,第三存储单元210可以包括:第一获取模块2102,用于获取数据库中存储的目标帐号在第三时间段上更新后的数据,其中,第三时间段是在第二时间段之前最晚出现目标帐号的数据更新的时间段;第一存储模块2104,用于将目标帐号在第三时间段上更新后的数据作为目标帐号在第二时间段上更新后的数据存储到第二存储区域。
作为一种可选的实施例,如图11所示,该实施例的装置还包括:第一获取单元212,用于在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之后,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;第一处理单元214,用于在第二存储区域存储有目标帐号在第四时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第一存储区域中存储的目标帐号在第四时间段上更新后的数据被设置为被更新到数据库中;第二加载单元216,用于从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
作为一种可选的实施例,该实施例的装置还包括:第一查找单元,用于在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;第二处理单元,用于在查找到目标帐号在第五时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据,第一存储区域中存储的目标帐号在第五时间段上更新后的数据被设置为被更新到数据库中;第三加载单元,用于从第一存储区域中加载目标帐号在第五时间段上更新后的数据。
作为一种可选的实施例,该实施例的装置还包括:第二查找单元,用于在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据之后,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第五时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;第三处理单元,用于将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第六时间段上更新后的数据,第一存储区域中存储的目标帐号在第六时间段上更新后的数据被设置为被更新到数据库中;第四加载单元,用于从第一存储区域中加载目标帐号在第六时间段上更新后的数据。
作为一种可选的实施例,上述第一存储单元、第二存储单元或者第三存储单元都可以包括:第二存储模块,用于在目标帐号不在线的情况下,将待恢复的数据存储到第一存储区域。
作为一种可选的实施例,上述第一存储单元、第二存储单元或者第三存储单元都还可以包括:第二获取模块,用于在目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;第三存储模块,用于将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;第二备份模块,用于将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域。
作为一种可选的实施例,第二获取模块可以包括:获取子模块,用于通过目标应用的主线程来获取目标帐号在当前时间段上的数据;第三存储模块包括:存储子模块,用于通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;第二备份模块包括:存储子模块,用于通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;第四存储单元包括:第四存储模块,用于通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
通过上述模块,可以解决了现有技术中无法针对目标用户数据进行快速存档的技术问题,达到了简化数据存档操作流程的目的,从而实现了提高数据存档效率且减小存档数据的容量的技术效果。
根据本发明实施例的另一个方面,还提供了一种用于实施上述数据恢复方法的数据恢复装置。图12是根据本发明实施例的一种可选的数据恢复装置的示意图,如图12所示,该装置可以包括:
第二获取单元32,用于获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据。
第四处理单元34,用于将待恢复的数据存储到共享内存中的第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第二存储区域为缓存中为目标帐号分配的存储区域将待恢复的数据存储在缓存中的第一存储区域,其中,第一存储区域中存储的待恢复的数据被设置为更新到目标应用的数据库中。
第一加载单元34,用于从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
作为一种可选的实施例,该实施例中的装置可以包括:第三查找单元,用于在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;第二处理单元,用于将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据,第一存储区域中存储的目标帐号在第五时间段上更新后的数据被设置为被更新到数据库中;第二加载单元,用于从第一存储区域中加载目标帐号在第五时间段上更新后的数据。
作为一种可选的实施例,该实施例中的装置还可以包括:第四查找单元,用于在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据之后,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第五时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;第六处理单元,用于在查找到目标帐号在第六时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第六时间段上更新后的数据,第一存储区域中存储的目标帐号在第六时间段上更新后的数据被设置为被更新到数据库中;第七加载单元,用于从第一存储区域中加载目标帐号在第六时间段上更新后的数据。
作为一种可选的实施例,该实施例中的可以包括:第二存储模块,用于在目标帐号不在线的情况下,将待恢复的数据存储到第一存储区域。
作为一种可选的实施例,该实施例中的还可以包括:第一获取模块,用于在目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;第三存储模块,用于将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;备份模块,用于将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;第三存储模块,用于将待恢复的数据存储到第一存储区域。
作为一种可选的实施例,该实施例中的第一获取模块可以包括:第一获取子模块,用于通过目标应用的主线程来获取目标帐号在当前时间段上的数据;第二存储模块包括:第一存储子模块,用于通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;备份模块包括:备份子模块,用于通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;第三存储模块包括:第二存储子模块,用于通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
作为一种可选的实施例,该实施例中的装置用于执行游戏应用。
根据本发明实施例的又一个方面,还提供了一种用于实施上述数据备份方法的电子装置,如图13所示,该电子装置包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
可选地,本领域普通技术人员可以理解,图14所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图14其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图14中所示更多或者更少的组件(如网络接口等),或者具有与图14所示不同的配置。
其中,存储器1402可用于存储软件程序以及模块,如本发明实施例中的文件传输方法和装置对应的程序指令/模块,处理器1404通过运行存储在存储器1402内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据备份方法。存储器1402可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1402可进一步包括相对于处理器1404远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置1406用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1406包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1406为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器1402用于存储应用程序。
处理器1404可以通过传输装置1406调用存储器1402存储的应用程序,以执行下述步骤:当目标应用中的目标帐号的数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,第一数据为目标帐号在第一时间段上更新后的数据;将第一存储区域中存储的第一数据存储到目标应用的数据库中;将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。
处理器1404还用于执行下述步骤:在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之前,检测第二存储区域中是否存储有目标帐号在第二时间段上更新后的数据,其中,第二时间段为与第一时间段相邻的上一个时间段;在第二存储区域中未存储有目标帐号在第二时间段上更新后的数据的情况下,将数据库中存储的目标帐号在第二时间段上更新后的数据存储到第二存储区域中。
处理器1404还用于执行下述步骤:将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域包括:在第二存储区域中存储有目标帐号在第二时间段上更新后的数据的情况下,将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域。
处理器1404还用于执行下述步骤:将数据库中存储的目标帐号在第二时间段上更新后的数据存储到第二存储区域中包括:获取数据库中存储的目标帐号在第三时间段上更新后的数据,其中,第三时间段是在第二时间段之前最晚出现目标帐号的数据更新的时间段;将目标帐号在第三时间段上更新后的数据作为目标帐号在第二时间段上更新后的数据存储到第二存储区域。
处理器1404还用于执行下述步骤:在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之后,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;存储有目标帐号在第四时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据;从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
处理器1404还用于执行下述步骤:在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;在查找到目标帐号在第五时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据;从第一存储区域中加载目标帐号在第五时间段上更新后的数据。
处理器1404还用于执行下述步骤:在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据之后,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第六时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;在查找到目标帐号在第六时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第六时间段上更新后的数据;从第一存储区域中加载目标帐号在第六时间段上更新后的数据。
处理器1404还用于执行下述步骤:将待恢复的数据存储到第一存储区域包括:在目标帐号不在线的情况下,将待恢复的数据存储到第一存储区域。
处理器1404还用于执行下述步骤:将待恢复的数据存储到第一存储区域包括:在目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域。
处理器1404还用于执行下述步骤:获取目标帐号在当前时间段上的数据包括:通过目标应用的主线程来获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线包括:通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域包括:通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域包括:通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
根据本发明实施例的又一个方面,还提供了一种用于实施上述数据恢复方法的电子装置,该电子装置包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;在缓存中的第二存储区域存储有目标帐号在第四时间段上更新后的数据的情况下,将待恢复的数据存储到共享内存中的第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第二存储区域为缓存中为目标帐号分配的存储区域将待恢复的数据存储在缓存中的第一存储区域;从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
处理器还用于执行下述步骤:在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;在查找到目标帐号在第五时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据;从第一存储区域中加载目标帐号在第五时间段上更新后的数据。
处理器还用于执行下述步骤:在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据之后,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第五时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;在查找到目标帐号在第六时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第六时间段上更新后的数据;从第一存储区域中加载目标帐号在第六时间段上更新后的数据。
处理器还用于执行下述步骤:在目标帐号不在线的情况下,将待恢复的数据存储到第一存储区域。
处理器还用于执行下述步骤:将待恢复的数据存储到第一存储区域包括:在目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域。
处理器还用于执行下述步骤:获取目标帐号在当前时间段上的数据包括:通过目标应用的主线程来获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线包括:通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域包括:通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域包括:通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述数据备份方法中任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,当目标应用中的目标帐号的数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,第一数据为目标帐号在第一时间段上更新后的数据;
S2,将第一存储区域中存储的第一数据存储到目标应用的数据库中;
S3,将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域,其中,第二存储区域中存储的目标帐号的数据被设置为在被请求恢复时被存储到第一存储区域,使得请求恢复的目标帐号的数据从第一存储区域被加载。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之前,检测第二存储区域中是否存储有目标帐号在第二时间段上更新后的数据,其中,第二时间段为与第一时间段相邻的上一个时间段;在第二存储区域中未存储有目标帐号在第二时间段上更新后的数据的情况下,将数据库中存储的目标帐号在第二时间段上更新后的数据存储到第二存储区域中。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域包括:在第二存储区域中存储有目标帐号在第二时间段上更新后的数据的情况下,将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:将数据库中存储的目标帐号在第二时间段上更新后的数据存储到第二存储区域中包括:获取数据库中存储的目标帐号在第三时间段上更新后的数据,其中,第三时间段是在第二时间段之前最晚出现目标帐号的数据更新的时间段;将目标帐号在第三时间段上更新后的数据作为目标帐号在第二时间段上更新后的数据存储到第二存储区域。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:在将第一存储区域中存储的第一数据备份到缓存中为目标帐号分配的第二存储区域之后,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;存储有目标帐号在第四时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据;从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;在查找到目标帐号在第五时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据;从第一存储区域中加载目标帐号在第五时间段上更新后的数据。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据之后,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第六时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;在查找到目标帐号在第六时间段上更新后的数据的情况下,将待恢复的数据将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第六时间段上更新后的数据;从第一存储区域中加载目标帐号在第六时间段上更新后的数据。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:将待恢复的数据存储到第一存储区域包括:在目标帐号不在线的情况下,将待恢复的数据存储到第一存储区域。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:将待恢复的数据存储到第一存储区域包括:在目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域。
可选地,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:获取目标帐号在当前时间段上的数据包括:通过目标应用的主线程来获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线包括:通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域包括:通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域包括:通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述数据恢复方法中任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取到恢复请求,其中,恢复请求用于请求在目标帐号登录目标应用时加载目标帐号在第四时间段上更新后的数据;
S2,在缓存中的第二存储区域存储有目标帐号在第四时间段上更新后的数据的情况下,将待恢复的数据存储到共享内存中的第一存储区域,其中,待恢复的数据为目标帐号在第四时间段上更新后的数据,第二存储区域为缓存中为目标帐号分配的存储区域;
S3,从第一存储区域中加载目标帐号在第四时间段上更新后的数据。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:在获取到恢复请求之后,在第二存储区域未存储有目标帐号在第四时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据,其中,第五时间段是在第四时间段之前最晚出现目标帐号的数据更新的时间段、且第五时间段与第四时间段之间相隔的时间段的个数小于等于N,N为自然数;在查找到目标帐号在第五时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第五时间段上更新后的数据;从第一存储区域中加载目标帐号在第五时间段上更新后的数据。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:在第二存储区域中查找是否存储有目标帐号在第五时间段上更新后的数据之后,在未查找到目标帐号在第五时间段上更新后的数据的情况下,在第二存储区域中查找是否存储有目标帐号在第六时间段上更新后的数据,其中,第五时间段是在第四时间段之后最早出现目标帐号的数据更新的时间段、且第六时间段与第四时间段之间相隔的时间段的个数小于等于M,M为自然数;在查找到目标帐号在第六时间段上更新后的数据的情况下,将待恢复的数据存储到第一存储区域,其中,待恢复的数据为目标帐号在第六时间段上更新后的数据;从第一存储区域中加载目标帐号在第六时间段上更新后的数据。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:目标帐号不在线的情况下,将待恢复的数据存储到第一存储区域。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:在目标帐号在线的情况下,获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:获取目标帐号在当前时间段上的数据包括:通过目标应用的主线程来获取目标帐号在当前时间段上的数据;将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线包括:通过目标应用的主线程来将目标帐号在当前时间段上的数据存储到第一存储区域,并控制目标帐号下线;将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域包括:通过目标应用的除主线程之外的第一线程来将第一存储区域中存储的目标帐号在当前时间段上的数据备份到第二存储区域;将待恢复的数据存储到第一存储区域包括:通过目标应用的除主线程之外的第二线程来将待恢复的数据存储到第一存储区域。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储到上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储到存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (18)
1.一种数据备份方法,其特征在于,包括:
当目标游戏应用中的目标帐号的帐号数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,所述第一数据为所述目标帐号在所述第一时间段上更新后的数据;
将所述第一存储区域中存储的所述第一数据存储到所述目标游戏应用的数据库中;
检测第二存储区域中是否存储有所述目标帐号在第二时间段上更新后的数据,其中,所述第二时间段为与所述第一时间段相邻的上一个时间段;
在所述第二存储区域中未存储有所述目标帐号在所述第二时间段上更新后的数据的情况下,将所述数据库中存储的所述目标帐号在所述第二时间段上更新后的数据存储到所述第二存储区域中;
将所述第一存储区域中存储的所述第一数据备份到缓存中为所述目标帐号分配的第二存储区域,其中,所述第二存储区域中存储有在目标周期内缓存的多份帐号数据,所述多份帐号数据中的每一份帐号数据与一个时间段对应,所述多份帐号数据包括与所述第一时间段对应的所述第一数据,所述目标周期中包括所述第一时间段,所述第二存储区域中存储的所述目标帐号的数据被设置为在被请求按照目标时间段进行恢复时被存储到所述第一存储区域,使得与所述目标时间段匹配的所述目标帐号的数据从所述第一存储区域被加载,所述目标周期中包括所述目标时间段。
2.根据权利要求1所述的方法,其特征在于,将所述第一存储区域中存储的所述第一数据备份到所述缓存中为所述目标帐号分配的第二存储区域包括:
在所述第二存储区域中存储有所述目标帐号在所述第二时间段上更新后的数据的情况下,将所述第一存储区域中存储的所述第一数据备份到所述缓存中为所述目标帐号分配的所述第二存储区域。
3.根据权利要求1所述的方法,其特征在于,将所述数据库中存储的所述目标帐号在所述第二时间段上更新后的数据存储到所述第二存储区域中包括:
获取所述数据库中存储的所述目标帐号在第三时间段上更新后的数据,其中,所述第三时间段是在所述第二时间段之前最晚出现所述目标帐号的数据更新的时间段;
将所述目标帐号在第三时间段上更新后的数据作为所述目标帐号在所述第二时间段上更新后的数据存储到所述第二存储区域。
4.根据权利要求1所述的方法,其特征在于,在将所述第一存储区域中存储的所述第一数据备份到所述缓存中为所述目标帐号分配的第二存储区域之后,所述方法还包括:
获取到恢复请求,其中,所述恢复请求用于请求在所述目标帐号登录所述目标游戏应用时加载所述目标帐号在第四时间段上更新后的数据;
在所述第二存储区域存储有所述目标帐号在所述第四时间段上更新后的数据的情况下,将待恢复的数据存储到所述第一存储区域,其中,所述待恢复的数据为所述目标帐号在所述第四时间段上更新后的数据;
从所述第一存储区域中加载所述目标帐号在所述第四时间段上更新后的数据。
5.根据权利要求4所述的方法,其特征在于,在所述获取到恢复请求之后,所述方法还包括:
在所述第二存储区域未存储有所述目标帐号在所述第四时间段上更新后的数据的情况下,在所述第二存储区域中查找是否存储有所述目标帐号在第五时间段上更新后的数据,其中,所述第五时间段是在所述第四时间段之前最晚出现所述目标帐号的数据更新的时间段、且所述第五时间段与所述第四时间段之间相隔的时间段的个数小于等于N,N为自然数;
在查找到所述目标帐号在所述第五时间段上更新后的数据的情况下,将待恢复的数据存储到所述第一存储区域,其中,所述待恢复的数据为所述目标帐号在所述第五时间段上更新后的数据;
从所述第一存储区域中加载所述目标帐号在所述第五时间段上更新后的数据。
6.根据权利要求5所述的方法,其特征在于,在所述第二存储区域中查找是否存储有所述目标帐号在第五时间段上更新后的数据之后,所述方法还包括:
在未查找到所述目标帐号在所述第五时间段上更新后的数据的情况下,在所述第二存储区域中查找是否存储有所述目标帐号在第六时间段上更新后的数据,其中,所述第六时间段是在所述第四时间段之后最早出现所述目标帐号的数据更新的时间段、且所述第六时间段与所述第四时间段之间相隔的时间段的个数小于等于M,M为自然数;
在查找到所述目标帐号在所述第六时间段上更新后的数据的情况下,将待恢复的数据存储到所述第一存储区域,其中,所述待恢复的数据为所述目标帐号在所述第六时间段上更新后的数据;
从所述第一存储区域中加载所述目标帐号在所述第六时间段上更新后的数据。
7.根据权利要求4至6中任一项所述的方法,其特征在于,所述将所述待恢复的数据存储到所述第一存储区域包括:
在所述目标帐号不在线的情况下,将所述待恢复的数据存储到所述第一存储区域。
8.根据权利要求4至6中任一项所述的方法,其特征在于,所述将所述待恢复的数据存储到所述第一存储区域包括:
在所述目标帐号在线的情况下,获取所述目标帐号在当前时间段上的数据;
将所述目标帐号在当前时间段上的数据存储到所述第一存储区域,并控制所述目标帐号下线;
将所述第一存储区域中存储的所述目标帐号在所述当前时间段上的数据备份到所述第二存储区域;
将所述待恢复的数据存储到所述第一存储区域。
9.根据权利要求8所述的方法,其特征在于,
所述获取所述目标帐号在当前时间段上的数据包括:通过所述目标游戏应用的主线程来获取所述目标帐号在当前时间段上的数据;
所述将所述目标帐号在当前时间段上的数据存储到所述第一存储区域,并控制所述目标帐号下线包括:通过所述目标游戏应用的主线程来将所述目标帐号在所述当前时间段上的数据存储到所述第一存储区域,并控制所述目标帐号下线;
所述将所述第一存储区域中存储的所述目标帐号在所述当前时间段上的数据备份到所述第二存储区域包括:通过所述目标游戏应用的除所述主线程之外的第一线程来将所述第一存储区域中存储的所述目标帐号在所述当前时间段上的数据备份到所述第二存储区域;
所述将所述待恢复的数据存储到所述第一存储区域包括:通过所述目标游戏应用的除所述主线程之外的第二线程来将所述待恢复的数据存储到所述第一存储区域。
10.一种数据恢复方法,其特征在于,包括:
获取到恢复请求,其中,所述恢复请求用于请求在目标帐号登录目标游戏应用时加载所述目标帐号在第四时间段上更新后的帐号数据;
在缓存中的第二存储区域存储有所述目标帐号在所述第四时间段上更新后的数据的情况下,将待恢复的数据存储到共享内存中的第一存储区域,其中,所述第二存储区域中存储有在目标周期内缓存的多份帐号数据,所述多份帐号数据中的每一份帐号数据与一个时间段对应,所述多份帐号数据包括与所述第四时间段对应的第四数据,所述目标周期中包括所述第四时间段,所述待恢复的数据为所述目标帐号在所述第四时间段上更新后的数据,所述第二存储区域为所述缓存中为所述目标帐号分配的存储区域;
从所述第一存储区域中加载所述目标帐号在所述第四时间段上更新后的数据;
在获取到所述恢复请求之前,所述方法还包括:检测第二存储区域中是否存储有所述目标帐号在第二时间段上更新后的数据,其中,所述第二时间段为与第一时间段相邻的上一个时间段;
在所述第二存储区域中未存储有所述目标帐号在所述第二时间段上更新后的数据的情况下,将数据库中存储的所述目标帐号在所述第二时间段上更新后的数据存储到所述第二存储区域中;
将所述第一存储区域中存储的第一数据备份到缓存中为所述目标帐号分配的第二存储区域,其中,所述第一数据为所述目标帐号在所述第一时间段上更新后的数据。
11.根据权利要求10所述的方法,其特征在于,在所述获取到恢复请求之后,所述方法还包括:
在所述第二存储区域未存储有所述目标帐号在所述第四时间段上更新后的数据的情况下,在所述第二存储区域中查找是否存储有所述目标帐号在第五时间段上更新后的数据,其中,所述第五时间段是在所述第四时间段之前最晚出现所述目标帐号的数据更新的时间段、且所述第五时间段与所述第四时间段之间相隔的时间段的个数小于等于N,N为自然数;
在查找到所述目标帐号在所述第五时间段上更新后的数据的情况下,将待恢复的数据存储到所述第一存储区域,其中,所述待恢复的数据为所述目标帐号在所述第五时间段上更新后的数据;
从所述第一存储区域中加载所述目标帐号在所述第五时间段上更新后的数据。
12.根据权利要求11所述的方法,其特征在于,在所述第二存储区域中查找是否存储有所述目标帐号在第五时间段上更新后的数据之后,所述方法还包括:
在未查找到所述目标帐号在所述第五时间段上更新后的数据的情况下,在所述第二存储区域中查找是否存储有所述目标帐号在第六时间段上更新后的数据,其中,所述第五时间段是在所述第四时间段之后最早出现所述目标帐号的数据更新的时间段、且所述第六时间段与所述第四时间段之间相隔的时间段的个数小于等于M,M为自然数;
在查找到所述目标帐号在所述第六时间段上更新后的数据的情况下,将待恢复的数据存储到所述第一存储区域,其中,所述待恢复的数据为所述目标帐号在所述第六时间段上更新后的数据;
从所述第一存储区域中加载所述目标帐号在所述第六时间段上更新后的数据。
13.根据权利要求11或12所述的方法,其特征在于,所述将待恢复的数据存储到所述第一存储区域包括:
在所述目标帐号不在线的情况下,将所述待恢复的数据存储到所述第一存储区域。
14.根据权利要求13所述的方法,其特征在于,所述将所述待恢复的数据存储到所述第一存储区域包括:
在所述目标帐号在线的情况下,获取所述目标帐号在当前时间段上的数据;
将所述目标帐号在当前时间段上的数据存储到所述第一存储区域,并控制所述目标帐号下线;
将所述第一存储区域中存储的所述目标帐号在所述当前时间段上的数据备份到所述第二存储区域;
将所述待恢复的数据存储到所述第一存储区域。
15.根据权利要求14所述的方法,其特征在于,包括
所述获取所述目标帐号在当前时间段上的数据包括:通过所述目标游戏应用的主线程来获取所述目标帐号在当前时间段上的数据;
所述将所述目标帐号在当前时间段上的数据存储到所述第一存储区域,并控制所述目标帐号下线包括:通过所述目标游戏应用的主线程来将所述目标帐号在所述当前时间段上的数据存储到所述第一存储区域,并控制所述目标帐号下线;
所述将所述第一存储区域中存储的所述目标帐号在所述当前时间段上的数据备份到所述第二存储区域包括:通过所述目标游戏应用的除所述主线程之外的第一线程来将所述第一存储区域中存储的所述目标帐号在所述当前时间段上的数据备份到所述第二存储区域;
所述将所述待恢复的数据存储到所述第一存储区域包括:通过所述目标游戏应用的除所述主线程之外的第二线程来将所述待恢复的数据存储到所述第一存储区域。
16.一种数据备份装置,其特征在于,包括:
第一检测单元,用于当到目标游戏应用中的目标帐号的帐号数据在第一时间段上出现更新时,将第一数据存储到共享内存中的第一存储区域,其中,所述第一数据为所述目标帐号在所述第一时间段上更新后的数据;
第一存储单元,用于将所述第一存储区域中存储的数据被设置为存储到所述目标游戏应用的数据库中;
第二存储单元,用于将所述第一存储区域中存储的所述第一数据备份到缓存中为所述目标帐号分配的第二存储区域,其中,所述第二存储区域中存储有在目标周期内缓存的多份帐号数据,所述多份帐号数据中的每一份帐号数据与一个时间段对应,所述多份帐号数据包括与所述第一时间段对应的所述第一数据,所述目标周期中包括所述第一时间段,所述第二存储区域中存储的所述目标帐号的数据被设置为在被请求按照目标时间段恢复时被存储到所述第一存储区域,使得与所述目标时间段匹配的所述目标帐号的数据从所述第一存储区域被加载,所述目标周期中包括所述目标时间段;
所述数据备份装置还包括第二检测单元,用于在将所述第一存储区域中存储的所述第一数据备份到所述缓存中为所述目标帐号分配的第二存储区域之前,检测所述第二存储区域中是否存储有所述目标帐号在第二时间段上更新后的数据,其中,所述第二时间段为与所述第一时间段相邻的上一个时间段;
第三存储单元,用于在所述第二存储区域中未存储有所述目标帐号在所述第二时间段上更新后的数据的情况下,将所述数据库中存储的所述目标帐号在所述第二时间段上更新后的数据存储到所述第二存储区域中。
17.一种数据恢复装置,其特征在于,包括:
获取单元,用于获取到恢复请求,其中,所述恢复请求用于请求在目标帐号登录目标游戏应用时加载所述目标帐号在第四时间段上更新后的帐号数据;
第一处理单元,用于在缓存中的第二存储区域存储有所述目标帐号在所述第四时间段上更新后的数据的情况下,将待恢复的数据存储到共享内存中的第一存储区域,其中,所述第二存储区域中存储有在目标周期内缓存的多份帐号数据,所述多份帐号数据中的每一份帐号数据与一个时间段对应,所述多份帐号数据包括与所述第四时间段对应的第四数据,所述目标周期中包括所述第四时间段,所述待恢复的数据为所述目标帐号在所述第四时间段上更新后的数据,所述第二存储区域为所述缓存中为所述目标帐号分配的存储区域;
第一加载单元,用于从所述第一存储区域中加载所述目标帐号在所述第四时间段上更新后的数据;
在获取到所述恢复请求之前,检测所述第二存储区域中是否存储有所述目标帐号在第二时间段上更新后的数据,其中,所述第二时间段为与第一时间段相邻的上一个时间段;
在所述第二存储区域中未存储有所述目标帐号在所述第二时间段上更新后的数据的情况下,将数据库中存储的所述目标帐号在所述第二时间段上更新后的数据存储到所述第二存储区域中;
将所述第一存储区域中存储的第一数据备份到缓存中为所述目标帐号分配的第二存储区域,其中,所述第一数据为所述目标帐号在所述第一时间段上更新后的数据。
18.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至15任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811377156.6A CN109697140B (zh) | 2018-11-19 | 2018-11-19 | 数据备份方法及装置、数据恢复方法及装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811377156.6A CN109697140B (zh) | 2018-11-19 | 2018-11-19 | 数据备份方法及装置、数据恢复方法及装置、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109697140A CN109697140A (zh) | 2019-04-30 |
CN109697140B true CN109697140B (zh) | 2023-08-25 |
Family
ID=66229870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811377156.6A Active CN109697140B (zh) | 2018-11-19 | 2018-11-19 | 数据备份方法及装置、数据恢复方法及装置、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109697140B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111346372A (zh) * | 2020-03-08 | 2020-06-30 | 北京智明星通科技股份有限公司 | 一种基于数据备份的游戏登录加载方法、装置及服务器 |
CN113094379B (zh) * | 2021-03-23 | 2023-08-01 | 杭州电魂网络科技股份有限公司 | 锚定式用户数据维护方法、装置、设备及介质 |
CN114048502B (zh) * | 2021-10-15 | 2023-08-15 | 中国科学院信息工程研究所 | 一种轻量级可信通道及其通信控制方法 |
CN113778723B (zh) * | 2021-11-11 | 2022-02-22 | 中汽数据(天津)有限公司 | 数据回放方法、电子设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105099793A (zh) * | 2015-09-24 | 2015-11-25 | 华为技术有限公司 | 热备方法、装置及系统 |
CN106156038A (zh) * | 2015-03-26 | 2016-11-23 | 腾讯科技(深圳)有限公司 | 数据存储方法和装置 |
CN106844102A (zh) * | 2017-01-16 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 数据恢复方法和装置 |
WO2018076872A1 (zh) * | 2016-10-25 | 2018-05-03 | 广东欧珀移动通信有限公司 | 数据备份方法、装置、存储介质及服务器 |
CN108452526A (zh) * | 2017-11-28 | 2018-08-28 | 腾讯科技(上海)有限公司 | 游戏故障原因的查询方法和装置、存储介质、电子装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9501368B2 (en) * | 2008-09-30 | 2016-11-22 | Veritas Technologies Llc | Backing up and restoring selected versioned objects from a monolithic database backup |
US20110231452A1 (en) * | 2010-03-19 | 2011-09-22 | Hitachi, Ltd. | Storage system and resource management method for storage system |
US9104630B1 (en) * | 2012-10-24 | 2015-08-11 | Google Inc. | Online account reset, rollback, and backup |
US9569515B2 (en) * | 2014-11-13 | 2017-02-14 | Dropbox, Inc. | Facilitating distributed deletes in a replicated storage system |
CN106021027B (zh) * | 2016-05-24 | 2019-02-05 | Oppo广东移动通信有限公司 | 终端数据处理方法和系统 |
CN106095615A (zh) * | 2016-06-01 | 2016-11-09 | 乐视控股(北京)有限公司 | 应用数据还原方法及装置 |
US10712951B2 (en) * | 2016-09-06 | 2020-07-14 | Acronis International Gmbh | System and method for backing up social network data |
CN108228383B (zh) * | 2016-12-15 | 2021-01-15 | 中国移动通信有限公司研究院 | 一种多用户系统的数据处理方法及装置 |
-
2018
- 2018-11-19 CN CN201811377156.6A patent/CN109697140B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156038A (zh) * | 2015-03-26 | 2016-11-23 | 腾讯科技(深圳)有限公司 | 数据存储方法和装置 |
CN105099793A (zh) * | 2015-09-24 | 2015-11-25 | 华为技术有限公司 | 热备方法、装置及系统 |
WO2018076872A1 (zh) * | 2016-10-25 | 2018-05-03 | 广东欧珀移动通信有限公司 | 数据备份方法、装置、存储介质及服务器 |
CN106844102A (zh) * | 2017-01-16 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 数据恢复方法和装置 |
CN108452526A (zh) * | 2017-11-28 | 2018-08-28 | 腾讯科技(上海)有限公司 | 游戏故障原因的查询方法和装置、存储介质、电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109697140A (zh) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109697140B (zh) | 数据备份方法及装置、数据恢复方法及装置、存储介质 | |
JP6553822B2 (ja) | 分散システムにおける範囲の分割および移動 | |
CN102387169B (zh) | 分布式缓存的对象删除方法、系统及删除服务器 | |
CN111176549B (zh) | 基于云存储的数据存储方法、装置和存储介质 | |
US20130080397A1 (en) | Database restore using incremental backups in reverse order | |
US10489289B1 (en) | Physical media aware spacially coupled journaling and trim | |
CN105843551A (zh) | 高性能和大容量储存重复删除中的数据完整性和损耗电阻 | |
CN105630632A (zh) | 一种虚拟机恢复的方法及虚拟机管理设备 | |
CN112182010B (zh) | 脏页刷新方法和装置、存储介质和电子设备 | |
CN105095025A (zh) | 恢复ext文件系统中已删除文件的方法及装置 | |
CN110209341B (zh) | 一种数据写入方法、装置和存储设备 | |
CN110019063B (zh) | 计算节点数据容灾回放的方法、终端设备及存储介质 | |
EP3449372B1 (en) | Fault-tolerant enterprise object storage system for small objects | |
CN110352410A (zh) | 跟踪索引节点的访问模式以及预提取索引节点 | |
CN113407376A (zh) | 一种数据恢复方法、装置及电子设备 | |
US11514002B2 (en) | Indexing splitter for any pit replication | |
CN115202929B (zh) | 数据库集群备份系统 | |
CN103902230A (zh) | 一种数据处理方法、设备和系统 | |
CN110716923B (zh) | 数据处理方法、装置、节点设备及存储介质 | |
US20140297594A1 (en) | Restarting a Batch Process From an Execution Point | |
CN113485642A (zh) | 数据缓存方法及装置 | |
CN115617580B (zh) | 基于共享sst文件的增量备份、恢复方法和系统 | |
CN111625500A (zh) | 文件快照方法及装置、电子设备和存储介质 | |
CN112434001B (zh) | 支持数据预处理的多数据源可配置MongoDB数据同步系统、电子设备及介质 | |
CN113836214A (zh) | 应用于etl的数据加载、读取方法和装置及电子设备 |
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 |