一种数据存储控制方法、装置、设备及可读存储介质与流程

文档序号:24192499发布日期:2021-03-09 15:36阅读:103来源:国知局
一种数据存储控制方法、装置、设备及可读存储介质与流程

1.本发明涉及存储系统领域,特别是涉及一种数据存储控制方法,本发明还涉及一种数据存储控制装置、设备及计算机可读存储介质。


背景技术:

2.在分层存储系统中具有存储空间较小的高速存储介质以及存储空间较大的低速存储介质,待存储的数据会先被缓存至高速存储介质中,然后再由高速存储介质将数据下刷至低速存储介质中,从而低成本地实现高速的数据存储,当低速存储介质中的任一存储单元(例如单个磁盘或者存储池)被存储满时系统便会报错,从而需要工作人员进行检修处理,因此需要尽量避免该情况的发生,然而现有技术中缺少一种成熟的控制方法来防止低速存储介质中的任一存储单元被存储满,因此工作人员经常需要进行检修处理,人力成本较高。
3.因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。


技术实现要素:

4.本发明的目的是提供一种数据存储控制方法,防止低速存储介质中的存储单元被存储满而报错,因此无需工作人员检修处理,降低了人力成本;本发明的另一目的是提供一种数据存储控制装置、设备及计算机可读存储介质,防止低速存储介质中的存储单元被存储满而报错,因此无需工作人员检修处理,降低了人力成本。
5.为解决上述技术问题,本发明提供了一种数据存储控制方法,包括:
6.每隔预设周期,获取低速存储介质中的目标存储单元的已存储数据量以及高速存储介质中与所述目标存储单元对应的待下刷数据量;
7.根据所述已存储数据量以及所述待下刷数据量之和判断所述目标存储单元是否达到预设存储上限;
8.若是,则禁止所述高速存储介质接收与所述目标存储单元对应的待存储数据;
9.若否,则解除对所述高速存储介质接收与所述目标存储单元对应的待存储数据的禁止。
10.优选地,所述目标存储单元为分布式存储系统中的由若干磁盘组成的存储池;
11.则所述获取低速存储介质中的目标存储单元的已存储数据量以及高速存储介质中与所述目标存储单元对应的待下刷数据量具体为:
12.获取目标存储池中各个所述磁盘的已存储数据量以及高速存储介质中与各个所述磁盘对应的待下刷数据量;
13.所述根据所述已存储数据量以及所述待下刷数据量之和判断所述目标存储单元是否达到预设存储上限具体为:
14.根据所述已存储数据量以及所述待下刷数据量之和计算出各个所述磁盘的已占
用空间百分比;
15.判断最大的所述已占用空间百分比是否达到预设阈值。
16.优选地,所述禁止所述高速存储介质接收与所述目标存储单元对应的待存储数据之后,该数据存储控制方法还包括:
17.控制提示器提示所述高速存储介质已被禁止接收与所述目标存储单元对应的待存储数据。
18.优选地,所述提示器包括蜂鸣器以及显示器。
19.优选地,所述高速存储介质为nvme ssd。
20.优选地,所述若是,则禁止所述高速存储介质接收与所述目标存储单元对应的待存储数据之后,该数据存储控制方法还包括:
21.判断所述目标存储单元的实时数据存储量是否达到所述预设存储上限;
22.若达到,则禁止所述高速存储介质向所述目标存储单元下刷数据;
23.则所述根据所述已存储数据量以及所述待下刷数据量之和判断所述目标存储单元是否达到预设存储上限之后,该数据存储控制方法还包括:
24.若根据所述已存储数据量以及所述待下刷数据量之和判断所述目标存储单元未达到所述预设存储上限,则解除对所述高速存储介质向所述目标存储单元下刷数据的禁止。
25.优选地,所述禁止所述高速存储介质向所述目标存储单元下刷数据之后,该数据存储控制方法还包括:
26.控制所述提示器提示所述高速存储介质已被禁止相所述目标存储单元下刷数据。
27.为解决上述技术问题,本发明还提供了一种数据存储控制装置,包括:
28.获取模块,用于每隔预设周期,获取低速存储介质中的目标存储单元的已存储数据量以及高速存储介质中与所述目标存储单元对应的待下刷数据量;
29.判断模块,用于根据所述已存储数据量以及所述待下刷数据量之和判断所述目标存储单元是否达到预设存储上限,若是,则触发禁止模块,若否,则触发解除模块;
30.所述禁止模块,用于禁止所述高速存储介质接收与所述目标存储单元对应的待存储数据;
31.所述解除模块,用于解除对所述高速存储介质接收与所述目标存储单元对应的待存储数据的禁止。
32.为解决上述技术问题,本发明还提供了一种数据存储控制设备,包括:
33.存储器,用于存储计算机程序;
34.处理器,用于执行所述计算机程序时实现如上所述数据存储控制方法的步骤。
35.为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述数据存储控制方法的步骤。
36.本发明提供了一种数据存储控制方法,考虑到高速存储介质中的数据会不断地下刷到对应的存储单元中,因此本申请可以在根据目标存储单元的已存储数据量以及高速存储介质中与目标存储单元对应的待下刷数据量之和判定目标存储单元达到预设存储上限时,禁止高速存储介质接收与目标存储单元对应的待存储数据,从而使得后续过程中目标
存储单元的数据存储总量仅能达到预设存储上限,并且可以在目标存储单元已存储数据量以及待下刷数据量之和未达到预设存储上线时解除禁止,从而自动化的实现数据存储控制,防止低速存储介质中的存储单元被存储满而报错,因此无需工作人员检修处理,降低了人力成本。
37.本发明还提供了一种数据存储控制装置、设备及计算机可读存储介质,具有如上数据存储控制方法相同的有益效果。
附图说明
38.为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
39.图1为本发明提供的一种数据存储控制方法的流程示意图;
40.图2为本发明提供的一种数据存储控制装置的结构示意图;
41.图3为本发明提供的一种数据存储控制设备的结构示意图。
具体实施方式
42.本发明的核心是提供一种数据存储控制方法,防止低速存储介质中的存储单元被存储满而报错,因此无需工作人员检修处理,降低了人力成本;本发明的另一核心是提供一种数据存储控制装置、设备及计算机可读存储介质,防止低速存储介质中的存储单元被存储满而报错,因此无需工作人员检修处理,降低了人力成本。
43.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
44.请参考图1,图1为本发明提供的一种数据存储控制方法的流程示意图,该数据存储控制方法包括:
45.步骤s1:每隔预设周期,获取低速存储介质中的目标存储单元的已存储数据量以及高速存储介质中与目标存储单元对应的待下刷数据量;
46.具体的,考虑到如上背景技术中的技术问题,又结合考虑到高速存储介质中的数据会不断地下刷到对应的存储单元中,因此可以同时对低速存储介质中的目标存储单元的已存储数据量以及高速存储介质中与目标存储单元对应的待下刷数据量进行监测,也就是说把高速存储介质中与目标存储单元对应的待下刷数据量看作是目标存储单元已存储数据的一部分,从而在后续步骤中判断目标存储单元是否应该继续接收数据并做出相应的控制。
47.其中,本发明实施例中获取到的已存储数据量以及待下刷数据量可以作为后续步骤中的数据基础。
48.具体的,预设周期可以进行自主设定,例如可以设置为1min等,本发明实施例在此不做限定。
49.步骤s2:根据已存储数据量以及待下刷数据量之和判断目标存储单元是否达到预设存储上限;
50.具体的,由于把待下刷数据量看作了已存储数据量的一部分,因此本发明实施例中可以根据已存储数据量以及待下刷数据量之和判断目标存储单元是否达到自身对应的预设存储上限,从而便能够得出目标存储单元是否适宜继续存储数据,根据判断结果可以触发后续步骤中的相关控制动作,从而实现数据存储控制。
51.其中,预设存储上限可以表示防止存储单元数据存储饱和的最大上限值,其可以有多种设定方式,例如可以由工作人员自主设定或者按照一定的设置规则自动生成等,本发明实施例在此不做限定。
52.步骤s3:若是,则禁止高速存储介质接收与目标存储单元对应的待存储数据;
53.具体的,在达到存储上限的情况下,则表明目标存储单元不应继续接收新的数据,当然这里不包括前述步骤中获取的高速存储介质中已经存在的待下刷数据,但是除了高速存储介质中的这部分待下刷数据之外,目标存储单元不应再存储额外的数据,为了进行限制,本发明实施例中可以通过“禁止高速存储介质接收与目标存储单元对应的待存储数据”的方式来便捷地达到这个目的。
54.当然,除了本步骤的控制方式外,还可以通过其他方式实现禁止目标存储单元存储除待下刷数据以外数据的目的,本发明实施例在此不做限定。
55.步骤s4:若否,则解除对高速存储介质接收与目标存储单元对应的待存储数据的禁止。
56.具体的,考虑到在“禁止高速存储介质接收与目标存储单元对应的待存储数据”之后,可能由于用户主动移除数据或者转存数据等原因,已存储数据量以及待下刷数据量之和已经小于预设存储上限,此种情况下应该快速恢复存储系统的正常工作,因此本发明实施例中还可以在判定未达到预设存储上限的时候,接触对高速存储介质接收与目标存储单元对应的待存储数据的禁止,从而自动化地实现目标存储单元工作的恢复。
57.本发明提供了一种数据存储控制方法,考虑到高速存储介质中的数据会不断地下刷到对应的存储单元中,因此本申请可以在根据目标存储单元的已存储数据量以及高速存储介质中与目标存储单元对应的待下刷数据量之和判定目标存储单元达到预设存储上限时,禁止高速存储介质接收与目标存储单元对应的待存储数据,从而使得后续过程中目标存储单元的数据存储总量仅能达到预设存储上限,并且可以在目标存储单元已存储数据量以及待下刷数据量之和未达到预设存储上线时解除禁止,从而自动化的实现数据存储控制,防止低速存储介质中的存储单元被存储满而报错,因此无需工作人员检修处理,降低了人力成本。
58.在上述实施例的基础上:
59.作为一种优选的实施例,目标存储单元为分布式存储系统中的由若干磁盘组成的存储池;
60.则获取低速存储介质中的目标存储单元的已存储数据量以及高速存储介质中与目标存储单元对应的待下刷数据量具体为:
61.获取目标存储池中各个磁盘的已存储数据量以及高速存储介质中与各个磁盘对应的待下刷数据量;
62.根据已存储数据量以及待下刷数据量之和判断目标存储单元是否达到预设存储上限具体为:
63.根据已存储数据量以及待下刷数据量之和计算出各个磁盘的已占用空间百分比;
64.判断最大的已占用空间百分比是否达到预设阈值。
65.具体的,本申请可以应用于分布式分层存储系统或者常规的存储系统中,在分布式分层存储系统中,一个存储单元也即一个存储池中包含多个磁盘,在下刷数据时会随机地下刷到存储池中的各个磁盘中,因此可以在存储池各个磁盘中最大的已占用空间百分比达到预设阈值时,即可禁止高速存储介质接收该存储池对应的待存储数据,从而保证该存储池中不会有磁盘的存储量达到100%。
66.其中,预设阈值可以进行自主设定,本发明实施例在此不做限定。
67.值得一提的是,在分布式分层存储系统中,每个磁盘通过一个守护进程osd(object-based storage device,对象存储设备)来管理,osd实现了数据读写、幅值、平衡以及恢复等功能,而mon(monitor集群的监视器守护进程)可以统一对osd进行管理,因此,本申请可以应用于由mon以及各个osd组成的大的控制模块中。
68.作为一种优选的实施例,禁止高速存储介质接收与目标存储单元对应的待存储数据之后,该数据存储控制方法还包括:
69.控制提示器提示高速存储介质已被禁止接收与目标存储单元对应的待存储数据。
70.具体的,为了便于用户及时的发现存储单元无法继续存储数据的状态,本发明实施例可以主动控制提示器提示高速存储介质已被禁止接收与目标存储单元对应的待存储数据,从而便于用户进行数据转移等应对措施,以便存储系统高效地进行工作,提高了工作效率。
71.作为一种优选的实施例,提示器包括蜂鸣器以及显示器。
72.具体的,显示器可以用于显示目标存储单元数据存储量已达预设存储上限,蜂鸣器可以迅速引起用户注意,两者的组合具有良好的提示效果。
73.当然,除了上述组合外,提示器还可以为其他多种类型,本发明实施例在此不做限定。
74.作为一种优选的实施例,高速存储介质为nvme ssd(non-volatile memory express-solid state disk,非易失性内存主机控制器接口规范固态硬盘)。
75.具体的,nvme ssd具有传输速度快、寿命长以及体积小等优点。
76.当然,除了nvme ssd外,高速存储介质还可以为其他多种类型,本发明实施例在此不做限定。
77.作为一种优选的实施例,若是,则禁止高速存储介质接收与目标存储单元对应的待存储数据之后,该数据存储控制方法还包括:
78.判断目标存储单元的实时数据存储量是否达到预设存储上限;
79.若达到,则禁止高速存储介质向目标存储单元下刷数据;
80.则根据已存储数据量以及待下刷数据量之和判断目标存储单元是否达到预设存储上限之后,该数据存储控制方法还包括:
81.若根据已存储数据量以及待下刷数据量之和判断目标存储单元未达到预设存储上限,则解除对高速存储介质向目标存储单元下刷数据的禁止。
82.具体的,考虑到可能由于高速存储介质在某个预设周期内接收到目标存储单元对应的大量的待存储数据等原因,导致已存储数据量以及待下刷数据量之和超出预设存储上限,在这种情况下仅仅禁止高速存储介质接收目标存储单元对应的待存储数据是不够的,因此本申请中还可以在目标存储单元的实时数据存储量达到预设存储上限的时候,禁止高速存储介质向目标存储单元下刷数据,从而进一步保障存储单元的数据不会被存储满。
83.其中,在根据已存储数据量以及待下刷数据量之和判断目标存储单元未达到预设存储上限的时候,本申请还可以解除对高速存储介质向目标存储单元下刷数据的禁止,从而保证存储系统自动地恢复数据存储。
84.作为一种优选的实施例,禁止高速存储介质向目标存储单元下刷数据之后,该数据存储控制方法还包括:
85.控制提示器提示高速存储介质已被禁止相目标存储单元下刷数据。
86.具体的,为了及时通知用户了解到禁止状况,本发明实施例中还可以控制提示器提示高速存储介质已被禁止相目标存储单元下刷数据,以便用户及时采取数据转移等措施,以尽快恢复存储系统的正常工作,有利于提高工作效率。
87.请参考图2,图2为本发明提供的一种数据存储控制装置的结构示意图,该数据存储控制装置包括:
88.获取模块1,用于每隔预设周期,获取低速存储介质中的目标存储单元的已存储数据量以及高速存储介质中与目标存储单元对应的待下刷数据量;
89.判断模块2,用于根据已存储数据量以及待下刷数据量之和判断目标存储单元是否达到预设存储上限,若是,则触发禁止模块3,若否,则触发解除模块4;
90.禁止模块3,用于禁止高速存储介质接收与目标存储单元对应的待存储数据;
91.解除模块4,用于解除对高速存储介质接收与目标存储单元对应的待存储数据的禁止。
92.对于本发明实施例提供的数据存储控制装置的介绍请参照前述的数据存储控制方法的实施例,本发明实施例在此不再赘述。
93.请参考图3,图3为本发明提供的一种数据存储控制设备的结构示意图,该数据存储控制设备包括:
94.存储器5,用于存储计算机程序;
95.处理器6,用于执行计算机程序时实现如前述实施例中数据存储控制方法的步骤。
96.对于本发明实施例提供的数据存储控制设备的介绍请参照前述的数据存储控制方法的实施例,本发明实施例在此不再赘述。
97.本发明还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如前述实施例中数据存储控制方法的步骤。
98.对于本发明实施例提供的计算机可读存储介质的介绍请参照前述的数据存储控制方法的实施例,本发明实施例在此不再赘述。
99.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一
个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。
100.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1