CN113868027B - 数据快照方法及装置 - Google Patents

数据快照方法及装置 Download PDF

Info

Publication number
CN113868027B
CN113868027B CN202111447801.9A CN202111447801A CN113868027B CN 113868027 B CN113868027 B CN 113868027B CN 202111447801 A CN202111447801 A CN 202111447801A CN 113868027 B CN113868027 B CN 113868027B
Authority
CN
China
Prior art keywords
time
snapshot
target system
nodes
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.)
Active
Application number
CN202111447801.9A
Other languages
English (en)
Other versions
CN113868027A (zh
Inventor
汪峰
黄岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yunhe Enmo Beijing Information Technology Co ltd
Original Assignee
Yunhe Enmo Beijing Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yunhe Enmo Beijing Information Technology Co ltd filed Critical Yunhe Enmo Beijing Information Technology Co ltd
Priority to CN202111447801.9A priority Critical patent/CN113868027B/zh
Publication of CN113868027A publication Critical patent/CN113868027A/zh
Application granted granted Critical
Publication of CN113868027B publication Critical patent/CN113868027B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore

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

数据快照方法及装置
技术领域
本发明涉及数据快照领域,具体而言,涉及一种数据快照方法及装置。
背景技术
快照是存储***在某一时刻数据的映像。快照的作用主要是能够进行在线数据备份与恢复。当存储设备发生应用故障或者文件损坏时可以进行快速进行数据恢复,将数据恢复某个可用的时间点的状态。快照的另一个作用是为存储用户提供了另外一个数据访问通道,当原数据进行在线应用处理时,用户可以访问快照数据,还可以利用快照进行测试等工作。所有存储***,不论高中低端,只要应用于在线***,那么快照就成为一个不可或缺的功能。而对于快照,经常会遇到一个问题就是快照的数据是不是完整的,会不会出现快照回滚后数据丢失。其实这也就是快照数据一致性问题。
快照数据一致性主要分为崩溃一致性和应用一致性。崩溃一致性是指在创建快照时,文件***的缓存数据没有存储进快照,导致快照的数据和当前时间点的数据不一致。在使用快照进行回滚时数据不一致会导致数据丢失。这一点同***突然断电类似,***断电时,内存中的数据没有及时的写入到持久化存储介质中,造成存储***数据不一致。比如说当前的文件***中,在将真正的数据写入操作发生前,通常需要先对文件的元数据进行写入,如数据写入到磁盘的哪个位置等。当写入一块数据时,***从磁盘中为写入数据分配存储空间,并修改磁盘的元数据以记录哪些空间被使用了,同时修改文件的元数据以记录文件数据的位置。这两个IO操作的顺序无关紧要,但是必须作为一个原子操作来执行。如果磁盘空间被分配,但是没有记录到文件的元数据中,此时断电会导致被分配的磁盘空间无法使用,磁盘空间被浪费,实际写入数据时,又需要重新申请空间。同理,如果在文件的元数据中记录了所分配的位置,但是没有修改磁盘元数据,那么当其他文件需要分配空间时,会将已分配的磁盘空间再次的分配出去,导致数据丢失。这就是崩溃导致的数据非一致性。
与崩溃一致性不同,应用一致性是在进行底层快照时,先让数据库或应用文件处于不改变的状态,比如对于数据库这个应用,在关闭状态下的数据肯定是应用一致性的,因为不会开启新的事务。如果业务上允许数据库长时间关闭,直接对这些数据库文件进行快照就是一种应用一致性快照;如果业务只允许短时间关库,对这些数据文件快照后立即打开库,也是应用一致性快照。
图1是现有技术中的根据快照日志恢复数据的示意图,如图1所示,文件***解决崩溃一致性的方法是使用日志记录每一步,并且先将数据写入到日志中,提交后再将数据真正写入到持久化介质。当发生崩溃时,可以通过日志中记录的内容来对文件进行恢复,对于已经提交但是还没有来得及写入硬盘中的数据进行redo操作,重新写入;对于执行到一半的事务进行undo操作。
快照同文件***有所不同的地方在于,文件***崩溃后,不会有新的IO产生,但是在创建快照时仍然会有新的数据要写入。其中一种解决办法是暂停***上的IO操作(主要是写操作,读不会导致快照卷的数据不一致),快照创建完成后,查看日志所记录的操作序列恢复IO。
在分布式环境中,由多个节点共同组成存储***,创建快照不仅仅是对单个存储节点的操作,而是需要通知所有存储节点进行IO挂起操作。现有的技术方案是由调度中心向存储节点发出挂起IO命令,各个节点完成挂起IO操作后,通知调度中心可以开始创建快照,快照创建完成之后存储节点再恢复IO操作。
现有分布式存储***,在调度中心通知各节点创建快照时,需要等待节点的IO挂起成功,当所有节点都挂起成功时,***才会开始下一步创建快照的操作,这种做法会导致存储节点挂起IO的时间过长。在挂起IO时节点对外提供的服务也因此而暂停,因此这个周期不应该过长,过长的IO挂起会降低用户对节点所提供服务的体验。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据快照方法及装置,以至少解决相关技术中在分布式***中进行***快照时,需要将节点的输入输出端口全部挂起,导致时延长,快照效率低的技术问题。
根据本发明实施例的一个方面,提供了一种数据快照方法,包括:接收对目标***进行数据快照的快照指令,其中,所述快照指令包括快照的快照时间;控制所述目标***的多个节点在所述快照时间之前将输入输出端口关闭,其中,所述目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照。
可选的,接收对目标***进行数据快照的快照指令包括;接收***管理器在所述快照时间之前的预设时间发送的快照指令,其中,所述预设时间为所述***管理器根据快照的快照时间确定的。
可选的,控制所述目标***的多个节点在所述快照时间之前将输入输出端口关闭包括:控制所述目标***的多个节点在关闭时间关闭对应的输入输出端口,其中,所述快照指令还包括所述目标***的节点关闭对应输入输出端口的关闭时间,所述关闭时间早于所述快照时间,晚于所述预设时间;将所述目标***中需写入硬盘的数据继续写入所述硬盘,直至所述需写入硬盘的数据写入完成。
可选的,控制所述目标***的多个节点在所述关闭时间关闭对应的输入输出端口之前,所述方法还包括:通过同一个时间同步设备,对多个节点的时间进行同步,其中,所述时间同步设备包括时间服务器,网络时间服务,网络时间协议;检测同步后的多个节点的时间误差,在所述时间误差小于预设误差阈值的情况下,确定所述多个节点的时间同步完成。
可选的,通过同一个时间同步设备,对多个节点的时间进行同步包括:控制节点调用对应的网络时间服务,向所述时间服务器发送报文,其中,每个节点上都配置有对应的网络时间服务,所述报文包括所述节点自身的第一时间戳;接收所述时间服务器对所述报文进行处理后的返回报文,并标记接收到所述返回报文的第四时间戳,其中,所述返回报文中包括所述时间服务器接收到所述报文时标记的第二时间戳,以及对所述报文处理后添加的用于标记返回报文发送时间的第三时间戳;根据所述第一时间戳,所述第二时间戳,所述第三时间戳和所述第四时间戳,对所述节点的时间与所述时间服务器的时间进行同步。
可选的,在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照之后,所述方法包括:根据所述快照时间确定所述目标***开启节点输入输出端口的重启时间,其中,所述重启时间在所述快照时间之后;在所述重启时间开启所述目标***多个节点的输入输出端口。
可选的,所述时间同步设备为授时***,所述授时***包括下列至少之一:原子时***,协调世界时***,短波授时***,长波授时***,低频时码授时***,北斗授时***,网络手势,电视授时,广播授时。
根据本发明实施例的另一方面,还提供了一种数据快照装置,包括:接收模块,用于接收对目标***进行数据快照的快照指令,其中,所述快照指令包括快照的快照时间;关闭模块,用于控制所述目标***的多个节点在所述快照时间之前将输入输出端口关闭,其中,所述目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;快照模块,用于在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照。
根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的数据快照方法。
根据本发明实施例的另一方面,还提供了一种计算机存储介质,所述计算机存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机存储介质所在设备执行上述中任意一项所述的数据快照方法。
在本发明实施例中,采用接收对目标***进行数据快照的快照指令,其中,快照指令包括快照的快照时间;控制目标***的多个节点在快照时间之前将输入输出端口关闭,其中,目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;在目标***上数据处于快照时间的一致性状态的情况下,响应快照指令对目标***进行数据快照的方式,采用同一时间同步设备使得多个不同的节点同时关闭输入输出端口,然后进行快照,达到了准确高效的实现***快照的目的,从而实现了提高了***快照的效率和准确率的技术效果,进而解决了相关技术中在分布式***中进行***快照时,需要将节点的输入输出端口全部挂起,导致时延长,快照效率低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是现有技术中的根据快照日志恢复数据的示意图;
图2是根据本发明实施例的一种数据快照方法的流程图;
图3是根据本发明实施方式的整体架构的示意图;
图4是根据本发明实施方式的快照创建流程的示意图;
图5是根据本发明实施例的一种数据快照装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种数据快照方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2是根据本发明实施例的一种数据快照方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,接收对目标***进行数据快照的快照指令,其中,快照指令包括快照的快照时间;
步骤S204,控制目标***的多个节点在快照时间之前将输入输出端口关闭,其中,目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;
步骤S206,在目标***上数据处于快照时间的一致性状态的情况下,响应快照指令对目标***进行数据快照。
通过上述步骤,采用接收对目标***进行数据快照的快照指令,其中,快照指令包括快照的快照时间;控制目标***的多个节点在快照时间之前将输入输出端口关闭,其中,目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;在目标***上数据处于快照时间的一致性状态的情况下,响应快照指令对目标***进行数据快照的方式,采用同一时间同步设备使得多个不同的节点同时关闭输入输出端口,然后进行快照,达到了准确高效的实现***快照的目的,从而实现了提高了***快照的效率和准确率的技术效果,进而解决了相关技术中在分布式***中进行***快照时,需要将节点的输入输出端口全部挂起,导致时延长,快照效率低的技术问题。
上述步骤的执行主体可以为控制器,处理器,或者其他具有数据运算处理能力的设备,例如存储设备等。通过上述步骤,来对目标***进行数据快照。上述目标***可以为存储数据或处理数据的数据***,例如,分布式***,分部式***包括多个用于存储或者处理数据的节点。在现有技术中,在对分布式***进行快照时,需要由调度中心向存储节点发出挂起输入输出端口IO命令,各个节点完成挂起IO操作后,通知调度中心可以开始创建快照,快照创建完成之后存储节点再恢复IO操作,这种做法会导致存储节点挂起IO的时间过长,无法提供服务导致快照效率低。
本申请实施例通过上述步骤,存储***在创建快照时通过关闭节点上的输入输出端口IO来暂停节点的输入输出操作,从而保持快照数据的一致性,节点接收到快照指令时,暂停本机上的IO操作,将缓冲区的内容写入到存储磁盘中,然后通知调度中心挂起IO操作完成。由于不同的节点之间所需要的时间不同,返回给调度中心的开始快照时间也不同,因此,调度中心需要等到所有的节点都返回成功后才能开始创建。本发明主要解决了这一问题,提高了现有的分布式存储***创建快照的效率。
上述快照指令可以由***的任务自动触发,例如,定时快照任务。上述快照指令,包括了本次进行快照的快照时间。考虑到***需要在进行快照的快照时间之前进行快照,接收上述快照指令的时间,早于上述快照时间,也即是上述***任务在触发快照指令时,需要在快照时间之前就对快照指令进行发送,从而保证***根据其快照指令的快照时间进行快照准备。
具体的,在接收到快照指令后,根据快照时间控制控制目标***的多个节点在快照时间之前将输入输出端口关闭。并且根据统一时间同步设备对多个节点的式中进行同步,保证多个节点的时钟一致,从而保证多个节点在快照时间之前同时完成对输入输出端口的关闭,暂停节点的输入输出操作。进而保证在到达快照时间时,可以对***进行有效准确的快照。
上述一致性状态可以理解为目标***的数据都是符合***中数据的定义,也即是***的数据处于正常状态,包括正在写入的数据已经写入,正在迁移的数据完成迁移,正在删除的数据完成删除等。***的数据处于一致性状态时,才能保证快照数据的准确性。
上述对***进行快炸的方式可以为现有技术中的快照方式,对***进行快照。
可选的,接收对目标***进行数据快照的快照指令包括;接收***管理器在快照时间之前的预设时间发送的快照指令,其中,预设时间为***管理器根据快照的快照时间确定的。
上述预设时间在快照时间之前,上述预设时间与快照时间之间的时间间隔不超过两次相邻快照的快照时间之间的时间间隔,通常预设时间与快照时间的时间间隔小于两次相邻快照的快照时间之间的时间间隔的一半,同时也要保证预设时间与快找时间的时间间隔能够使***完成同时关闭多个节点的输入输出端口的操作。从而保证***能够在足够的时间完成对快照的准备,从而提高快照的效率。
可选的,控制目标***的多个节点在快照时间之前将输入输出端口关闭包括:控制目标***的多个节点在关闭时间关闭对应的输入输出端口,其中,快照指令还包括目标***的节点关闭对应输入输出端口的关闭时间,关闭时间早于快照时间,晚于预设时间;将目标***中需写入硬盘的数据继续写入硬盘,直至需写入硬盘的数据写入完成。
在一种实施例中,快照指令还可以包括关闭多个节点的输入输出端口的关闭时间,根据该关闭时间,以及同一个时间同步设备,就可以在关闭时间对多个节点进行同时关闭。该关闭时间晚于发送快照指令的预设时间,早于快照时间。在另一些实施例中,发送快照指令的预设时间也可以根据关闭多个节点的输入输出端口的关闭时间来确定。可以保证发送快照指令和关闭多个节点的输入输出端口,以及进行快照三个动作可以按照严格的先后顺序执行,保证了快照的准确性。
可选的,控制目标***的多个节点在关闭时间关闭对应的输入输出端口之前,方法还包括:通过同一个时间同步设备,对多个节点的时间进行同步,其中,时间同步设备包括时间服务器,网络时间服务,网络时间协议;检测同步后的多个节点的时间误差,在时间误差小于预设误差阈值的情况下,确定多个节点的时间同步完成。
上述时间同步设备可以为时间服务器,例如NTP时间服务器,可以通过在各个节点上配置NTP网络时间服务,同时使用一台NTP时间服务器,使用NTP网络时间协议将不同节点的时间统一起来,对各个存储节点的时间进行同步。降低存储节点间时间的误差。保证各存储节点是在同一时间挂起IO,创建快照。
可选的,通过同一个时间同步设备,对多个节点的时间进行同步包括:控制节点调用对应的网络时间服务,向时间服务器发送报文,其中,每个节点上都配置有对应的网络时间服务,报文包括节点自身的第一时间戳;接收时间服务器对报文进行处理后的返回报文,并标记接收到返回报文的第四时间戳,其中,返回报文中包括时间服务器接收到报文时标记的第二时间戳,以及对报文处理后添加的用于标记返回报文发送时间的第三时间戳;根据第一时间戳,第二时间戳,第三时间戳和第四时间戳,对节点的时间与时间服务器的时间进行同步。
具体的,节点通过向时间服务器发送报文,该报文中携带自己的第一时间戳,时间服务器接收到之后,添加接收到的第二时间戳,经过一番处理再添加返回的第三时间戳,将报文返回,客户端接收到之后再记录接受返回的第四时间戳,通过这四个时间戳的值就可以将自己的时间同步到与服务器相同,并且将误差可以控制在1ms内。各节点挂起IO的时间应超过NTP协议的误差,这样可以保证各存储节点是在同一时间挂起IO,创建快照。
可选的,在目标***上数据处于快照时间的一致性状态的情况下,响应快照指令对目标***进行数据快照之后,方法包括:根据快照时间确定目标***开启节点输入输出端口的重启时间,其中,重启时间在快照时间之后;在重启时间开启目标***多个节点的输入输出端口。
在完成快照后,在重启时统一开启多个节点的输入输出端口,以重启个节点的输入输出操作。
可选的,时间同步设备为授时***,授时***包括下列至少之一:原子时***,协调世界时***,短波授时***,长波授时***,低频时码授时***,北斗授时***,网络手势,电视授时,广播授时。
需要说明的是,本申请实施例还提供了一种可选的实施方式,下面对该实施方式进行详细说明。
本实施方式为解决现有的分布式存储在创建快照时为了维护数据一致性,而降低了***效率的问题,提出了一种保证快照一致性的方法。存储***在创建快照时通过暂停节点上的IO操作来保持快照数据的一致性,节点接收到快照指令时,暂停本机上的IO操作,将缓冲区的内容写入到存储磁盘中,然后通知调度中心挂起IO操作完成。由于不同的节点之间所需要的时间不同,返回给调度中心的开始快照时间也不同,因此,调度中心需要等到所有的节点都返回成功后才能开始创建。本实施方式主要解决了这一问题,提高了现有的分布式存储***创建快照的效率。
本实施方式的技术方案的要点如下:
提前通知节点挂起IO;
暂停节点上的IO操作来保证快照的一致性;
使用时间同步协议或者其他手段对各存储节点的时间进行统一;
通过调节挂起IO的时间减少误差,以达到提高节点性能,提升快照效率的目的。
图3是根据本发明实施方式的整体架构的示意图,如图3所示,调度中心提前向个节点发出将在某个时间点创建快照命令,收到命令后,各个节点会统一在达到约定的时间点之前进入挂起IO状态,暂停数据写入操作,并且将存储***应该写入硬盘的数据尽快写入硬盘,在存储***上数据处于一致性状态时,停止所有新的数据写入。在一定的时间过后,存储***开始继续工作。
分布式***与集中式***的不同点在于多节点之间不是依靠同一套硬件来维持时间,不同的硬件由于温度不同,老旧程度等等会导致节点的时间不统一。比如通知十点创建快照,节点A到十点的时候,节点B可能还差一些,通常来说差距不会太大,但是在一些要求较高的***中,这个误差会导致快照数据的不一致,有些记录的是快照时刻数据,有些则被新数据所覆盖。
一种解决方法是使用NTP协议将不同节点的时间统一起来,降低存储节点间时间的误差。我们可以在各个节点上配置NTP服务,同时使用一台NTP时间服务器,对各个存储节点的时间进行同步。存储节点通过向服务器发送报文,该报文中携带自己的时间戳,服务器接收到之后,添加接受到的时间戳,经过一番处理再添加返回时间戳,将报文返回,客户端接收到之后再记录接受返回的时间戳,通过这四个时间戳的值就可以将自己的时间同步到与服务器相同,并且将误差可以控制在1ms内。各节点挂起IO的时间应超过NTP协议的误差,这样可以保证各存储节点是在同一时间挂起IO,创建快照。
另外一种方法是自己实现类似NTP的协议,也可以使用更高精度的授时***,例如:铯原子钟。或者用GPS或者北斗的授时***。
总之,这些授时***需要输出两个结果:一个相对准确的时间、一个时间的误差范围。
图4是根据本发明实施方式的快照创建流程的示意图,如图4所示,首先由调度中心manager向所有的存储节点FrontEnd发出准时创建快照的命令,到达约定的时间点之后,所有的存储节点FrontEnd统一挂起IO,设置完挂起IO的状态之后返回给manager消息, 可以创建快照, 否则取消这次创建快照。创建快照时向元数据服务器MDS中写入快照的信息,比如版本号等,然后根据日志记录的内容进行undo或者redo操作以确保快照的崩溃一致性。
图5是根据本发明实施例的一种数据快照装置的示意图,如图5所示,根据本发明实施例的另一方面,还提供了一种数据快照装置,包括:接收模块52,关闭模块54和快照模块56,下面对该装置进行详细说明。
接收模块52,用于接收对目标***进行数据快照的快照指令,其中,所述快照指令包括快照的快照时间;关闭模块54,与上述接收模块52相连,用于控制所述目标***的多个节点在所述快照时间之前将输入输出端口关闭,其中,所述目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;快照模块56,与上述关闭模块54相连,用于在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照。
通过上述装置,采用接收对目标***进行数据快照的快照指令,其中,快照指令包括快照的快照时间;控制目标***的多个节点在快照时间之前将输入输出端口关闭,其中,目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;在目标***上数据处于快照时间的一致性状态的情况下,响应快照指令对目标***进行数据快照的方式,采用同一时间同步设备使得多个不同的节点同时关闭输入输出端口,然后进行快照,达到了准确高效的实现***快照的目的,从而实现了提高了***快照的效率和准确率的技术效果,进而解决了相关技术中在分布式***中进行***快照时,需要将节点的输入输出端口全部挂起,导致时延长,快照效率低的技术问题。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项的数据快照方法。
根据本发明实施例的另一方面,还提供了一种计算机存储介质,计算机存储介质包括存储的程序,其中,在程序运行时控制计算机存储介质所在设备执行上述中任意一项的数据快照方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (6)

1.一种数据快照方法,其特征在于,包括:
接收对目标***进行数据快照的快照指令,其中,所述快照指令包括快照的快照时间;
控制所述目标***的多个节点在所述快照时间之前将输入输出端口关闭,其中,所述目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;
在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照;
接收对目标***进行数据快照的快照指令包括:接收***管理器在所述快照时间之前的预设时间发送的快照指令,其中,所述预设时间为所述***管理器根据快照的快照时间确定的;
其中,控制所述目标***的多个节点在所述快照时间之前将输入输出端口关闭包括:控制所述目标***的多个节点在关闭时间关闭对应的输入输出端口,其中,所述快照指令还包括所述目标***的节点关闭对应输入输出端口的关闭时间,所述关闭时间早于所述快照时间,晚于所述预设时间;将所述目标***中需写入硬盘的数据继续写入所述硬盘,直至所述需写入硬盘的数据写入完成;
控制所述目标***的多个节点在所述关闭时间关闭对应的输入输出端口之前,所述方法还包括:通过同一个时间同步设备,对多个节点的时间进行同步,其中,所述时间同步设备包括时间服务器,网络时间服务,网络时间协议;检测同步后的多个节点的时间误差,在所述时间误差小于预设误差阈值的情况下,确定所述多个节点的时间同步完成;
其中,在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照之后,所述方法包括:
根据所述快照时间确定所述目标***开启节点输入输出端口的重启时间,其中,所述重启时间在所述快照时间之后;
在所述重启时间开启所述目标***多个节点的输入输出端口。
2.根据权利要求1所述的方法,其特征在于,通过同一个时间同步设备,对多个节点的时间进行同步包括:
控制节点调用对应的网络时间服务,向所述时间服务器发送报文,其中,每个节点上都配置有对应的网络时间服务,所述报文包括所述节点自身的第一时间戳;
接收所述时间服务器对所述报文进行处理后的返回报文,并标记接收到所述返回报文的第四时间戳,其中,所述返回报文中包括所述时间服务器接收到所述报文时标记的第二时间戳,以及对所述报文处理后添加的用于标记返回报文发送时间的第三时间戳;
根据所述第一时间戳,所述第二时间戳,所述第三时间戳和所述第四时间戳,对所述节点的时间与所述时间服务器的时间进行同步。
3.根据权利要求1所述的方法,其特征在于,所述时间同步设备为授时***,所述授时***包括下列至少之一:
原子时***,协调世界时***,短波授时***,长波授时***,低频时码授时***,北斗授时***,网络手势,电视授时,广播授时。
4.一种数据快照装置,其特征在于,包括:
接收模块,用于接收对目标***进行数据快照的快照指令,其中,所述快照指令包括快照的快照时间;
关闭模块,用于控制所述目标***的多个节点在所述快照时间之前将输入输出端口关闭,其中,所述目标***的多个节点的时钟采用同一个时间同步设备进行时间同步;
快照模块,用于在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照;
其中,所述接收模块:接收子模块,用于接收***管理器在所述快照时间之前的预设时间发送的快照指令,其中,所述预设时间为所述***管理器根据快照的快照时间确定的;
其中,所述关闭模块包括:控制子模块,用于控制所述目标***的多个节点在关闭时间关闭对应的输入输出端口,其中,所述快照指令还包括所述目标***的节点关闭对应输入输出端口的关闭时间,所述关闭时间早于所述快照时间,晚于所述预设时间;写入子模块,用于将所述目标***中需写入硬盘的数据继续写入所述硬盘,直至所述需写入硬盘的数据写入完成;
同步模块,用于在控制所述目标***的多个节点在所述关闭时间关闭对应的输入输出端口之前,通过同一个时间同步设备,对多个节点的时间进行同步,其中,所述时间同步设备包括时间服务器,网络时间服务,网络时间协议;处理模块,用于检测同步后的多个节点的时间误差,在所述时间误差小于预设误差阈值的情况下,确定所述多个节点的时间同步完成;
其中,在所述目标***上数据处于所述快照时间的一致性状态的情况下,响应所述快照指令对所述目标***进行数据快照之后,所述装置还用于:根据所述快照时间确定所述目标***开启节点输入输出端口的重启时间,其中,所述重启时间在所述快照时间之后;在所述重启时间开启所述目标***多个节点的输入输出端口。
5.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至3中任意一项所述的数据快照方法。
6.一种计算机存储介质,其特征在于,所述计算机存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机存储介质所在设备执行权利要求1至3中任意一项所述的数据快照方法。
CN202111447801.9A 2021-12-01 2021-12-01 数据快照方法及装置 Active CN113868027B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111447801.9A CN113868027B (zh) 2021-12-01 2021-12-01 数据快照方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111447801.9A CN113868027B (zh) 2021-12-01 2021-12-01 数据快照方法及装置

Publications (2)

Publication Number Publication Date
CN113868027A CN113868027A (zh) 2021-12-31
CN113868027B true CN113868027B (zh) 2022-12-23

Family

ID=78985490

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111447801.9A Active CN113868027B (zh) 2021-12-01 2021-12-01 数据快照方法及装置

Country Status (1)

Country Link
CN (1) CN113868027B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495982A (zh) * 2011-11-30 2012-06-13 成都七巧软件有限责任公司 一种基于进程线程的防拷贝***和防拷贝存储介质
WO2020069654A1 (en) * 2018-10-01 2020-04-09 Huawei Technologies Co., Ltd. Method of handling snapshot creation request and storage device thereof

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7475098B2 (en) * 2002-03-19 2009-01-06 Network Appliance, Inc. System and method for managing a plurality of snapshots
CN106919471B (zh) * 2015-12-25 2020-03-20 中国电信股份有限公司 用于快照建立的方法和***
CN107402848A (zh) * 2017-07-31 2017-11-28 郑州云海信息技术有限公司 一种快照数据一致性的实现方法
CN111506453B (zh) * 2019-01-31 2023-06-16 阿里巴巴集团控股有限公司 磁盘快照创建方法、装置、***和存储介质
CN111522689B (zh) * 2019-02-01 2022-04-29 阿里巴巴集团控股有限公司 全局快照方法、装置、电子设备及计算机可读存储介质
CN111984472B (zh) * 2020-08-27 2022-08-02 苏州浪潮智能科技有限公司 一种数据快照方法、装置及相关设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495982A (zh) * 2011-11-30 2012-06-13 成都七巧软件有限责任公司 一种基于进程线程的防拷贝***和防拷贝存储介质
WO2020069654A1 (en) * 2018-10-01 2020-04-09 Huawei Technologies Co., Ltd. Method of handling snapshot creation request and storage device thereof

Also Published As

Publication number Publication date
CN113868027A (zh) 2021-12-31

Similar Documents

Publication Publication Date Title
WO2019154394A1 (zh) 分布式数据库集群***、数据同步方法及存储介质
US11397648B2 (en) Virtual machine recovery method and virtual machine management device
US9785523B2 (en) Managing replicated virtual storage at recovery sites
WO2018177107A1 (zh) 数据迁移方法、迁移服务器及存储介质
US10565071B2 (en) Smart data replication recoverer
US8578203B2 (en) Providing a backup service from a remote backup data center to a computer through a network
JP5452615B2 (ja) 書込待ち行列機構を用いて、マルチアレイの整合性グループを実施するための方法
CN105354113B (zh) 一种服务器、管理服务器的***和方法
CN109189860A (zh) 一种基于Kubernetes***的MySQL主备增量同步方法
WO2013131448A1 (zh) 数据同步方法、***及数据访问装置
WO2008092912A1 (en) System and method of error recovery for backup applications
AU2012273366A1 (en) Managing replicated virtual storage at recovery sites
CN104965879A (zh) 修改数据表的表结构的方法及装置
CN103970834A (zh) 一种异构数据库同步***中增量数据同步故障的恢复方法
CN105589887A (zh) 分布式文件***的数据处理方法及分布式文件***
CN104615511A (zh) 一种基于双中心的主机批量恢复处理方法及装置
JP4560074B2 (ja) 仮想計算機システム及び同システムにおける仮想計算機復元方法
WO2017014814A1 (en) Replicating memory volumes
CN110442648A (zh) 数据同步方法和装置
EP3696658A1 (en) Log management method, server and database system
CN106874343B (zh) 一种时序数据库的数据删除方法及***
CN104516796A (zh) 一种基于命令集的网元备份与恢复方法及装置
WO2021082925A1 (zh) 一种交易处理的方法及装置
CN113868027B (zh) 数据快照方法及装置
CN114546604A (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