一种存储管理方法、设备及介质转让专利

申请号 : CN202011623250.2

文献号 : CN114697351B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 欧阳戟

申请人 : 华为技术有限公司

摘要 :

本申请公开了一种存储管理方法,包括:灾备存储系统中的第一存储设备维护第一快照编号,第一快照编号为第一存储设备的最新快照的编号,其中,灾备存储系统包括备份子系统以及为备份子系统备份数据的灾备存储设备,备份子系统包括第一存储设备和第二存储设备;第一存储设备接收来自第二存储设备的第二快照编号,第二快照编号为第二存储设备的最新快照的编号;如果第二快照编号指示的快照版本比第一快照编号指示的快照版本更新,第一存储设备根据第一存储设备的存储内容创建快照,并将第一快照编号的值更新为接收到的第二快照编号的值。本申请还提供一种设备和介质,通过维护快照编号保证双活节点数据快照一致。

权利要求 :

1.一种存储管理方法,其特征在于,包括:

灾备存储系统中的第一存储设备维护第一快照编号,所述第一快照编号为所述第一存储设备的最新快照的编号,其中,所述灾备存储系统包括备份子系统以及为所述备份子系统备份数据的灾备存储设备,所述备份子系统包括所述第一存储设备和第二存储设备;

所述第一存储设备接收来自所述第二存储设备的第二快照编号,所述第二快照编号为所述第二存储设备的最新快照的编号;

如果所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更新,所述第一存储设备根据所述第一存储设备的存储内容创建快照,并将所述第一快照编号的值更新为接收到的所述第二快照编号的值。

2.根据权利要求1所述的方法,其特征在于,还包括:

如果所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更旧,或者所述第二快照编号指示的快照版本与所述第一快照编号指示的快照版本相同,所述第一存储设备不更新所述第一快照编号。

3.根据权利要求1或2所述的方法,其特征在于,还包括:

所述第一存储设备获取并存储来自主机的第一数据;

所述第一存储设备将所述第一数据发送给所述第二存储设备。

4.根据权利要求1或2所述的方法,其特征在于,还包括:

所述第一存储设备在接收来自所述第二存储设备的所述第二快照编号时,获取来自所述第二存储设备的第二数据,所述第二数据为所述第二存储设备从主机获取的数据;

所述第一存储设备在根据所述第一存储设备的存储内容获取快照,并将所述第一快照编号的值更新为接收到的所述第二快照编号的值后,存储所述第二数据。

5.根据权利要求4所述的方法,其特征在于,还包括:

所述第一存储设备向所述灾备存储设备发送增量数据,所述增量数据仅包括所述第一快照编号指示的快照相对于已备份快照的数据改变中来自所述主机的部分,所述已备份快照是所述第一存储设备上次向所述灾备存储设备发送增量数据时的最新快照。

6.一种存储设备,其特征在于,所述存储设备为第一存储设备,包括:执行单元,用于维护第一快照编号,所述第一快照编号为所述第一存储设备的最新快照的编号,其中,灾备存储系统包括备份子系统以及为所述备份子系统备份数据的灾备存储设备,所述备份子系统包括所述第一存储设备和第二存储设备;

接收单元,用于接收来自所述第二存储设备的第二快照编号,所述第二快照编号为所述第二存储设备的最新快照的编号;

所述执行单元还用于:如果所述接收单元接收的所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更新,根据所述第一存储设备的存储内容创建快照,并将所述第一快照编号的值更新为接收到的所述第二快照编号的值。

7.根据权利要求6所述的设备,其特征在于,还包括:所述执行单元还用于:如果所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更旧,或者所述第二快照编号指示的快照版本与所述第一快照编号指示的快照版本相同,不更新所述第一快照编号。

8.根据权利要求6或7所述的设备,其特征在于,所述接收单元还用于获取并存储来自主机的第一数据;

所述设备还包括发送单元,用于将所述第一数据发送给所述第二存储设备。

9.根据权利要求6或7所述的设备,其特征在于,

所述接收单元还用于:在接收来自所述第二存储设备的所述第二快照编号时,获取来自所述第二存储设备的第二数据,所述第二数据为所述第二存储设备从主机获取的数据;

所述执行单元还用于:在根据所述第一存储设备的存储内容获取快照,并将所述第一快照编号的值更新为接收到的所述第二快照编号的值后,存储所述第二数据。

10.根据权利要求8所述的设备,其特征在于,所述发送单元还用于向所述灾备存储设备发送增量数据,所述增量数据仅包括所述第一快照编号指示的快照相对于已备份快照的数据改变中来自所述主机的部分,所述已备份快照是所述第一存储设备上次向所述灾备存储设备发送增量数据时的最新快照。

11.一种电子设备,其特征在于,所述电子设备包括:处理器和存储器,所述存储器中存储有程序指令;

所述处理器用于执行存储器中存储的程序指令,执行如权利要求1‑5中任一项所述的方法。

12.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在计算机设备上运行时,使得所述计算机设备执行如权利要求1‑5中任一项所述的方法。

说明书 :

一种存储管理方法、设备及介质

技术领域

[0001] 本申请涉及存储领域,尤其涉及一种存储管理方法、设备及介质。

背景技术

[0002] 为了保证信息系统的业务连续性,可通过增加更多的存储设备来构建存储容灾系统。存储容灾系统可包括主备式存储容灾系统、同城双活存储容灾系统、两地三中心存储容灾系统等。而两地三中心容灾又可以分为两种,一种由两个同城的主备式站点+异地的第三站点组成,另一种由两个同城的双活站点+异地的第三站点组成。
[0003] 上述系统中,两个同城的双活站点+异地的第三站点组成的两地三中心容灾系统,是最可靠、效率最高的形式,同城的两个站点同时提供业务访问,任一站点故障可以将业务切换到另一站点,没有主备式容灾方案中需要拉起备机的业务中断影响。同城两个站点都故障,则可以将把异地第三站点的备机拉起,将业务切换到该异地站点。
[0004] 双活站点通过定期创建快照的方式进行增量备份,不同快照间增量数据由一个双活站点发送给异步第三站点,导致该异步站点承载的较大的工作压力,而基于异步复制的特性,另一台存储设备无法分担该复制的工作压力。

发明内容

[0005] 本申请提供了一种存储管理方法、设备及介质,用于解决灾备存储系统中存储设备之间定期执行快照导致的问题。
[0006] 有鉴于此,本申请第一方面提供了一种存储管理方法,包括:灾备存储系统中的第一存储设备维护第一快照编号,可选地,第一存储设备中包括逻辑单元号(logic unit number, LUN),该LUN模块用于存储第一存储设备所获取的数据。该第一快照编号为该第一存储设备的最新快照的编号,其中,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的灾备存储设备,该备份子系统包括该第一存储设备和第二存储设备;该第一存储设备接收来自该第二存储设备的第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号;如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新,可选地,该更新可以为快照编号的数值更大、更小或其他预设的新旧对比方式。该第一存储设备根据该第一存储设备的存储内容创建快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值。
[0007] 第二存储设备将最新的第二快照编号发送给第一存储设备,当第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新时,第一存储设备根据存储内容创建快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值。由此,使得第一存储设备与第二存储设备两端的快照编号保持了一致。
[0008] 可选地,该方法还包括:如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧,或者该第二快照编号指示的快照版本与该第一快照编号指示的快照版本相同,该第一存储设备不更新该第一快照编号。
[0009] 本申请中,当第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧时,第一存储设备不更新第一快照编号,从而保证第一存储设备所维护的编号始终为两端存储设备中最新的编号。
[0010] 可选地,该方法还包括:该第一存储设备获取并存储来自主机的第一数据;该第一存储设备将该第一数据发送给该第二存储设备,可选地,该第一存储设备将该第一数据发送给该第二存储设备具体为:该第一存储设备将该第一数据和该第一快照编号发送给该第二存储设备。
[0011] 本申请中,第一存储设备将从主机获取到的第一数据发送给第二存储设备,从而在两个存储设备之间实现了数据的同步。
[0012] 可选地,该方法还包括:该第一存储设备在接收来自该第二存储设备的该第二快照编号时,获取来自该第二存储设备的第二数据,该第二数据为该第二存储设备从主机获取的数据,可选地,该第二数据与该第一数据具有关联性;该第一存储设备在根据该第一存储设备的存储内容获取快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值后,存储该第二数据。
[0013] 本申请中,第二存储设备将从主机获取到的第二数据发送给第一存储设备,从而在两个存储设备之间实现了数据的同步。同时,将新获取的数据通过快照编号的方式存储在最新的快照版本中,从而实现了异步复制过程中,两端数据快照的统一,保证两端存储设备基于快照的增量复制统一。
[0014] 可选地,该方法还包括:该第一存储设备向该灾备存储设备发送增量数据,该增量数据仅包括该第一快照编号指示的快照相对于已备份快照的数据改变中来自该主机的部分,该已备份快照是该第一存储设备上次向该灾备存储设备发送增量数据时的最新快照。
[0015] 本申请中,第一存储设备将两次快照之间差异数据作为增量数据,当该部分的增量数据是第一存储设备从主机获取到的数据时,第一存储设备将该增量数据发送给灾备存储设备,从而实现第一存储设备向灾备存储设备发送数据的工作分配。
[0016] 本申请第二方面提供了一种存储管理方法,包括:灾备存储系统中的第二存储设备维护第二快照编号,可选地,第二存储设备中包括逻辑单元号(logic unit number,LUN),该LUN模块用于存储第二存储设备所获取的数据。该第二快照编号为该第二存储设备的最新快照的编号,其中,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的灾备存储设备,该备份子系统包括该第一存储设备和第二存储设备;该第二存储设备向该第一存储设备发送第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号,如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新,该第二快照编号用于指示该第一存储设备对所维护的第一快照编号进行更新,并根据存储内容创建快照。
[0017] 本申请中,第二存储设备将最新的第二快照编号发送给第一存储设备,当第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新时,第一存储设备根据存储内容创建快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值。由此,使得第一存储设备与第二存储设备两端的快照编号保持了一致,快照编号的一致使得第一存储设备与第二存储设备两端所存储的内容保持了一致,第一存储设备和第二存储设备可以实现异步复制过程中的工作压力分担。
[0018] 可选地,该方法还包括:如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧,或者该第二快照编号指示的快照版本与该第一快照编号指示的快照版本相同,则该第二快照编号用于指示该第一存储设备不更新该第一快照编号。
[0019] 本申请中,当第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧时,第一存储设备不更新第一快照编号,从而保证第一存储设备所维护的编号始终为两端存储设备中最新的编号。
[0020] 可选地,该方法还包括:该第二存储设备接收来自该第一存储设备的第一数据,该第一数据为该第一存储设备从主机获取的数据。
[0021] 本申请中,第一存储设备将从主机获取到的第一数据发送给第二存储设备,从而在两个存储设备之间实现了数据的同步。
[0022] 可选地,该方法还包括:该第二存储设备从主机获取第二数据;该第二存储设备向该第一存储设备发送第二快照编号时,向该第一存储设备发送该第二数据,以使得该第一存储设备存储该第二数据。
[0023] 本申请中,第二存储设备将从主机获取到的第二数据发送给第一存储设备,从而在两个存储设备之间实现了数据的同步。同时,将新获取的数据通过快照编号的方式存储在最新的快照版本中,从而实现了异步复制过程中,两端数据快照的统一,保证两端存储设备基于快照的增量复制统一。
[0024] 可选地,该方法还包括:该第二存储设备向该灾备存储设备发送增量数据,该增量数据仅包括该第二快照编号指示的快照相对于已备份快照的数据改变中来自该主机的部分,该已备份快照是该第二存储设备上次向该灾备存储设备发送增量数据时的最新快照。
[0025] 本申请中,第二存储设备将两次快照之间差异数据作为增量数据,当该部分的增量数据是第二存储设备从主机获取到的数据时,第二存储设备将该增量数据发送给灾备存储设备,从而实现第二存储设备向灾备存储设备发送数据的工作分配。
[0026] 本申请第三方面提供了一种存储管理方法,该方法应用于灾备存储系统中的灾备存储设备,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的该灾备存储设备,该备份子系统包括第一存储设备和第二存储设备,该方法包括:从该第一存储设备接收第一数据,该第一数据为该第一存储设备根据快照确定的增量数据,该第一数据是主机发送给该第一存储设备的;从该第二存储设备接收第二数据,该第二数据为该第二存储设备根据快照确定的增量数据,该第二数据是该主机发送给该第二存储设备的,该第二数据与该第一数据存在关联性;存储该第一数据和该第二数据,以备份该第一数据和该第二数据。
[0027] 本申请中,灾备存储设备作为异地第三节点,获取第一存储设备和第二存储设备发送的第一数据和第二数据,其中,第一存储设备和第二存储设备发送的数据是根据各自的快照确定的增量数据,从而第一存储设备和第二存储设备之间执行了任务的分配,将增量数据发送给了作为异地第三节点的灾备存储设备。
[0028] 可选地,该第一数据为该第一存储设备中本复制周期相对上个复制周期的增量数据;该第二数据为该第二存储设备中本复制周期相对上个复制周期的增量数据。
[0029] 本申请中,第一数据和第二数据分别为第一存储设备和第二存储设备在每个复制周期的增量数据,从而减少了数据的传输量。
[0030] 可选地,该第一数据为该第一存储设备从主机获取的数据,该第二数据为该第二存储设备从主机获取的数据。
[0031] 本申请中,第一存储设备和第二存储设备分别向灾备存储设备发送各自从主机获取到的数据,从而通过该种方式,实现了复制任务的分担。
[0032] 本申请第四方面提供了一种存储设备,该存储设备为第一存储设备,包括:
[0033] 执行单元,用于维护第一快照编号,该第一快照编号为该第一存储设备的最新快照的编号,其中,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的灾备存储设备,该备份子系统包括该第一存储设备和第二存储设备;
[0034] 接收单元,用于接收来自该第二存储设备的第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号;
[0035] 该执行单元还用于:如果该接收单元接收的该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新,根据该第一存储设备的存储内容创建快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值。
[0036] 可选地,该执行单元还用于:
[0037] 如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧,或者该第二快照编号指示的快照版本与该第一快照编号指示的快照版本相同,不更新该第一快照编号。
[0038] 可选地,该接收单元还用于,获取并存储来自主机的第一数据;
[0039] 该设备还包括发送单元,用于将该第一数据发送给该第二存储设备。
[0040] 可选地,该接收单元还用于:在接收来自该第二存储设备的该第二快照编号时,获取来自该第二存储设备的第二数据,该第二数据为该第二存储设备从主机获取的数据;
[0041] 该执行单元还用于:在根据该第一存储设备的存储内容获取快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值后,存储该第二数据。
[0042] 可选地,该发送单元还用于,向该灾备存储设备发送增量数据,该增量数据仅包括该第一快照编号指示的快照相对于已备份快照的数据改变中来自该主机的部分,该已备份快照是该第一存储设备上次向该灾备存储设备发送增量数据时的最新快照。
[0043] 本申请第五方面提供了一种存储设备,该存储设备为第二存储设备,包括:
[0044] 执行单元,用于维护第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号,其中,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的灾备存储设备,该备份子系统包括该第一存储设备和第二存储设备;
[0045] 发送单元,用于向该第一存储设备发送第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号,如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新,该第二快照编号用于指示该第一存储设备对所维护的第一快照编号进行更新,并根据存储内容创建快照。
[0046] 可选地,该执行单元还用于:
[0047] 如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧,或者该第二快照编号指示的快照版本与该第一快照编号指示的快照版本相同,则该第二快照编号用于指示该第一存储设备不更新该第一快照编号。
[0048] 可选地,该设备还包括接收单元,用于:接收来自该第一存储设备的第一数据,该第一数据为该第一存储设备从主机获取的数据。
[0049] 可选地,该接收单元还用于:从主机获取第二数据;
[0050] 该发送单元还用于:向该第一存储设备发送第二快照编号时,向该第一存储设备发送该第二数据,以使得该第一存储设备存储该第二数据。
[0051] 可选地,该发送单元还用于:向该灾备存储设备发送增量数据,该增量数据仅包括该第二快照编号指示的快照相对于已备份快照的数据改变中来自该主机的部分,该已备份快照是该第二存储设备上次向该灾备存储设备发送增量数据时的最新快照。
[0052] 本申请第六方面提供了一种灾备存储设备,该设备应用于灾备存储系统中的灾备存储设备,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的该灾备存储设备,该备份子系统包括第一存储设备和第二存储设备,该设备包括:
[0053] 接收单元,用于从该第一存储设备接收第一数据,该第一数据为该第一存储设备根据快照确定的增量数据,该第一数据是主机发送给该第一存储设备的;
[0054] 该接收单元,还用于从该第二存储设备接收第二数据,该第二数据为该第二存储设备根据快照确定的增量数据,该第二数据与该第一数据存在关联性,该第二数据是该主机发送给该第二存储设备的;
[0055] 执行单元,用于存储该第一数据和该第二数据,以备份该第一数据和该第二数据。
[0056] 可选地,该第一数据为该第一存储设备中本复制周期相对上个复制周期的增量数据;该第二数据为该第二存储设备中本复制周期相对上个复制周期的增量数据。
[0057] 可选地,该第一数据为该第一存储设备从主机获取的数据,该第二数据为该第二存储设备从主机获取的数据。
[0058] 本申请第七方面提供了一种电子设备,该电子设备包括:处理器和存储器,该存储器中存储有程序指令;
[0059] 该交互装置用于获取用户输入的操作指令;
[0060] 该处理器用于执行存储器中存储的程序指令,执行如第一至第三方面中任一项所述的方法。
[0061] 本申请第八方面提供了一种计算机可读存储介质,包括指令,当该指令在计算机设备上运行时,使得该计算机设备执行如第一至第三方面中任一项所述的方法。
[0062] 本申请第九方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如第一至第三方面中任一项所述的方法。

附图说明

[0063] 图1为本申请所提供的存储管理方法的系统架构图;
[0064] 图2为本申请所提供的存储管理方法的增量复制原理示意图;
[0065] 图3为本申请所提供的存储管理方法的一个实施例的示意图;
[0066] 图4为本申请所提供的存储管理方法的另一个实施例的示意图
[0067] 图5为本申请所提供的电子设备的示意图;
[0068] 图6为本申请所提供的一种存储设备的示意图;
[0069] 图7为本申请所提供的另一种存储设备的示意图;
[0070] 图8为本申请所提供的灾备存储设备的示意图。

具体实施方式

[0071] 本发明提供一种存储管理方法、设备及介质,能够解决灾备存储系统中存储设备之间复制任务的分配问题。
[0072] 为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请申请中的附图,对本申请申请中的技术方案进行清楚、完整地描述,显然,所描述的申请仅仅是本申请一部分的申请,而不是全部的申请。基于本申请中的申请,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他申请,都应当属于本申请保护的范围。
[0073] 本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的申请能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0074] 随着信息化技术的飞速发展,信息系统在各行业的关键业务中扮演着越来越重要的角色。在通讯、金融、医疗、电子商务、物流、政府等领域,信息系统业务中断会导致巨大经济损失、影响品牌形象并可能导致重要数据丢失。因此,保证业务连续性是信息系统建设的关键。
[0075] 各行业普遍通过建设灾备中心的手段来保护生产数据的安全,进而保证关键应用的业务连续性。两地三中心容灾是一种常用的灾备存储系统,其中一种最可靠、效率最高的两地三中心容灾方式是由两个同城的双活站点+异地的第三站点组成。图1示出了两个同城的双活站点+异地的第三站点的架构图,如图1所示,在由同城的双活站点+异地的第三站点组成的架构中,两个同城的双活站点组成了灾备存储系统包括备份子系统,两个双活站点分别为第一存储设备101和第二存储设备102。异地的第三站点为备份子系统备份数据的灾备存储设备103。
[0076] 在如图1所示的架构中,同城的两个站点(第一存储设备101和第二存储设备102)同时向主机104提供业务访问,第一存储设备101和第二存储设备102中任一站点故障可以将业务切换到另一站点,没有主备式容灾方案中需要拉起备机的业务中断影响。第一存储设备 101和第二存储设备102都故障时,则将把灾备存储设备103的备机启动,并将业务切换到该异地站点。
[0077] 如图1所示的架构中,具体工作时,主机104可能将数据下发给第一存储设备101或第二存储设备102。在双活存储系统中,不管第一存储设备101还是第二存储设备102,当收到主机104发送的数据后,都将该数据同步给对端,以使得第一存储设备101和第二存储设备 102都存储该主机104发送的数据。之后由双活站点中的任意一个(第一存储设备101或第二存储设备102中的任意一个),将数据发送给灾备存储设备103,从而实现了灾备存储设备对备份数据的存储。
[0078] 上述双活站点将数据发送给灾备存储设备103的步骤,通过快照的方式进行增量备份来实现,图2示出了通过快照进行增量备份的具体方式。如图2所示,假设在上一个复制周期,双活站点(可以为第一存储设备101或第二存储设备102)的第一快照201的数据已经被复制到灾备存储设备103,接下来在新的复制周期,为双活站点新建第二快照202,然后通过比较第一快照201和第二快照202之间的差异,获得增量数据203,然后将该增量数据203 从源端存储设备(第一存储设备101或第二存储设备102)传输到目标端存储设备204(灾备存储设备103)。
[0079] 源端存储设备(第一存储设备或第二存储设备)将数据传输到目标端存储设备(灾备存储设备)采用异步复制的方式。具体实现方式为:定期为双活站点创建快照,即定期在第一存储设备创建第一快照、在第二存储设备创建第二快照,两边创建快照的周期一致。当需要异步复制增量数据时,比较第一存储设备、第二存储设备的最新快照与上一次异步复制的快照之间数据的差异,以获得增量数据。第一存储设备、第二存储设备再将该各自从主机接收的增量数据的一部分发送到灾备存储设备。
[0080] 但是,由于数据写入时间有先后顺序,如从主机下发的数据达到第一存储设备并写入第一存储设备的时间和第一存储设备将该数据发送给第二存储设备的时间并写入第二存储设备的时间先后顺序不同,会导致在第一存储设备和第二存储设备中同样的快照中的数据不同,因此本发明提出了一种存储管理方法,保证第一存储设备和第二存储设备同样的快照中包含相同的数据。具体的,请参阅图3,如图3所示,本申请申请所提供的存储管理方法,包括以下步骤。:
[0081] 301、第二存储设备创建快照并更新第二快照编号。
[0082] 其中,在第二存储设备创建快照前,双活存储系统中的第一存储设备维护第一快照编号,所述第而快照编号为所述第一存储设备的最新快照的编号;第二存储设备维护第二快照编号,所述第而快照编号为所述第二存储设备的最新快照的编号。
[0083] 可选地,第二存储设备可以通过以下方式对第二快照编号进行更新:1、将数字作为第二快照编号并对第二快照编号进行更新;2、将字母作为第二快照编号并对第二快照编号进行更新。为便于理解,以下对此两种方式进行详细说明。
[0084] 1、将数字作为第二快照编号并对第二快照编号进行更新。
[0085] 此种方式中,按数字对第二快照编号进行更新又可以分为1)、数字递增和2)数字递减两种方式。
[0086] 1)、数字递增。
[0087] 此种方式中,第二存储设备每次更新第二快照编号时,都将第二快照编号增加一个固定的预设值,例如,预设值为1,则每次更新第二快照编号时,将第二快照编号的数值加1,从而最大的数值即为最新的第二快照编号,数值较小的快照编号为更旧的编号。
[0088] 2)、数字递减。
[0089] 此种方式与方式1)相反,第二存储设备每次更新第二快照编号时,都将第二快照编号减少一个固定的预设值,例如,预设值为1,则每次更新第二快照编号时,将第二快照编号的数值减1,从而最小的数值即为最新的第二快照编号,数值较大的快照编号为更旧的编号。
[0090] 2、将字母作为第二快照编号并对第二快照编号进行更新。
[0091] 此种方式中,按字母对第二快照编号进行更新又可以分为1)、字母顺序和2)字母倒序两种方式。
[0092] 1)、字母顺序。
[0093] 此种方式中,第二存储设备每次更新第二快照编号时,按照字母表的顺序,将第二快照编号递进预设个位数,例如,预位数为1,初始第二快照编号为A,则每次更新第二快照编号时,将第二快照编号的在字母表中的顺序加1,第一次更新后得到的第二快照编号为B,第三次为C。以此类推,从而字母表中顺序最后的字母即为最新的第二快照编号,字母表中顺序靠前的快照编号为更旧的编号。
[0094] 当更新到字母Z后,可以循环使用字母A开始作为下一轮的快照编号更新。
[0095] 2)、字母倒序。
[0096] 此种方式与方式1)相反,第二存储设备每次更新第二快照编号时,按照字母表的相反顺序,将第二快照编号递进预设个位数,例如,预位数为1,初始第二快照编号为Z,则每次更新第二快照编号时,将第二快照编号的在字母表中的顺序减1,第一次更新后得到的第二快照编号为Y,第三次为X。以此类推,从而字母表中顺序最前的字母即为最新的第二快照编号,字母表中顺序靠后的快照编号为更旧的编号。
[0097] 当更新到字母A后,可以循环使用字母Z开始作为下一轮的快照编号更新。
[0098] 需要说明的是,上述第二快照编号的更新方式只是一种举例,在具体工作过程中,本领域技术人员可以根据实际需要选择第二快照编号的更新方式,对此本申请实施例并不进行限定。
[0099] 302、第二存储设备向第一存储设备发送第二快照编号。
[0100] 303、第一存储设备根据第二快照编号和第一快照编号的新旧关系决定是否更新第一快照编号。
[0101] 具体为:如果所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更新,所述第一存储设备根据所述第一存储设备的存储内容创建快照,并将所述第一快照编号的值更新为接收到的所述第二快照编号的值。
[0102] 如果所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更旧,或者所述第二快照编号指示的快照版本与所述第一快照编号指示的快照版本相同,所述第一存储设备不更新所述第一快照编号。第二快照编号的具体更新方法如上所述,此处不再赘述。需要说明的是,此处的不更新第二快照编号指第一存储设备不根据从第二存储设备接收的第二快照编号更新第一快照编号,而第一存储设备可以根据其自身的设置,如达到指定期限,根据第一快照编号创建新的快照,在创建快照后,更新第一快照。
[0103] 如果第二设备在创建快照前接受到新的数据并写入,则步骤301中的第二存储设备的最新的快照中包括该数据,那么在步骤302中第二存储设备需要将该数据与第二快照编号同步发送给第一存储设备。
[0104] 如果第二设备在创建快照前接受到新的数据但是没有写入,则步骤301中的第二存储设备的最新的快照中不包括该数据,那么在步骤302中第二存储设备不需要将该数据与第二快照编号同步发送给第一存储设备。
[0105] 本申请中,第一存储设备根据新旧快照生成增量数据的过程,可参阅前述关于图2的描述,通过上述步骤301至303,通过收发快照编号的方式,使得第一存储设备与第二存储设备两端的快照始终保持一致,由此一来,第一存储设备与第二存储设备两端在同一个版本的快照中所对应的数据是一样的。由此,第一存储设备与第二存储设备可以分担异步复制工作过程中的工作压力,各自分担部分复制算力,将数据发送给灾备存储节点。
[0106] 本发明通过快照编号将双活存储设备的快照进行管理,使双活设备中同一个快照版本中的数据一致,进而可以使得双活存储设备可以负荷分担的对灾备存储设备执行异步备份操作,减轻由一个存储设备向灾备存储设备执行异步备份的负载。
[0107] 进一步的,本申请可以解决数据的增量数据关联性的问题。
[0108] 具体的,若第一存储设备和第二存储设备各自分担一部分增量数据的发送,组合成全部的增量数据,比如每个存储设备负责发送自身从主机收到的增量数据,不发送从对端存储设备同步来的增量数据。在第一存储设备和第二存储设备各自执行创建快照的情况下,可能会产生数据不符合关联性要求的问题。
[0109] 关联性要求是指,在一个存储设备中,假设第一数据与第二数据是具有关联性的数据,则当主机后续在一个存储设备中读取到第二数据,则要求必须能读到第一数据或主机从一个存储设备中读到第一数据,则要求必须能读到第二数据,比如对于车辆数据而言,省份和号码具有关联性,当读取的数据只有一个时,无法精准获取车辆信息。对于存储设备中可能出现的场景,如以下表1所示,包括以下列出各种情况下的关联性判定:
[0110] 场景编号 存储设备中的数据 关联性1 无第一数据和第二数据 有
2 仅有第一数据 无
3 有第一数据和第二数据 有
4 仅有第二数据 无
[0111] 表1
[0112] 正常情况下,第一存储设备和第二存储设备中都能读到第一数据和第二数据,即符合场景3,数据关联且无丢失。对于灾备存储设备,由于是异步复制,若生产站点发生灾难,第一数据和第二数据中可能有部分数据未能传输到灾备存储设备。基于异步复制的原理,灾备存储设备中有数据丢失是允许的,但不允许出现具有关联性的数据丢失任意一个,也就是说,上述场景中,出现1、3是合理的,出现2、4则有问题,会导致容灾数据不可用。
[0113] 在一种可能的工作场景中,如果不通过快照编号来管理快照,假设双活站点(第一存储设备或第二存储设备)已经在上一个周期把快照x复制到灾备存储设备。然后新周期开始,在第一存储设备创建快照y、在第二存储设备创建快照y,然后第一存储设备和第二存储设备各自复制一部分增量数据到灾备存储设备。由于双活系统是一个分布式系统,在第一存储设备创建快照y、在第二存储设备创建快照y这两个动作的执行不可能保证时间上绝对一致,如果此时主机正好在下发上述的有关联性要求的第一数据和第二数据,可能出现如下临界场景(按发生的先后顺序):
[0114] 1)第一存储设备创建快照y;
[0115] 2)第一存储设备收到第一数据并写入,且将写第一数据同步到第二存储设备;
[0116] 3)第二存储设备接收第一数据并写入,向第一存储设备返回第一数据写入完成信息;
[0117] 4)第一存储设备返回第一数据写入完成信息给主机;
[0118] 5)第二存储设备收到第二数据并写入,且将写第二数据同步到第一存储设备;
[0119] 6)第二存储设备创建快照y;
[0120] 7)第一存储设备完成写第二数据处理;
[0121] 8)第二存储设备返回写第二数据完成给主机;
[0122] 按照此执行顺序,可以发现,第一存储设备所创建的快照y中不包含数据第一数据和第二数据(因为第一数据和第二数据在第一存储设备创建快照y后才真正写入)。第二存储设备的快照y中包含第一数据和第二数据。
[0123] 按照前述规则,如果第一存储设备和第二存储设备分别负责发送自身从主机收到的增量数据。则此时第一存储设备和第二存储设备分别向灾备存储设备发送各自的快照y相对于快照x的增量数据:则第一存储设备不会发送第一数据和第二数据,第二存储设备只会发送第二数据(第一数据是第一存储设备从主机获取的数据,第二存储设备不负责发送),结果本周期复制完成后,灾备存储设备中只有第二数据但无第一数据,导致灾备存储设备一端所存储的数据不符合关联性的要求。
[0124] 上述工作场景只是一个举例,由于异步复制的特性,在其他场景下,依然可能出现上述数据不符合关联性要求的问题。
[0125] 因此,基于上述原因,相关技术的在灾备存储系统中,不同版本的快照间增量数据只能由一个双活站点发送给灾备存储设备(异步第三站点),导致该异步站点承载的较大的工作压力,而基于异步复制的特性,另一台存储设备无法分担该复制的工作压力。
[0126] 为便于理解,以下结合附图,对本申请所提供的方法进行详细说明。
[0127] 本申请所提供的存储管理方法可用于灾备存储系统中,该包括灾备存储系统备份子系统以及为备份子系统备份数据的灾备存储设备,备份子系统包括第一存储设备和第二存储设备。备份子系统中的一端设备发送数据时将已有的快照编号连同数据一并发送给对端,对端根据获取的快照编号更新已有的快照编号。任何一端在创建快照时,根据更新后的已有快照编号创建。从而保证具有关联性的数据都包含在同一个快照编号中。由此,第一存储设备和第二存储设备分工向灾备存储设备发送数据时,不会出现数据关联性异常的问题。
[0128] 请参阅图4,如图4所示,本申请申请所提供的存储管理方法,包括以下步骤。
[0129] 401、第一存储设备从主机获取第一数据。
[0130] 第一存储设备中包括逻辑单元号(logic unit number,LUN),该LUN于存储第一存储设备所获取的数据。可选地,第一存储设备中的块设备可以是一个LUN、LUN组或一致性组,其中,LUN组是一组LUN的集合,一致性组是为一组LUN配置双活、异步复制的管理单位。对此本申请申请并不进行限定。第一存储设备通过接收主机(host)的写IO(Input/Output),使得主机将增量数据写入第一存储设备中。
[0131] 需要说明的是,作为一种举例,本申请申请可用于如图1所示的双活站点+异地第三站点组成的两地三中心容灾的方式。由第一存储设备和第二存储设备共同接收主机写入的数据,其中,主机可以按照一定的规则,通过写IO的方式将数据发送给第一存储设备和第二存储设备,例如,主机总共需要写入100条数据,则主机可以将其中的50条数据发送给第一存储设备,将另外50条数据发送给第二存储设备。从而第一存储设备和第二存储设备构成了主机的双活站点,实现了对主机数据的获取和存储。
[0132] 402、第一存储设备将第一数据和第一快照编号发送给第二存储设备。
[0133] 本申请中,第一存储设备将从主机获取到的第一数据发送给第二存储设备,以使得第二存储设备所存储的数据与第一存储设备保持一致。
[0134] 进一步地,第一存储设备中维护有第一快照编号,第一快照编号为第一存储设备中的最新快照编号,第一存储设备将最新的快照编号发给第二存储设备,以使第二存储设备更新第二快照编号。
[0135] 可选地,第一存储设备可以按照以下方式对第一快照编号进行更新。
[0136] 在每个复制周期开始之前,若按照预设规则,选择由第一存储设备创建新快照,则第一存储设备更新第一快照编号,具体方式为:将第一快照编号更新为N,上一复制周期中第一快照编号为O,N‑O=P,N、O及P分别为大于零的正整数。例如,上一复制周期中第一快照编号O=2,更新参数P=1,则在本复制周期开始时,第一存储设备将第一快照编号N更新为3,从而实现了第一快照编号的更新。需要说明的是,具体工作过程中,用户可根据实际需要选择N、O及P的具体数值,对此本申请申请并不进行限定。
[0137] 403、第二存储设备根据第二快照编号和第一快照编号的新旧关系决定是否更新第二快照编号。
[0138] 如果第一快照编号指示的快照版本比第二快照编号指示的快照版本新,第二存储设备根据第二存储设备的存储内容创建快照,并将第二快照编号的值更新为接收到的第一快照编号的值。
[0139] 需要说明的是,第二快照编号的具体更新方法可参阅前述步骤301的相关记载,此处不再赘述。
[0140] 如果第一快照编号指示的快照版本比第二快照编号指示的快照版本更旧,或者第二快照编号指示的快照版本与第一快照编号指示的快照版本相同,第二存储设备不更新第二快照编号。
[0141] 404、第二存储设备存储第一数据。
[0142] 具体的,第二存储设备将第一数据写入LUN中。
[0143] 如果第一快照编号指示的快照版本比第二快照编号指示的快照版本新,表明第一存储设备的快照版本大于第二存储设备,即与第一快照编号一通发来的第一数据所处的快照号为第一快照编号下一个快照编号。在步骤S403中,如果第一快照编号指示的快照版本比第二快照编号指示的快照版本新,第二存储设备根据第二存储设备的存储内容创建快照,并将第二快照编号的值更新为接收到的第一快照编号的值,使得在第二存储设备中的第一数据的所处的快照版本与第一存储设备相同,使得第一存储设备与第二存储设备通过快照增量获取的数据相同。
[0144] 405、第二存储设备从主机接收第二数据。
[0145] 本申请中,第二存储设备中包括逻辑单元号(logic unit number,LUN),该LUN模块用于存储第二存储设备所获取的数据,可选地,第一存储设备中的块设备可以是一个LUN、 LUN组或一致性组,对此本申请并不进行限定。第二存储设备通过接收主机(host)的写IO (Input/Output),使得主机将增量数据写入第二存储设备中。
[0146] 需要说明的是,作为一种举例,本申请可用于如图1所示的双活站点+异地第三站点组成的两地三中心容灾的方式。由第一存储设备和第二存储设备共同接收主机写入的数据,其中,主机可以按照一定的规则,通过写IO的方式将数据发送给第一存储设备和第二存储设备,例如,主机总共需要写入100条数据,则主机可以将其中的50条数据发送给第一存储设备,将另外50条数据发送给第二存储设备。从而第一存储设备和第二存储设备构成了主机的双活站点,实现了对主机数据的获取和存储。
[0147] 该第二数据与第一数据具有关联性,即,第一数据与第二数据之间具有关联性要求,在任何一个存储设备中,若读取到第二数据,必须能够读取第一数据。例如,第一数据与第二数据可以为两个有关联性的表格,第二数据所记录的表格以第一数据所记录的表格为基础。
[0148] 406、第二存储设备将第二数据和更新后的第二快照编号发送给第一存储设备。
[0149] 本申请中,第二快照编号为第二存储设备中的最新快照编号,第二存储设备将最新的快照编号发给第一存储设备,以使第一存储设备更新第一快照编号。
[0150] 可选地,第二存储设备可以按照以下方式对第二快照编号进行更新。
[0151] 在每个复制周期开始之前,若按照预设规则,选择由第二存储设备创建新快照,则第二存储设备更新第二快照编号,具体方式为:将第二数据快照的第二版本号更新为M,上一复制周期中第二快照编号为N,M‑N=P,M、N及P分别为大于零的正整数。例如,在上一复制周期中,第二快照编号N=3,更新参数P=1,则本复制周期开始时,第二存储设备将第二快照编号N更新为4,从而实现了第二快照编号的更新。需要说明的是,具体工作过程中,用户可根据实际需要选择M、N及P的具体数值,对此本申请并不进行限定。
[0152] 407、第一存储设备根据第二快照编号和第一快照编号的新旧关系决定是否更新第一快照编号。
[0153] 如果所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更新,所述第一存储设备根据所述第一存储设备的存储内容创建快照,并将所述第一快照编号的值更新为接收到的所述第二快照编号的值。
[0154] 需要说明的是,第一快照编号的具体更新方法可参阅前述步骤301的相关记载,此处不再赘述。
[0155] 如果所述第二快照编号指示的快照版本比所述第一快照编号指示的快照版本更旧,或者所述第二快照编号指示的快照版本与所述第一快照编号指示的快照版本相同,所述第一存储设备不更新所述第一快照编号。
[0156] 408、第一存储设备存储第二数据。
[0157] 具体的,第一存储设备将第二数据写入LUN中。
[0158] 通过上述方式,第一存储设备与第二存储设备所维护的快照编号保持一致。从而第二存储设备所生成的第二快照与第一存储设备所生成的第一快照中所包含的数据相关联,如果第一数据在第一存储设备中不被第一快照所包含,即属于第一快照编号所对应的快照。那么第二数据不管在第一存储设备还是第二存储设备,也同样不会被快照所包含。从而确保发送给灾备存储设备的增量数据满足关联性的要求。
[0159] 需要说明的是,为了保证具有关联性的数据在同一快照中,步骤403和步骤407中第一快照与第二快照的生成方式生成方式是统一的,具体的,可以在已有的最新编号增加固定的正整数后的编号作为更新的快照编号。
[0160] 基于上述步骤,本申请申请进一步提供一种数据传输方法,包括以下步骤。
[0161] 409、第一存储设备根据快照确定第一数据为增量数据。
[0162] 本申请中,第一存储设备根据快照所确定增量数据即为需要发送给灾备存储设备的数据,
[0163] 可选地,第一存储设备可以通过以下步骤确定增量数据。
[0164] 1、第一存储设备将第一快照与第一快照的前一个快照进行比对,得到区别数据。
[0165] 本申请中,第一快照为本复制周期内第一存储设备最新生成的数据快照,通过将第一快照与前一个快照进行比对,两个快照中区别的数据,即为本复制周期内的区别数据。
[0166] 2、第一存储设备从区别数据中确定从主机中获取到的数据为增量数据。
[0167] 本申请中,在一个复制周期内,第一存储设备可以从两种渠道获取到新的数据,一种是通过主机的写入,另一种是通过第二存储设备的发送。其中,第二存储设备发送给第一存储设备的数据,为主机发送给第二存储设备的数据。按照数据分担的规则,该部分数据又第二存储设备发送给灾备存储设备,因此第一存储设备不需要将该部分数据确定为增量数据,第一存储设备只需要从区别数据中确定从主机中获取到的数据为增量数据即可。
[0168] 根据前述描述,第一存储设备从主机获取的第一数据满足增量数据的规则。
[0169] 410、第二存储设备根据快照确定第二数据为增量数据。
[0170] 本申请中,第二存储设备根据快照确定增量数据的方式与第一存储设备确定增量数据的方式相同,因此可参阅前述记载,此处不再赘述。
[0171] 411、第一存储设备向灾备存储设备发送第一数据。
[0172] 本申请中,第一存储设备将自身从主机获取的第一数据发送给灾备存储设备,同时,该第一数据是第一存储设备通过第一快照确定的增量数据得到的,而第一存储设备是按照第一快照编号的更新来生成第一快照,以使得第一存储设备所生成的第一快照与第二存储设备生成的第二快照一致。如此一来,第一存储设备向灾备存储设备发送自身从主机获取到的数据,不会在灾备存储设备上产生关联性异常的情况。
[0173] 可选地,第一存储设备还可以向灾备存储设备发送第一数据所对应的第一快照编号。
[0174] 412、第二存储设备向灾备存储设备发送第二数据。
[0175] 本申请中,第二存储设备将自身从主机获取的第二数据发送给灾备存储设备,同时,该第二数据是第二存储设备通过第二快照确定的增量数据得到的,而第二存储设备是按照第二快照编号的更新来生成第二快照,以使得第二存储设备所生成的第二快照与第一存储设备生成的第一快照一致。如此一来,第二存储设备向灾备存储设备发送自身从主机获取到的数据,不会在灾备存储设备上产生关联性异常的情况。
[0176] 可选地,第二存储设备还可以向灾备存储设备发送第二数据所对应的第二快照编号。
[0177] 413、灾备存储设备存储第一数据。
[0178] 本申请中,灾备存储设备将第一数据存储在本地,从而实现了异地第三节点对第一数据的灾备存储,可选地,灾备存储设备将第一数据所对应的第一快照编号作为附加记录一并存储在本地。
[0179] 414、灾备存储设备存储第二数据。
[0180] 本申请中,灾备存储设备将第二数据存储在本地,从而实现了异地第三节点对第二数据的灾备存储,可选地,灾备存储设备将第二数据所对应的第二快照编号作为附加记录一并存储在本地。
[0181] 本申请中,实现了关于第二数据的异步复制过程,通过该过程,第一存储设备和第二存储设备在数据同步的过程中,通过维护各自的快照版本号,保证双活节点两端数据存储和数据快照的一致。后续第二存储设备将自身从主机获取到的第二数据发送给灾备存储设备,从而实现了异步复制任务的分担。同时,由于快照编号保证了两端数据快照的一致,从而不会在异步复制的过程中出现关联性数据异常的情况。
[0182] 可见,在上述工作过程中可以看出,对于一个第一数据或第二数据,如果在第一存储设备中不被快照所包含,则该数据也同样不会被第二存储设备的快照所包含。从而通过上述快照编号的方式,实现了第一存储设备和第二存储设备两端数据快照的一致,避免了异步复制过程中因双活站点快照的不同,导致复制到异地第三节点的增量数据出现关联性异常的情况。从而实现了异步复制过程中双活站点的工作任务分配,两个存储设备可以分担数据复制的工作。
[0183] 需要说明的是,上述步骤中,每个复制周期的起始步骤,按照预设规则,可以选择由第一存储设备创建新快照并更新快照编号,也可以选择由第二存储设备创建新快照并更新快照编号,对此本申请申请并不进行限定。
[0184] 进一步地,本申请申请所提供的方法,不仅可用于双活存储系统的异步复制,多活存储系统、多副本存储系统向另外的存储设备进行异步复制时,也可以运用本申请所提供的方法。对此本申请申请并不进行限定。
[0185] 从硬件结构上来描述,上述方法可以由一个实体设备实现,也可以由多个实体设备共同实现,还可以是一个实体设备内的一个逻辑功能模块,本申请申请对此不作具体限定。
[0186] 例如,上述方法可以通过图5中的电子设备来实现。图5为本申请申请提供的一种电子设备的硬件结构示意图;该电子设备可以是本发明申请中的电子设备,也可以是终端设备。该电子设备包括至少一个处理器501,通信线路502,存储器503以及至少一个通信接口504。
[0187] 处理器501可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application‑specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
[0188] 通信线路502可包括一通路,在上述组件之间传送信息。
[0189] 通信接口504,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local area network,WLAN)等。
[0190] 存储器503可以是只读存储器(read‑only memory,ROM)或可存储非易失性信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器 (electrically erable programmable read‑only memory,EEPROM)、只读光盘(compact disc read‑only memory,CD‑ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路502与处理器相连接。存储器也可以和处理器集成在一起。
[0191] 其中,存储器503用于存储执行本申请方案的计算机执行指令,并由处理器501来控制执行。处理器501用于执行存储器503中存储的计算机执行指令,从而实现本申请下述申请提供的计费管理的方法。
[0192] 可选的,本申请申请中的计算机执行指令也可以称之为应用程序代码,本申请申请对此不作具体限定。
[0193] 在具体实现中,作为一种申请,处理器501可以包括一个或多个CPU,例如图5中的CPU0 和CPU1。
[0194] 在具体实现中,作为一种申请,电子设备可以包括多个处理器,例如图5中的处理器 501和处理器507。这些处理器中的每一个可以是一个单核处理器,也可以是一个多核处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
[0195] 在具体实现中,作为一种申请,电子设备还可以包括输出设备505和输入设备506。输出设备505和处理器501通信,可以以多种方式来显示信息。例如,输出设备505可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备
506和处理器501通信,可以以多种方式接收用户的输入。例如,输入设备506可以是鼠标、键盘、触摸屏设备或传感设备等。
[0196] 上述的电子设备可以是一个通用设备或者是一个专用设备。在具体实现中,电子设备可以服务器、无线终端设备、嵌入式设备或有类似结构的设备。本申请申请不限定电子设备的类型。
[0197] 本申请申请可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请申请中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0198] 比如,以采用集成的方式划分各个功能单元的情况下,图6示出了本申请申请所提供的一种存储设备的结构示意图。
[0199] 如图6所示,本申请申请提供的一种一种存储设备,该存储设备为第一存储设备,包括:
[0200] 执行单元601,用于维护第一快照编号,该第一快照编号为该第一存储设备的最新快照的编号,其中,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的灾备存储设备,该备份子系统包括该第一存储设备和第二存储设备;
[0201] 接收单元602,用于接收来自该第二存储设备的第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号;
[0202] 该执行单元601还用于:如果该接收单元602接收的该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新,根据该第一存储设备的存储内容创建快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值。
[0203] 可选地,该执行单元601还用于:
[0204] 如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧,或者该第二快照编号指示的快照版本与该第一快照编号指示的快照版本相同,不更新该第一快照编号。
[0205] 可选地,该接收单元602还用于,获取并存储来自主机的第一数据;
[0206] 该设备还包括发送单元603,用于将该第一数据发送给该第二存储设备。
[0207] 可选地,该接收单元602还用于:在接收来自该第二存储设备的该第二快照编号时,获取来自该第二存储设备的第二数据,该第二数据为该第二存储设备从主机获取的数据;
[0208] 该执行单元601还用于:在根据该第一存储设备的存储内容获取快照,并将该第一快照编号的值更新为接收到的该第二快照编号的值后,存储该第二数据。
[0209] 可选地,该发送单元603还用于,向该灾备存储设备发送增量数据,该增量数据仅包括该第一快照编号指示的快照相对于已备份快照的数据改变中来自该主机的部分,该已备份快照是该第一存储设备上次向该灾备存储设备发送增量数据时的最新快照。
[0210] 图7示出了本申请申请所提供的另一种存储设备的结构示意图。
[0211] 如图7所示,该该存储设备为第二存储设备,包括:
[0212] 执行单元701,用于维护第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号,其中,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的灾备存储设备,该备份子系统包括该第一存储设备和第二存储设备;
[0213] 发送单元702,用于向该第一存储设备发送第二快照编号,该第二快照编号为该第二存储设备的最新快照的编号,如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更新,该第二快照编号用于指示该第一存储设备对所维护的第一快照编号进行更新,并根据存储内容创建快照。
[0214] 可选地,该执行单元701还用于:
[0215] 如果该第二快照编号指示的快照版本比该第一快照编号指示的快照版本更旧,或者该第二快照编号指示的快照版本与该第一快照编号指示的快照版本相同,则该第二快照编号用于指示该第一存储设备不更新该第一快照编号。
[0216] 可选地,该设备还包括接收单元703,用于:接收来自该第一存储设备的第一数据,该第一数据为该第一存储设备从主机获取的数据。
[0217] 可选地,该接收单元703还用于:从主机获取第二数据;
[0218] 该发送单元702还用于:向该第一存储设备发送第二快照编号时,向该第一存储设备发送该第二数据,以使得该第一存储设备存储该第二数据。
[0219] 可选地,该发送单元702还用于:向该灾备存储设备发送增量数据,该增量数据仅包括该第二快照编号指示的快照相对于已备份快照的数据改变中来自该主机的部分,该已备份快照是该第二存储设备上次向该灾备存储设备发送增量数据时的最新快照。
[0220] 图8示出了本申请申请所提供的另一种存储设备的结构示意图。
[0221] 如图8所示,本申请申请提供一种灾备存储设备,该设备应用于灾备存储系统中的灾备存储设备,该灾备存储系统包括备份子系统以及为该备份子系统备份数据的该灾备存储设备,该备份子系统包括第一存储设备和第二存储设备,该设备包括:
[0222] 接收单元801,用于从该第一存储设备接收第一数据,该第一数据为该第一存储设备根据快照确定的增量数据,该第一数据是主机发送给该第一存储设备的;
[0223] 该接收单元801,还用于从该第二存储设备接收第二数据,该第二数据为该第二存储设备根据快照确定的增量数据,该第二数据与该第一数据存在关联性,该第二数据是该主机发送给该第二存储设备的;
[0224] 执行单元802,用于存储该第一数据和该第二数据,以备份该第一数据和该第二数据。
[0225] 可选地,该第一数据为该第一存储设备中本复制周期相对上个复制周期的增量数据;该第二数据为该第二存储设备中本复制周期相对上个复制周期的增量数据。
[0226] 可选地,该第一数据为该第一存储设备从主机获取的数据,该第二数据为该第二存储设备从主机获取的数据。
[0227] 在上述申请中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0228] 所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如, DVD)、或者半导体介质(例如固态硬盘(SSD))等。
[0229] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法申请中的对应过程,在此不再赘述。
[0230] 在本申请所提供的几个申请中,应该理解到,所揭露的通信方法、中继设备、宿主基站及计算机存储介质,可以通过其它的方式实现。例如,以上所描述的装置申请仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0231] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请方案的目的。
[0232] 另外,在本申请各个申请中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0233] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个申请所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0234] 以上所述,以上申请仅用以说明本申请的技术方案,而非对其限制;尽管参照前述申请对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各申请所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请权利要求的范围。