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

快照占用容量的查询方法、管理方法及相关装置和设备与流程

2022-05-08 05:42:07 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,具体涉及一种快照占用容量的查询方法、管理方法及相关装置和设备。


背景技术:

2.快照占用容量据逻辑卷格式不同而获取方法不尽相同。一般的,快照占用容量获取方法有两种:一种是统计所有快照中数据对象大小后获取得到所有快照的总占用容量,该种方法耗时长;另一种是通过objectmap获取快照个数从而获取快照总占用容量,该获取方式得到的快照总占用容量比实际快照总占用容量要大,精度较差。总的来说快照使用现有的方法所获取获得的快照总占用量容量准确率低,精度差。


技术实现要素:

3.本技术第一方面提供一种快照占用容量的查询方法,包括:
4.响应于快照占用容量查询请求,读取逻辑卷的快照占用容量索引表,其中,快照占用容量索引表包含快照标识信息以及与快照标识信息对应的快照占用容量信息;
5.依据所请求查询的快照标识信息,在快照占用容量索引表中查询与所请求查询的快照标识信息对应的快照占用容量信息;
6.依据查询到的快照占用容量信息,输出查询结果。
7.本技术第一方面提供的快照占用容量的查询方法,经由逻辑卷的快照占用容量索引表查询到与所请求查询的快照标识信息对应的快照占用容量信息,实现了对快照占用容量的快速准确查询,提高用户体验。
8.本技术第二方面提供一种快照占用容量的管理方法,包括:
9.响应于对逻辑卷的覆盖写请求,
10.利用覆盖写写入的数据量,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息,目标快照标识信息包括经覆盖写请求触发写时复制逻辑的至少部分快照所具有的快照标识信息;
11.其中,快照占用容量索引表包括快照标识信息以及与快照标识信息对应的快照占用容量信息。
12.本技术第二方面的快照占用容量的管理方法,以精简的索引表将快照标识信息以及与快照标识信息对应的快照占用容量信息进行保存,当接收到覆盖写请求可同步更新快照占用容量索引表中目标快照标识信息对应的快照占用容量信息,便于对快照占用容量信息的快速存储也便于后续对快照占用容量的查询工作。
13.本技术第三方面提供一种快照占用容量的查询装置,该装置包括:
14.读取单元,被配置为响应于快照占用容量查询请求,读取快照占用容量索引表,其中,快照占用容量索引表包含快照标识信息以及与快照标识信息对应的快照占用容量信息;
lock、objectmap、fast diff等特性,也是当前逻辑卷的默认格式。无论哪种格式的逻辑卷,其数据均条带化保存在分散的对象(object)中,即逻辑卷可看作一系列对象的组合,对逻辑卷的操作最终会化为对对象的操作。
34.分布式块存储中,逻辑卷为精简卷,即逻辑卷对象在初始状态均未创建,仅在实际使用时方创建对象并写入数据。format2格式逻辑卷的objectmap记录了逻辑卷各对象的状态,主要为“不存在”和“存在”。快照亦可使用快照objectmap记录快照对象状态。
35.快照占用容量据逻辑卷格式不同而获取方法不尽相同。
36.对format1格式逻辑卷因不支持objectmap特性,获取快照占用容量需依次获取各快照对象大小并累加后获取快照总占用容量。
37.对format2格式逻辑卷,其快照容量获取两种方式:1、依次获取所有快照对象大小后累加获取快照大小;2、根据快照objectmap获取快照已使用的快照对象个数,使用对象个数乘以对象大小获取快照占用容量大小。
38.统计所有快照对象大小先从存储介质中依次获取快照对象实际占用空间大小,再求和以获取快照总占用容量,此方法往往耗时较长,特别是逻辑卷较大时尤为明显。
39.现有快照占用容量获取方法总的来说有两种,一种是统计所有快照对象大小后获取快照总占用容量,一种是通过objectmap获取快照对象个数获取快照总占用容量,这两种获取方法均存在一定的问题。
40.统计所有快照对象大小先从存储介质中依次获取快照对象实际占用空间大小,再求和以获取快照总占用容量,此方法往往耗时较长,特别是逻辑卷较大时尤为明显。
41.通过objectmap方式获取快照占用容量在一定程度上提高了容量获取速度,但此方法存在获取精度较差问题。如在创建快照后向逻辑卷覆盖写1k数据,触发写时复制创建1个快照,并拷贝1k数据至快照,因此快照实际占用1k存储空间,但使用objectmap获取快照占用容量为1*4m=4m,故快照获取占用容量比实际占用空间放大了4096倍(4m/1k)。
42.此外在定时快照场景下,同一个逻辑卷的快照可能达到数千甚至上万个,每个快照查询均为秒级则总耗时为分钟级。
43.鉴于对上述技术问题的分析和发现提出本技术。
44.图1示出了本技术第一方面的一个实施例中快照占用容量的查询方法的流程图。如图1所示,本技术第一方面的一实施例中快照占用容量的查询方法,包括:
45.s10:响应于快照占用容量查询请求,读取逻辑卷的快照占用容量索引表,其中,快照占用容量索引表包含快照标识信息以及与快照标识信息对应的快照占用容量信息;
46.s20:依据所请求查询的快照标识信息,在快照占用容量索引表中查询与所请求查询的快照标识信息对应的快照占用容量信息;
47.s30:依据查询到的快照占用容量信息,输出查询结果。
48.本技术第一方面实施例提供的快照占用容量的查询方法,经由逻辑卷的快照占用容量索引表查询到与所请求查询的快照标识信息对应的快照占用容量信息,实现了对快照占用容量的快速准确查询,提高用户体验。
49.在本技术第一方面一些可选的实施例中,快照占用容量的查询方法应用于分布式存储系统,可以实现对批量快照的快照占用容量秒级查询,提升了分布式存储系统的可靠性和易用性。
50.在本技术第一方面一些可选的实施例中,本技术第一方面实施例中快照占用容量的查询方法适用于format1格式逻辑卷也适用于format2格式逻辑卷。
51.在本技术第一方面一些可选的实施例中,分布式块存储中,快照为逻辑卷某时刻的只读映像。对快照而言,当对逻辑卷进行覆盖写时会触发快照写时复制逻辑,复制覆盖写请求中待写入逻辑卷的数据至快照,同时写入数据至逻辑卷原对象,故只读快照最大占用空间和原逻辑卷大小一致。
52.在本技术第一方面一些可选的实施例中,所请求查询的快照标识信息包含逻辑卷中的部分或全部快照标识信息。在一些示例中,部分快照标识信息指单个或多个快照标识信息。在这些实施例中,可以从快照占用容量索引表一次读取的方式批量获取快照占用容量,大大缩短了批量快照占用容量的查询时间,进一步提高了分布式存储系统的易用性。
53.在本技术第一方面一些可选的实施例中,步骤s30依据查询到的快照占用容量信息,输出查询结果包括:
54.输出批量快照的快照占用容量,或者,
55.输出单个快照的快照占用容量,或者,
56.对查询到批量快照的快照占用容量进行累加后输出批量快照的快照总占用容量。
57.在本技术第一方面一些可选的实施例中,读取快照占用容量索引表包括:
58.从逻辑卷的元数据中读取快照占用容量索引表;或者,
59.从数据库中读取快照占用容量索引表。
60.在这些实施例中,分布式块存储逻辑卷主要有两种数据:属性数据和业务数据,其中,属性数据为逻辑卷的元数据,如逻辑卷创建时间、快照信息、逻辑卷对象信息(objectmap)、逻辑卷特性信息(例如排它锁、fast-diff)等。业务信息为写入逻辑卷的数据,
61.在一些示例中,快照占用容量索引表为key-value数据表,其中,key表示快照标示信息,value表示各快照标示信息对应的数据结构,数据结构包含偏移量、数据记录长度及总长度等内容,快照占用容量通过数据结构获得。在这些示例中,快照占用容量索引表的表结构极精简可以保持快照占用容量存取速度。表1示出了快照占用容量索引表格的格式。
62.表1
63.keyvalue第一快照标识信息快照占用容量a第二快照标识信息快照占用容量b
………
64.在本技术第一方面一些可选的实施例中,快照占用容量索引表采用如下方式进行管理:
65.响应于对逻辑卷的覆盖写请求,
66.利用覆盖写写入的数据量,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息,目标快照标识信息包括经覆盖写请求触发写时复制逻辑的至少部分快照所具有的快照标识信息。
67.如图2所示,本技术第二方面提供一种快照占用容量的管理方法,包括:
68.s01:响应于对逻辑卷的覆盖写请求。
69.s02:利用覆盖写写入的数据量,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息,目标快照标识信息包括经覆盖写请求触发写时复制逻辑的至少部分快照所具有的快照标识信息;
70.其中,快照占用容量索引表包括快照标识信息以及与快照标识信息对应的快照占用容量信息。
71.本技术第二方面的快照占用容量的管理方法,以精简的索引表将快照标识信息以及与快照标识信息对应的快照占用容量信息进行保存,当接收到覆盖写请求可同步更新快照占用容量索引表中目标快照标识信息对应的快照占用容量信息,便于对快照占用容量信息的快速存储也便于后续对快照占用容量的查询工作。
72.本技术第二方面一些可选的实施例中,分布式块存储中,快照为逻辑卷某时刻的只读映像,逻辑卷某时刻的只读映像可以有多个快照,当对逻辑卷进行覆盖写时会触发多个对应逻辑卷同一时刻的快照写时复制逻辑,多个对应逻辑卷同一时刻的快照均复制有覆盖写请求中待写入逻辑卷的数据。即,多个对应逻辑卷同一时刻的快照中数据均相同。
73.在本技术第二方面一些可选的实施例中,目标快照标识信息为经所述覆盖写请求触发写时复制逻辑的最新快照所具有的快照标识信息。在这些实施例中,无需要在快照占用容量索引表中对逻辑卷同一时刻的所有快照标识信息对应的快照占用容量信息进行保存,避免了更新快照占用容量索引表的次数与频率,有利于提高对快照占用容量索引表的读写速度。
74.在本技术第二方面的一些可选的实施例中,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息包括:
75.加载逻辑卷的快照占用容量索引表至内存;
76.更新逻辑卷的快照占用容量索引表后,将更新后的快照占用容量索引表持久化至硬盘。
77.在本技术第二方面的一些可选的实施例中,快照占用容量索引表存储于逻辑卷的元数据中或存储于数据库。
78.在一些示例中,当快照占用容量索引表存储于逻辑卷的元数据中时,当客户端对逻辑卷发起io请求时,打开逻辑卷,并将逻辑卷的元数据加载至内存。
79.在本技术第二方面的一些可选的实施例中,在利用覆盖写写入的数据量,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息之前,还包括:
80.判断逻辑卷是否存在快照,如果是,继续执行利用覆盖写写入的数据量,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息的步骤;否则,直接执行覆盖写。
81.在一些可选的实施例中,对io请求进行判断,当io请求为覆盖写请求则继续判断逻辑卷是否存在快照。当io请求不为覆盖写请求时则直接执行io请求。
82.如图3所示,在本技术第二方面的一些具体示例中,快照占用容量的管理方法包括以下流程:
83.当客户端对逻辑卷发起io请求,打开逻辑卷,并将逻辑卷的元数据加载至内存。在该示例中,快照占用容量索引表以key-value数据表的形式记录在逻辑卷的元数据,该步骤的目的是将快照占用容量索引表加载至内存。
84.对io请求进行判断,当io请求为覆盖写请求则继续判断逻辑卷是否存在快照。当io请求不为覆盖写请求时则直接执行io请求。
85.判断逻辑卷是否存在快照,如果是,继续执行利用覆盖写写入的数据量,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息,目标快照标识信息包括经覆盖写请求触发写时复制逻辑的最新快照所具有的快照标识信息的步骤。快照占用容量索引表包括快照标识信息以及与快照标识信息对应的快照占用容量信息;否则,直接执行为覆盖写的io请求。
86.更新逻辑卷的快照占用容量索引表后,将更新后的快照占用容量索引表持久化至硬盘。
87.执行io请求至完成。
88.本技术第三方面提供一种快照占用容量的查询装置,该装置包括:
89.读取单元,被配置为响应于快照占用容量查询请求,读取快照占用容量索引表,其中,快照占用容量索引表包含快照标识信息以及与快照标识信息对应的快照占用容量信息;
90.查询单元,被配置为依据所请求查询的快照标识信息,在快照占用容量索引表中查询与所请求查询的快照标识信息对应的快照占用容量信息;
91.输出单元,被配置为依据查询到的快照占用容量信息,输出查询结果。
92.本技术第四方面提供一种快照占用容量的管理装置,该装置包括:
93.响应模块,被配置为响应于对逻辑卷的覆盖写请求,
94.更新模块,被配置为利用覆盖写写入的数据量,更新逻辑卷的快照占用容量索引表中目标快照标识信息对应的快照占用容量信息,目标快照标识信息包括经覆盖写请求触发写时复制逻辑的至少部分快照所具有的快照标识信息。
95.本技术第五方面提供一种电子设备,设备包括:
96.一个或多个处理器;
97.存储装置,用于存储一个或多个程序,
98.当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本技术第一方面的快照占用容量的查询方法以及本技术第二方面的快照占用容量的管理方法中任一所述的方法。
99.本技术第六方面提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行如如本技术第一方面的快照占用容量的查询方法以及本技术第二方面的快照占用容量的管理方法中任一所述的方法。
100.以上所述仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献