一种分布式存储系统容量统计方法、装置、设备及介质制造方法及图纸

技术编号:38208716 阅读:7 留言:0更新日期:2023-07-21 16:58
本申请公开了一种分布式存储系统容量统计方法、装置、设备及介质,涉及分布式存储技术领域,包括:当监测到分布式存储系统的目标对象中有数据块写入时,获取数据块的起始位置与终止位置;根据起始位置和终止位置生成一个目标数据集合,并将目标数据集合更新到位于所述目标对象的实际数据占用集合中;遍历位于同一个归置组上的所有目标对象中的实际数据占用集合,分别计算每个实际数据占用集合中所有集合的差值之和,得到各个目标对象的实际数据占用量;根据所有目标对象的实际数据占用量得到分布式存储系统的容量统计结果。本申请能够准确的统计出分布式存储系统的实际数据占用量,提升分布式存储系统的可用性与可靠性。提升分布式存储系统的可用性与可靠性。提升分布式存储系统的可用性与可靠性。

【技术实现步骤摘要】
一种分布式存储系统容量统计方法、装置、设备及介质


[0001]本申请涉及分布式存储
,特别涉及一种分布式存储系统容量统计方法、装置、设备及介质。

技术介绍

[0002]在当前主流的存储系统中,每个对象的容量统计采用的是总分配(申请)空间的统计方式,例如,在分布式块场景下,每个对象的总空间大小为4M(未分配与申请时),每个数据块写入该对象时会将待写入的数据块按一定规则映射到该4M的空间内,如当第一次写入时,写入8K大小的数据,且映射到对象空间的位置为512K,由于该4M的空间初始时未进行分配,因此该次写入时会根据映射的位置和数据块本身的大小对该4M空间进行分配,即先申请512K+8K的空间,然后在512k的位置写入8K数据,此时由于为该对象申请了512K+8K的空间,因此该对象占用的空间会被记为520K。在后续每次数据写入时都会依据上述方式,先对已分配空间进行分析,如果不够则重新申请,并在申请后写入对应的数据,如果空间已经分配过,则在对应的映射位置处写入对应的数据。
[0003]然而,上述容量统计方式无法精确统计出对象内的实际空间占用,如实际数据占用仅8K,但标记占用为520K,其中没有数据写入的地方为空洞。另外,在数据顺序写入的时候由于总是会接着申请,因此统计的容量信息是准确的,但在数据随机写入场景下,该方式所统计的容量信息与实际占用偏差较大(含有大量空洞区域),这样一来,在大量随机业务场景下,便会出现存储池所统计的使用量接近100%,但实际业务写入的数据量并不大,并且业务还可以继续写入很长时间,但是显示的使用率会给客户和一些使用场景带来较大的困扰,从而影响了存储系统的可用性。
[0004]综上,如何解决存储系统的容量统计与实际业务写入量相差较大的问题是本领域目前还有待进一步解决的问题。

技术实现思路

[0005]有鉴于此,本申请的目的在于提供一种分布式存储系统容量统计方法、装置、设备及介质,能够准确的统计出分布式存储系统的实际数据占用量,提升分布式存储系统的可用性与可靠性。其具体方案如下:
[0006]第一方面,本申请公开了一种分布式存储系统容量统计方法,包括:
[0007]当监测到分布式存储系统的目标对象中有数据块写入时,获取所述数据块的起始位置与终止位置;
[0008]根据所述起始位置和所述终止位置生成一个目标数据集合,并将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中;
[0009]遍历位于同一个归置组上的所有所述目标对象中的所述实际数据占用集合,分别计算每个所述实际数据占用集合中所有集合的差值之和,得到各个所述目标对象的实际数据占用量;
[0010]根据所有所述目标对象的所述实际数据占用量得到所述分布式存储系统的容量统计结果。
[0011]可选的,所述分布式存储系统容量统计方法,还包括:
[0012]在所述分布式存储系统的各个所述目标对象中创建所述实际数据占用集合,并在所述目标对象初始化时,对所述实际数据占用集合进行初始化操作。
[0013]可选的,所述将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中,包括:
[0014]对位于所述目标对象的实际数据占用集合进行遍历,并判断位于所述目标对象的实际数据占用集合中是否存在与所述目标数据集合有交集的集合;
[0015]若所述实际数据占用集合中不存在与所述目标数据集合有交集的集合,则将所述目标数据集合插入到所述实际数据占用集合中。
[0016]可选的,所述将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中,包括:
[0017]若所述实际数据占用集合中存在与所述目标数据集合有交集的集合,则获取所有与所述目标数据集合有交集的集合;
[0018]计算所有与所述目标数据集合有交集的集合的并集,得到一个新集合,并将所述新集合插入到所述实际数据占用集合中。
[0019]可选的,所述将所述新集合插入到所述实际数据占用集合中,包括:
[0020]按照起始位置从小到大的顺序将所述新集合插入到所述实际数据占用集合中。
[0021]可选的,所述分布式存储系统容量统计方法,还包括:
[0022]获取位于同一个存储设备的所有所述归置组对应的容量统计结果;
[0023]计算所有所述容量统计结果之和,得到所述存储设备的实际数据占用空间,并根据所述实际数据占用空间计算所述存储设备的剩余可用空间。
[0024]可选的,所述分别计算每个所述实际数据占用集合中所有集合的差值之和,得到各个所述目标对象的实际数据占用量,包括:
[0025]分别计算每个所述实际数据占用集合中所有集合的终止位置与起始位置的差值,并计算所有所述差值之和,得到各个所述目标对象的实际数据占用量。
[0026]第二方面,本申请公开了一种分布式存储系统容量统计装置,包括:
[0027]位置信息获取模块,用于当监测到分布式存储系统的目标对象中有数据块写入时,获取所述数据块的起始位置与终止位置;
[0028]数据集合生成模块,用于根据所述起始位置和所述终止位置生成一个目标数据集合;
[0029]数据集合更新模块,用于将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中;
[0030]遍历模块,用于遍历位于同一个归置组上的所有所述目标对象中的所述实际数据占用集合;
[0031]计算模块,用于分别计算每个所述实际数据占用集合中所有集合的差值之和,得到各个所述目标对象的实际数据占用量;
[0032]容量统计模块,用于根据所有所述目标对象的所述实际数据占用量得到所述分布
式存储系统的容量统计结果。
[0033]第三方面,本申请公开了一种电子设备,包括处理器和存储器;其中,所述处理器执行所述存储器中保存的计算机程序时实现前述的分布式存储系统容量统计方法。
[0034]第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述的分布式存储系统容量统计方法。
[0035]可见,本申请当监测到分布式存储系统的目标对象中有数据块写入时,获取所述数据块的起始位置与终止位置,然后根据所述起始位置和所述终止位置生成一个目标数据集合,并将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中,接着遍历位于同一个归置组上的所有所述目标对象中的所述实际数据占用集合,分别计算每个所述实际数据占用集合中所有集合的差值之和,得到各个所述目标对象的实际数据占用量,再根据所有所述目标对象的所述实际数据占用量得到所述分布式存储系统的容量统计结果。本申请通过在分布式存储系统的对象中预先创建一个实际数据占用集合,能够准确的统计出分布式存储系统的实际数据占用量,提升分布式存储系统的可用性与可靠性,解决了存储系统的容量统计与实际业务写入量相差较大的问题。
附图说明
[0036]为了更清楚地说明本申请实施例或现有技术中的技术方案,下本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式存储系统容量统计方法,其特征在于,包括:当监测到分布式存储系统的目标对象中有数据块写入时,获取所述数据块的起始位置与终止位置;根据所述起始位置和所述终止位置生成一个目标数据集合,并将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中;遍历位于同一个归置组上的所有所述目标对象中的所述实际数据占用集合,分别计算每个所述实际数据占用集合中所有集合的差值之和,得到各个所述目标对象的实际数据占用量;根据所有所述目标对象的所述实际数据占用量得到所述分布式存储系统的容量统计结果。2.根据权利要求1所述的分布式存储系统容量统计方法,其特征在于,还包括:在所述分布式存储系统的各个所述目标对象中创建所述实际数据占用集合,并在所述目标对象初始化时,对所述实际数据占用集合进行初始化操作。3.根据权利要求1所述的分布式存储系统容量统计方法,其特征在于,所述将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中,包括:对位于所述目标对象的实际数据占用集合进行遍历,并判断位于所述目标对象的实际数据占用集合中是否存在与所述目标数据集合有交集的集合;若所述实际数据占用集合中不存在与所述目标数据集合有交集的集合,则将所述目标数据集合插入到所述实际数据占用集合中。4.根据权利要求3所述的分布式存储系统容量统计方法,其特征在于,所述将所述目标数据集合更新到位于所述目标对象的实际数据占用集合中,包括:若所述实际数据占用集合中存在与所述目标数据集合有交集的集合,则获取所有与所述目标数据集合有交集的集合;计算所有与所述目标数据集合有交集的集合的并集,得到一个新集合,并将所述新集合插入到所述实际数据占用集合中。5.根据权利要求4所述的分布式存储系统容量统计方法,其特征在于,所述将所述新集合插入到所述实际数据占用集合中,包括:按照起始位置从小到大的...

【专利技术属性】
技术研发人员:丁纯杰孙润宇侯斌
申请(专利权)人:济南浪潮数据技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1