一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

档案处理方法、装置、计算机设备和存储介质与流程

2023-01-17 11:33:34 来源:中国专利 TAG:


1.本技术涉及档案技术领域,特别是涉及一种档案处理方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

2.随着计算机技术的发展,云应用得以实现。云应用在服务器上安装并运行,服务器与本地终端通信,接收用户通过本地终端对安装在服务器上的云应用的远程操作,运行云应用,并将云应用运行产生的画面、数据等传输给本地终端。用户通过本地终端远程登录服务器上的云应用,在用户使用云应用的过程中,将产生用户的云应用存档文件,为给用户提供良好体验,需保存该用户的云应用存档文件。通常将用户的云应用存档文件存储在单一存储位置,该用户每次登录云应用时,可从该存储位置获取历史的云应用存档文件,使得用户基于历史的云应用存档文件继续使用云应用。
3.然而,传统方法将用户的云应用存档文件单点保存,当该存储位置出现异常时,存档文件将会丢失,存储可靠性不高。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够提高存储可靠性的档案处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
5.第一方面,本技术提供了一种档案处理方法。所述方法包括:
6.当发生针对目标节点组的存档事件时,在所述目标节点组执行对所述存档事件指示的第一档案的档案写入操作;所述档案写入操作包括:将所述第一档案存储到所述目标节点组中的主节点,再从所述主节点复制所述第一档案到所述目标节点组中的从节点;
7.当发生针对所述目标节点组的读档事件时,执行从所述目标节点组读取所述读档事件所指示的第二档案的档案读取操作;所述档案读取操作包括:从所述目标节点组中的主节点和从节点中选择处于正常工作状态的目标节点,从所述目标节点读取所述第二档案;其中,所述档案写入操作和所述档案读取操作是互斥的原子操作。
8.在其中一个实施例中,所述方法还包括:
9.获取针对目标节点组预配置的档案类型;
10.定期从临时存储云应用的档案的临时存储节点查询更新的档案;所述更新的档案属于所述档案类型,且还未由所述目标节点组存储;
11.当查询到所述更新的档案,触发针对所述目标节点组的存档事件。
12.在其中一个实施例中,所述方法还包括:
13.当所述目标节点组中的任意节点发生异常,异常的节点停止工作,为所述异常的节点创建第一临时同步表;
14.每当所述目标节点组中的主节点写入了档案,依次在所述第一临时同步表中添加针对所写入档案的待同步记录,直到所述第一临时同步表停用;
15.当所述异常的节点恢复正常后,依次按照所述第一临时同步表中的待同步记录进行回放,以将写入所述主节点的档案存储至恢复正常的节点,直到所述第一临时同步表中的待同步记录回放完毕时,停用所述第一临时同步表。
16.在其中一个实施例中,所述方法还包括:
17.当所述目标节点组中的主节点发生异常,从所述目标节点组中的从节点中选择一个处于正常工作状态的从节点,将选择的从节点更新为所述目标节点组的主节点。
18.在其中一个实施例中,所述方法还包括:
19.当所述目标节点组中的从节点发生异常,将异常的节点从所述目标节点组中剔除;
20.当所述异常的节点恢复正常后,将恢复正常的节点作为从节点重新加入所述目标节点组。
21.在其中一个实施例中,所述方法还包括:
22.响应于针对所述目标节点组的新增节点事件,对所述新增节点事件所指示的新增节点进行档案同步;所述档案同步包括:
23.创建与所述目标节点组对应的全量同步表,在所述全量同步表中添加所述主节点当前存储的档案的记录;
24.创建与所述新增节点事件指示的新增节点对应的第二临时同步表,每当所述目标节点组中的主节点写入了档案,依次在所述第二临时同步表中添加针对所写入档案的待同步记录,直到所述第二临时同步表停用;
25.将所述全量同步表中记录的档案存储到所述新增节点后,依次按照所述第二临时同步表中的待同步记录进行回放,以将写入主节点的档案存储至所述新增节点,直到所述第二临时同步表中的待同步记录回放完毕时,停用所述第二临时同步表。
26.在其中一个实施例中,所述方法还包括:
27.响应于针对所述目标节点组的扩容事件,在所述目标节点组中新增节点,针对新增的节点进行所述档案同步后,停用所述目标节点组中的主节点和从节点,并将新增的节点更新为所述目标节点组的主节点;
28.在所述目标节点组中再新增节点,针对再新增的节点进行所述档案同步后,将所述再新增的节点作为所述目标节点组的从节点。
29.第二方面,本技术还提供了一种档案处理装置。所述装置包括:
30.档案写入模块,用于当发生针对目标节点组的存档事件时,在所述目标节点组执行对所述存档事件指示的第一档案的档案写入操作;所述档案写入操作包括:将所述第一档案存储到所述目标节点组中的主节点,再从所述主节点复制所述第一档案到所述目标节点组中的从节点;
31.档案读取模块,用于当发生针对所述目标节点组的读档事件时,执行从所述目标节点组读取所述读档事件所指示的第二档案的档案读取操作;所述档案读取操作包括:从所述目标节点组中的主节点和从节点中选择处于正常工作状态的目标节点,从所述目标节点读取所述第二档案;其中,所述档案写入操作和所述档案读取操作是互斥的原子操作。
32.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
33.当发生针对目标节点组的存档事件时,在所述目标节点组执行对所述存档事件指示的第一档案的档案写入操作;所述档案写入操作包括:将所述第一档案存储到所述目标节点组中的主节点,再从所述主节点复制所述第一档案到所述目标节点组中的从节点;
34.当发生针对所述目标节点组的读档事件时,执行从所述目标节点组读取所述读档事件所指示的第二档案的档案读取操作;所述档案读取操作包括:从所述目标节点组中的主节点和从节点中选择处于正常工作状态的目标节点,从所述目标节点读取所述第二档案;其中,所述档案写入操作和所述档案读取操作是互斥的原子操作。
35.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
36.当发生针对目标节点组的存档事件时,在所述目标节点组执行对所述存档事件指示的第一档案的档案写入操作;所述档案写入操作包括:将所述第一档案存储到所述目标节点组中的主节点,再从所述主节点复制所述第一档案到所述目标节点组中的从节点;
37.当发生针对所述目标节点组的读档事件时,执行从所述目标节点组读取所述读档事件所指示的第二档案的档案读取操作;所述档案读取操作包括:从所述目标节点组中的主节点和从节点中选择处于正常工作状态的目标节点,从所述目标节点读取所述第二档案;其中,所述档案写入操作和所述档案读取操作是互斥的原子操作。
38.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
39.当发生针对目标节点组的存档事件时,在所述目标节点组执行对所述存档事件指示的第一档案的档案写入操作;所述档案写入操作包括:将所述第一档案存储到所述目标节点组中的主节点,再从所述主节点复制所述第一档案到所述目标节点组中的从节点;
40.当发生针对所述目标节点组的读档事件时,执行从所述目标节点组读取所述读档事件所指示的第二档案的档案读取操作;所述档案读取操作包括:从所述目标节点组中的主节点和从节点中选择处于正常工作状态的目标节点,从所述目标节点读取所述第二档案;其中,所述档案写入操作和所述档案读取操作是互斥的原子操作。
41.上述档案处理方法、装置、计算机设备、存储介质和计算机程序产品,将档案存储到目标节点组的主节点和从节点,形成多个档案备份,档案存储可靠性高;而且目标节点组中任意一个处于正常状态的节点可作为目标节点提供档案读取服务,灵活性高;目标节点组的档案写入操作和档案读取操作都是互斥的原子操作,档案写入操作和档案读取操作不会同时进行,避免读取到的档案不完整,提高档案存储和读取的可靠性。
附图说明
42.图1为一个实施例中档案处理方法的应用环境图;
43.图2为一个实施例中档案处理方法的流程示意图;
44.图3为一个实施例中处理目标节点组中异常节点的步骤的流程示意图;
45.图4为一个实施例中档案同步的步骤的流程示意图;
46.图5为一个实施例中临时存储节点集合与节点组集合交互关系示意图;
47.图6为一个实施例中档案处理装置的结构框图;
48.图7为一个实施例中计算机设备的内部结构图。
具体实施方式
49.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
50.本技术实施例提供的档案处理方法,可以应用于如图1所示的应用环境中。其中,档案处理方法在计算机设备102上运行,可访问至少一个节点组,目标节点组是至少一个节点组中的一个节点组。节点组可部署在计算机设备102上,也可以部署在计算机设备102可访问的另一计算机设备。节点组是至少两个节点的集合,包括一个主节点和至少一个从节点。节点是节点组中的通信端点,可以是虚拟的程序,也可以是实体设备。节点可以直接存储数据,也可以将数据存储到节点所映射的存储设备。计算机设备102通过网络与临时存储节点104或云主机106通信,计算机设备102可响应于通过临时存储节点104触发的存档事件,指示主节点和从节点实现各自的档案写入;计算机设备可响应于通过临时存储节点104或云主机106触发的读档事件,指示在从主节点或从节点中选择的目标节点实现档案读取。
51.其中,计算机设备102可以是终端,如台式计算机、笔记本电脑、智能手机或平板电脑;计算机设备102可以是服务器,可以用独立的服务器或者是多个服务器组成的服务器集群来实现;计算机设备102还可以是虚拟主机,通过独立的服务器或服务器群虚拟而成。临时存储节点104可以是终端,可以是服务器,还可以是虚拟主机。云主机106可以是虚拟主机或服务器。存储设备是各种可实现信息存储的设备,例如磁盘、磁盘阵列。
52.在一个实施例中,如图2所示,提供了一种档案处理方法,本实施例以该方法应用于图1中的计算机设备102为例进行说明,该方法包括以下步骤:
53.步骤202,当发生针对目标节点组的存档事件时,在目标节点组执行对存档事件指示的第一档案的档案写入操作;档案写入操作包括:将第一档案存储到目标节点组中的主节点,再从主节点复制第一档案到目标节点组中的从节点。
54.其中,目标节点组是本方法实施时所针对的节点组。目标节点组包括主节点和从节点。主节点是目标节点组中作为主角色的节点。从节点是目标节点组中作为从属角色的节点。本实施例中,主节点与从节点的区别在于:在目标节点组中触发存档事件时,主节点是首个写入档案的节点,从节点从主节点复制档案。目标节点组中每个节点是相互独立的。
55.档案是操作计算机软件时形成的需要存储状态并在之后通过读取档案以再现该状态的记录,可以是游戏存档或者办公软件的存档。存档事件是将档案进行存储的事件。第一档案是触发存档事件时所需存储的档案,与后续步骤204中触发读档事件时所需读取的档案相区分。档案写入操作是由目标节点组存储档案的操作。
56.在一个实施例中,计算机设备可获取针对目标节点组预配置的档案类型,响应于临时存储节点上的档案新增事件,从档案新增事件指示的档案中查询与针对目标节点组预配置的档案类型匹配的档案,在查询到匹配的档案时,触发针对目标节点组的存档事件。
57.在一个实施例中,临时存储节点可响应于通过云主机触发的档案生成事件,生成该档案生成事件指示的档案,获取针对目标节点组预配置的档案类型,并判断该生成的档案是否属于针对目标节点组预配置的档案类型,在该生成的档案属于针对目标节点组预配置的档案类型,且目标节点组中任意节点未在提供读取档案或写入档案功能的情况下,触发针对目标节点组的存档事件。其中,临时存储节点可与云主机通信。
58.在一个实施例中,计算机设备可响应于针对目标节点组的存档事件,判断目标节点组是否正在执行档案写入操作或档案读取操作,在目标节点组未执行档案写入操作也未执行档案读取操作的情况下,在目标节点组执行对存档事件指示的第一档案的档案写入操作。
59.在一个实施例中,当目标节点组存在多个从节点时,计算机设备可在将第一档案完成存储到主节点后,将第一档案从主节点同时复制到目标节点组的多个从节点。
60.步骤204,当发生针对目标节点组的读档事件时,执行从目标节点组读取读档事件所指示的第二档案的档案读取操作;档案读取操作包括:从目标节点组中的主节点和从节点中选择处于正常工作状态的目标节点,从目标节点读取第二档案;其中,档案写入操作和档案读取操作是互斥的原子操作。
61.其中,读档事件是指读取档案的事件。第二档案是触发读档事件时所需读取的档案,与步骤202中触发存档事件时所需存储的档案相区分。档案读取操作是从目标节点组读取档案的操作。互斥是指档案写入操作和档案读取操作不可同时进行。原子操作是指不会被线程调度机制打断的操作。原子操作开始后将不会被打断,并会一直运行到结束。
62.在一个实施例中,在目标节点组未执行档案写入操作也未执行档案读取操作的情况下,临时存储节点可响应于通过云主机触发的针对目标节点组的读档事件,执行从目标节点组读取读档事件所指示的第二档案的档案读取操作。
63.在一个实施例中,在目标节点组未执行档案写入操作也未执行档案读取操作的情况下,云主机可响应于终端通过远程网络操作触发的针对目标节点组的读档事件,执行从目标节点组读取读档事件所指示的第二档案的档案读取操作。
64.在一个实施例中,计算机设备可响应于针对目标节点组的读档事件,检测目标节点组中主节点和从节点工作状态,确定处于正常工作状态的主节点和从节点,从处于正常工作状态的主节点和从节点随机选择一个节点作为目标节点。
65.在一个实施例中,计算机设备可通过索引信息确定第二档案的存储位置,在目标节点中,从该存储位置读取第二档案。其中,索引信息是能够快速检索档案的记录,例如,索引信息可以是表征档案的档案编号的记录或表征档案的存储位置的记录等。
66.上述档案处理方法中,将档案存储到目标节点组的主节点和从节点,形成多个档案备份,档案存储可靠性高;而且目标节点组中任意一个处于正常状态的节点可作为目标节点提供档案读取服务,灵活性高;目标节点组的档案写入操作和档案读取操作都是互斥的原子操作,档案写入操作和档案读取操作不会同时进行,避免读取到的档案不完整,提高档案存储和读取的可靠性。
67.在一个实施例中,上述档案处理方法还包括根据目标节点组预配置的档案类型定期从临时存储节点查询更新的档案以触发存档事件的步骤,该步骤具体包括:获取针对目标节点组预配置的档案类型;定期从临时存储云应用的档案的临时存储节点查询更新的档案;更新的档案属于档案类型,且还未由目标节点组存储;当查询到更新的档案,触发针对目标节点组的存档事件。
68.其中,档案类型是按照分类依据将档案划分的不同种类。分类依据比如按档案所属地域划分,或者按档案所属云应用划分。云应用是安装并运行在服务器上的软件。临时存储节点用于在云主机启动云应用时挂载到所述云主机;还用于在关闭所述云应用时取消挂
载到所述云主机。定期可以是每隔预设时间间隔,或者按照动态变化的周期。
69.在一个实施例中,临时存储节点可对存储的云应用的档案生成快速查询表,该快速查询表记录有档案的档案编号、档案的档案类型以及档案的存档记录,档案的存档记录表征相应档案是否已存档到节点组。本实施例中,计算机设备可定期从临时存储节点的快速查询表中筛选档案,当筛选到属于目标节点组预配置的档案类型且存档记录是未存档到节点组的档案,触发针对目标节点组的存档事件。
70.在一个实施例中,计算机设备从临时存储节点查询更新的档案时,可确定从上次查询结束后临时存储节点中新出现的档案,遍历新出现的档案,确定遍历的档案是否属于档案类型且还未由目标节点组存储,当遍历的档案属于档案类型且还未由目标节点组存储,触发针对目标节点组的存档事件。
71.本实施例中,定期查询临时存储节点中档案,以发现需要存储到目标节点组的更新的档案,从而及时地将档案以多个备份存储,提高档案存储可靠性;而且,目标节点组存储预配置的档案类型的档案,可实现档案分流,避免因各节点组存储资源利用率不均而导致的资源浪费问题,进而提高档案存储的可靠性。
72.在一个实施例中,如图3所示,上述档案处理方法还包括处理目标节点组中异常节点的步骤。该步骤具体针对目标节点组任意发生异常的节点创建第一临时同步表,记录异常期间写入主节点的档案,并在异常的节点恢复正常后同步异常期间写入主节点的档案。在一个实施例中,该处理目标节点组中异常节点的步骤具体包括下述步骤302至步骤306。
73.步骤302,当目标节点组中的任意节点发生异常,异常的节点停止工作,为异常的节点创建第一临时同步表。
74.其中,异常是指节点无法正常工作。发生异常可以是断电、网络连接中断、存储设备损坏、感染病毒或其它。临时同步表是临时记录写入主节点的档案的表。第一临时同步表是节点发生异常时针对异常的节点创建的临时同步表,与目标节点组发生新增节点事件时针对新增节点创建的第二临时同步表相区分。
75.在一个实施例中,计算机设备可响应于针对目标节点组的存档事件或读档事件,检测目标节点组中主节点和从节点的工作状态,在检测到目标节点组中任意节点处于异常工作状态,使该异常的节点停止工作,并创建针对该异常的节点的第一临时同步表。
76.在一个实施例中,第一临时同步表可以是将数据保存在计算机设备的内存中的内存表。本实施例中,当目标节点组中任意节点发生异常,计算机设备可针对该异常的节点创建第一临时同步表,并针对第一临时同步表分配内存空间。
77.步骤304,每当目标节点组中的主节点写入了档案,依次在第一临时同步表中添加针对所写入档案的待同步记录,直到第一临时同步表停用。
78.其中,待同步记录是待同步的档案在临时同步表中的记录,可以表征档案的档案编号、档案的存储位置或档案本身记录的内容等。
79.在一个实施例中,计算机设备可记录异常的节点的异常时刻,从异常时刻起,每当目标节点组中的主节点写入了档案,从预计添加待同步记录到第一临时同步表中的首个位置起,依次在第一临时同步表中的连续位置添加针对所写入档案的待同步记录,直到第一临时同步表停用。
80.在一个实施例中,在异常的节点处于异常工作状态期间,每当目标节点组中的主
节点写入了档案,计算机设备可依次随机选择第一临时同步表中未添加有待同步记录的空位置,在第一临时同步表中选择的空位置上,添加针对所写入档案的待同步记录,直到第一临时同步表停用。
81.在一个实施例中,在第一临时同步表是内存表的情况下,计算机设备可将待同步记录存储至与第一临时同步表相应的内存空间中。
82.步骤306,当异常的节点恢复正常后,依次按照第一临时同步表中的待同步记录进行回放,以将写入主节点的档案存储至恢复正常的节点,直到第一临时同步表中的待同步记录回放完毕时,停用第一临时同步表。
83.其中,回放是指将待同步记录中记录的同步档案的行为再现。
84.在一个实施例中,当异常的节点恢复正常后,计算机设备可依次按照第一临时同步表中的待同步记录回放,每回放一条待同步记录,从主节点存储的档案中获取回放的待同步记录所表征的档案,并将获取的档案存储至恢复正常的节点,直到第一临时同步表中的待同步记录回放完毕。
85.在一个实施例中,在第一临时同步表是内存表的情况下,计算机设备可在第一临时同步表中待同步记录回放完毕时,清除第一临时同步表中的待同步记录,释放该待同步记录占用的内存空间。
86.在一个实施例中,在第一临时同步表是内存表的情况下,计算机设备可在第一临时同步表中待同步记录回放完毕时,删除第一临时同步表,释放分配给第一临时同步表的内存空间。
87.本实施例中,通过针对目标节点组中任意异常的节点创建的第一临时同步表,记录节点异常期间写入主节点的档案,使得节点恢复正常后可同步异常期间写入主节点的档案,保证了该恢复正常的节点重新加入目标节点组后,与目标节点组中的其它节点存储的档案相同,从而保证了目标节点组中各节点存储的档案的一致性,进而进一步提高了档案读取的可靠性。
88.在一个实施例中,上述档案处理方法还包括下述步骤:当目标节点组中的主节点发生异常,从目标节点组中的从节点中选择一个处于正常工作状态的从节点,将选择的从节点更新为目标节点组的主节点。
89.其中,更新是指改变节点的角色。
90.在一个实施例中,在目标节点组包括至少两个处于正常工作状态的从节点的情况下,当计算机设备检测到目标节点组中的主节点发生异常,将该异常的主节点从目标节点组中剔除,对目标节点组中处于正常工作状态的从节点按照预配置的排序规则进行排序,将排在首位的从节点更新为目标节点组的主节点。其中,排序规则可以是随机排序,也可以是对各从节点预先配置的顺序。
91.本实施例中,在主节点异常时选出一个新的主节点,使得目标节点组中一直包括一个主节点,从而为在目标节点组执行档案写入操作创造了条件,进而可提高档案存储的可靠性。
92.在一个实施例中,上述档案处理方法还包括下述步骤:当目标节点组中的从节点发生异常,将异常的节点从目标节点组中剔除;当异常的节点恢复正常后,将恢复正常的节点作为从节点重新加入目标节点组。
93.其中,剔除是指异常的节点不作为目标节点组的节点向外提供档案写入或档案读取的服务。恢复正常是指异常的节点的异常问题已被修复,可加入目标节点组向外提供档案写入或档案读取的服务。
94.在一个实施例中,在目标节点组中异常的节点恢复正常时,恢复正常的节点可向计算机设备发送恢复正常的信号,计算机设备接收到该节点恢复正常的信号后,将该恢复正常的节点作为从节点重新加入目标节点组。
95.在一个实施例中,计算机设备可从目标节点组中异常的节点的异常时刻起,定期检测异常的节点是否恢复正常,在检测到异常的节点恢复正常,将恢复正常的节点作为从节点重新加入目标节点组。
96.本实施例中,在目标节点组中的从节点发生异常时,将异常的节点从目标节点组中剔除,避免目标节点组向外提供服务时因异常的节点无法提供服务而出错;并且,将恢复正常的节点作为从节点重新加入目标节点组,使得该恢复正常的节点可以重新对外提供服务,充分利用节点资源。
97.在一个实施例中,上述档案处理方法还包括响应于针对目标节点组的新增节点事件,对新增节点事件所指示的新增节点进行档案同步的步骤,其中,新增节点事件是向目标节点组增加新的节点的事件。新增节点事件,具体可以是手动触发操作或自动触发事件。手动触发操作如针对目标节点组的新增节点功能键的点击。自动触发事件可以是目标节点组中异常节点处于异常状态的时间超过预设时长,或者可以是目标节点组中正常状态的节点数量小于或等于预设数量,还可以是识别到新接入的存储设备,还可以是发生针对目标节点组的扩容事件。
98.在一个实施例中,如图4所示,档案同步具体包括下述步骤402至步骤406。
99.步骤402,创建与目标节点组对应的全量同步表,在全量同步表中添加主节点当前存储的档案的记录。
100.其中,全量同步表是记录新增节点事件发生之前主节点存储的档案的表。
101.在一个实施例中,计算机设备可确定主节点当前存储的档案,在全量同步表中添加所确定的档案的记录。
102.在一个实施例中,计算机设备可确定新增节点事件发生的时刻,获取新增节点事件发生时刻前主节点存储的档案的索引信息,在全量同步表中添加表征获取的索引信息的记录。
103.在其它实施例中,计算机设备可确定新增节点事件发生的时刻,获取新增节点事件发生时刻前主节点存储的档案的索引信息,可基于索引信息确定主节点存储的档案的标识,从而在全量同步表中记录该档案的标识。
104.步骤404,创建与新增节点事件指示的新增节点对应的第二临时同步表,每当目标节点组中的主节点写入了档案,依次在第二临时同步表中添加针对所写入档案的待同步记录,直到第二临时同步表停用。
105.其中,第二临时同步表是与新增节点事件指示的新增节点对应临时同步表,与上述节点发生异常时针对异常的节点创建的第一临时同步表相区分。
106.在一个实施例中,计算机设备可记录新增节点事件的事件发生时刻,从该事件发生时刻起,每当目标节点组中的主节点写入了档案,从预计添加待同步记录到第二临时同
步表中的首个位置起,依次在第二临时同步表中的连续位置添加针对所写入档案的待同步记录,直到第二临时同步表停用。
107.在一个实施例中,在发生针对目标节点组的新增节点事件后,每当目标节点组中的主节点写入了档案,计算机设备可依次随机选择第二临时同步表中未添加有待同步记录的空位置,在第二临时同步表中选择的空位置上,添加针对所写入档案的待同步记录,直到第二临时同步表停用。
108.在一个实施例中,在第二临时同步表是内存表的情况下,计算机设备可在创建第二临时同步表时,针对第二临时同步表分配内存空间,将待同步记录存储至与第二临时同步表相应的内存空间中。
109.步骤406,将全量同步表中记录的档案存储到新增节点后,依次按照第二临时同步表中的待同步记录进行回放,以将写入主节点的档案存储至新增节点,直到第二临时同步表中的待同步记录回放完毕时,停用第二临时同步表。
110.在一个实施例中,计算机设备可根据全量同步表中的记录,从主节点中获取全量同步表中的记录表征的所有档案,将获取的档案存储到新增节点。
111.在一个实施例中,计算机设备可在将全量同步表中记录的档案存储到新增节点后,依次按照第二临时同步表中的待同步记录回放,每回放一条待同步记录,从主节点存储的档案中获取回放的待同步记录所表征的档案,并将获取的档案存储至新增节点,直到第二临时同步表中的待同步记录回放完毕时,停用第二临时同步表。
112.在一个实施例中,在第二临时同步表是内存表的情况下,计算机设备可在第二临时同步表中待同步记录回放完毕时,清除第二临时同步表中的待同步记录,释放该待同步记录占用的内存空间。
113.在一个实施例中,在第二临时同步表是内存表的情况下,计算机设备可在第二临时同步表中待同步记录回放完毕时,删除第二临时同步表,释放分配给第二临时同步表的内存空间。
114.本实施例中,当在目标节点组中新增节点时,通过全量同步表将主节点当前存储的档案存储到新增节点,使得新增节点中存储了新增的时刻前目标节点组中其它节点存储的档案;并且,通过第二临时同步表记录从新增的时刻起到新增节点档案同步结束期间写入主节点的档案,使得新增节点在档案同步结束时,存储的档案与目标节点组中的其它节点存储的档案相同,保证了目标节点组中各节点存储的档案的一致性,从而提高了档案读取的可靠性。
115.在一个实施例中,上述档案处理方法还包括响应于针对目标节点组的扩容事件在目标节点组新增进行档案同步后的节点,将新增的节点更新为主节点并再新增节点以新增从节点的步骤,该步骤具体包括:响应于针对目标节点组的扩容事件,在目标节点组中新增节点,针对新增的节点进行档案同步后,停用目标节点组中的主节点和从节点,并将新增的节点更新为目标节点组的主节点;在目标节点组中再新增节点,针对再新增的节点进行档案同步后,将再新增的节点作为目标节点组的从节点。
116.其中,扩容事件是扩大目标节点组的存储容量的事件。扩容事件具体可以是手动触发操作或自动触发事件。手动触发操作可以是针对目标节点组的扩容功能键的点击。自动触发事件可以是目标节点组满足预设条件,预设条件可以是目标节点组中任一节点的已
存储数据占比达到预设占比,或者可以是目标节点组中任一节点的已存储数据量达到预设数据量。
117.为扩容在目标节点组中新增的节点,可以是全新接入的存储设备的节点,还可以是原有的某一节点组中停用后的节点。停用的节点相应的存储设备经过格式化,即可再次被调用。
118.在一个实施例中,计算机设备可针对新增的节点执行步骤402至步骤406后,将新增的节点加入目标节点组,将目标节点组中的主节点和从节点从目标节点组中剔除,并将新增的节点更新为目标节点组的主节点。
119.本实施例中,通过在目标节点组新增节点,并将当前目标节点组所存储的档案存储到新增的节点,能够在目标节点组中新增存储容量更大的节点,并在新增的节点完全同步了目标节点组原来的主节点和从节点存储的档案,保证了档案不丢失;将新增的节点作为目标节点组中新的主节点,再新增节点,以添加新的从节点,在完成新的从节点加入目标节点组后,能够实现对目标节点组扩容,避免目标节点组存储空间不足造成无法存储档案的问题,从而提高了档案存储的可靠性。
120.在一个实施例中,提供了档案处理方法的一种具体的应用场景,如图5临时存储节点集合与节点组集合交互关系示意图所示,临时存储节点属于临时存储节点集合,目标节点组属于节点组集合,临时存储节点集合中各临时存储节点可与节点组集合中各节点组通信;其中,节点组集合可部署在计算机设备上,临时存储节点可通过计算机设备与节点组集合中各节点组通信,临时存储节点可挂载至云主机,存储云主机上云游戏的档案;云主机上可运行有云游戏,用户可通过终端远程操作云主机并通过游戏账号登录云主机上的云游戏,云主机也可以通过计算机设备与节点组集合中各节点组通信。
121.云主机可响应于用户通过游戏账号对云主机上云游戏的登录操作,触发针对目标节点组的读档事件,将临时存储节点挂载至云主机,并从存储了该云游戏的档案的目标节点组中的主节点和从节点中,选择处于正常工作状态的目标节点,从目标节点读取与该游戏账号和该云游戏相应的档案。
122.云主机可响应于用户通过游戏账号对云主机上云游戏的档案存储,在临时存储节点中存储该游戏账号此次登录云游戏期间的档案;在该游戏账号登出云游戏时,取消挂载临时存储节点至云主机。
123.计算机设备可定期从临时存储节点的快速查询表中筛选该云游戏的档案;当筛选到属于该云游戏且还未由目标节点组存储的档案,触发针对目标节点组的存档事件。计算机设备可响应于针对目标节点组的存档事件,将该存档事件指示的云游戏的档案存储到目标节点组中的主节点,再从主节点同时复制到目标节点组中的多个从节点。
124.计算机设备可在发生针对目标节点组的读档事件或存档事件时,检测目标节点组中主节点和从节点的工作状态,当检测到目标节点组中的主节点发生异常,异常的主节点停止工作,将异常的主节点从目标节点组中剔除,并从目标节点组中的从节点中选择一个处于正常工作状态的从节点,将选择的从节点更新为目标节点组的主节点;当检测到目标节点组中的从节点发生异常,异常的从节点停止工作,将异常的从节点从目标节点组中剔除。
125.计算机设备可在当目标节点组中主节点和从节点中任意节点发生异常时,针对异
常的节点创建第一临时同步表,每当目标节点组中的主节点写入了档案,依次在第一临时同步表中添加针对所写入档案的待同步记录,直到第一临时同步表停用;当异常的节点恢复正常后,依次按照第一临时同步表中的待同步记录进行回放,以将写入主节点的档案存储至恢复正常的节点,直到第一临时同步表中的待同步记录回放完毕时,停用第一临时同步表,并将恢复正常的节点作为从节点重新加入目标节点组。
126.计算机设备可响应于针对目标节点组的新增节点事件,对新增节点事件所指示的新增节点进行档案同步;档案同步包括:创建与目标节点组对应的全量同步表,在全量同步表中添加主节点当前存储的档案的记录;创建与新增节点事件指示的新增节点对应的第二临时同步表,每当目标节点组中的主节点写入了档案,依次在第二临时同步表中添加针对所写入档案的待同步记录,直到第二临时同步表停用;将全量同步表中记录的档案存储到新增节点后,依次按照第二临时同步表中的待同步记录进行回放,以将写入主节点的档案存储至新增节点,直到第二临时同步表中的待同步记录回放完毕时,停用第二临时同步表。
127.计算机设备可响应于针对目标节点组的扩容事件,在目标节点组中新增节点,针对新增的节点进行档案同步后,停用目标节点组中的主节点和从节点,并将新增的节点更新为目标节点组的主节点;在目标节点组中再新增节点,针对再新增的节点进行档案同步后,将再新增的节点作为目标节点组的从节点。
128.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
129.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的档案处理方法的档案处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个档案处理装置实施例中的具体限定可以参见上文中对于档案处理方法的限定,在此不再赘述。
130.在一个实施例中,如图6所示,提供了一种档案处理装置600,包括:档案写入模块610和档案读取模块620,其中:
131.档案写入模块610,用于当发生针对目标节点组的存档事件时,在目标节点组执行对存档事件指示的第一档案的档案写入操作;档案写入操作包括:将第一档案存储到目标节点组中的主节点,再从主节点复制第一档案到目标节点组中的从节点。
132.档案读取模块620,用于当发生针对目标节点组的读档事件时,执行从目标节点组读取读档事件所指示的第二档案的档案读取操作;档案读取操作包括:从目标节点组中的主节点和从节点中选择正常工作状态的目标节点,从目标节点读取第二档案;其中,档案写入操作和档案读取操作是互斥的原子操作。
133.在一个实施例中,档案写入模块610还用于获取针对目标节点组预配置的档案类型;定期从临时存储云应用的档案的临时存储节点查询更新的档案;更新的档案属于档案类型,且还未由目标节点组存储;当查询到更新的档案,触发针对目标节点组的存档事件。
134.在一个实施例中,档案处理装置600还包括异常节点恢复模块,异常节点恢复模块用于当目标节点组中的任意节点发生异常,异常的节点停止工作,为异常的节点创建第一临时同步表;每当目标节点组中的主节点写入了档案,依次在第一临时同步表中添加针对所写入档案的待同步记录,直到第一临时同步表停用;当异常的节点恢复正常后,依次按照第一临时同步表中的待同步记录进行回放,以将写入主节点的档案存储至恢复正常的节点,直到第一临时同步表中的待同步记录回放完毕时,停用第一临时同步表。
135.在一个实施例中,异常节点恢复模块还用于当目标节点组中的主节点发生异常,从目标节点组中的从节点中选择一个处于正常工作状态的从节点,将选择的从节点更新为目标节点组的主节点。
136.在一个实施例中,异常节点恢复模块还用于当目标节点组中的从节点发生异常,将异常的节点从目标节点组中剔除;当异常的节点恢复正常后,将恢复正常的节点作为从节点重新加入目标节点组。
137.在一个实施例中,档案处理装置600还包括节点新增模块,节点新增模块用于响应于针对目标节点组的新增节点事件,对新增节点事件所指示的新增节点进行档案同步;档案同步包括:创建与目标节点组对应的全量同步表,在全量同步表中添加主节点当前存储的档案的记录;创建与新增节点事件指示的新增节点对应的第二临时同步表,每当目标节点组中的主节点写入了档案,依次在第二临时同步表中添加针对所写入档案的待同步记录,直到第二临时同步表停用;将全量同步表中记录的档案存储到新增节点后,依次按照第二临时同步表中的待同步记录进行回放,以将写入主节点的档案存储至新增节点,直到第二临时同步表中的待同步记录回放完毕时,停用第二临时同步表。
138.在一个实施例中,节点新增模块还用于响应于针对目标节点组的扩容事件,在目标节点组中新增节点,针对新增的节点进行档案同步后,停用目标节点组中的主节点和从节点,并将新增的节点更新为目标节点组的主节点;在目标节点组中再新增节点,针对再新增的节点进行档案同步后,将再新增的节点作为目标节点组的从节点。
139.上述档案处理装置,将档案存储到目标节点组的主节点和从节点,形成多个档案备份,档案存储可靠性高;而且目标节点组中任意一个处于正常状态的节点可作为目标节点提供档案读取服务,灵活性高;目标节点组的档案写入操作和档案读取操作都是互斥的原子操作,档案写入操作和档案读取操作不会同时进行,避免读取到的档案不完整,提高档案存储和读取的可靠性。
140.上述档案处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
141.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端、服务器或虚拟主机,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口(input/output,简称i/o)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储执行档案处理
方法时需存储的档案。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种档案处理方法方法。
142.本领域技术人员可以理解,图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
143.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
144.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
145.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
146.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
147.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
148.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
149.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献