一种分级存储系统及其逻辑卷管理方法

文档序号:6584557阅读:214来源:国知局
专利名称:一种分级存储系统及其逻辑卷管理方法
技术领域
本发明涉及计算机存储技术领域,特别涉及一种分级存储系统及其逻辑卷管理方 法。
背景技术
随着存储和网络技术的不断发展,网络存储的容量成指数级增长。企业级的存储 用户希望数据具有更高的可靠性,并且能够持续访问企业服务器管理的数据;同时,存储服 务器的系统管理员也希望有更高效率的存储管理策略。在企业级存储服务器的使用过程中,系统管理员希望存储资源能够动态调节,而 不是在开始使用时就要预见某个存储资源在未来可能需要的容量。在某个存储资源即将耗 尽时,能够在线扩容,保证数据的可持续性访问。逻辑卷管理(LVM,Logical Volume Manager)提供了解决上述问题的方案。LVM是 建立在硬盘和分区之上的一个逻辑层,用于提高磁盘分区管理的灵活性。图1所示为现有 技术的具有逻辑卷管理的存储系统逻辑结构示意图。卷管理模块102在存储系统100中的 位置处于前端协议驱动模块101之下,接收读取/写入命令,通过自身的功能,将读取/写 入命令分发,经过缓存模块103到物理存储资源驱动模块104中。通过LVM系统,管理员可以轻松管理磁盘分区。如将若干个磁盘分区连接为一 个整块的卷组(volume group),形成一个存储池。管理员可以在卷组上随意创建逻辑卷组 (logical volumes),并进一步在逻辑卷组上创建文件系统。管理员通过LVM可以方便的调 整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配,从而提高了 存储管理的效率。图2所示为逻辑卷管理物理区段到逻辑区段的映射关系示意图。逻辑卷管理模块 102将物理卷(PV,Physical Volume)组成卷组(VG,Volume Group),在卷组上划分逻辑卷 (LV, Logical Volume)。在将PV分配给卷组之后,就可以创建任意大小的LV(只要不超过 VG的大小)。为了实现物理卷到逻辑卷的映射关系,逻辑卷管理模块102还将物理卷和逻辑 卷划分为更小粒度的区段,称为物理区段(PE,Physical Extent)和逻辑区段(LE,Logical Extent)。物理区段和逻辑区段总是一一对应的。逻辑卷管理虽然很好地解决了分区管理的问题,但是由于用户在申请存储资源 (即划分逻辑卷)的时候,总会考虑以后的使用而事先划分大容量的空间,而且在实际使用 时,真正使用的空间远远小于事先划分的空间,逻辑卷管理依然存在存储资源浪费,使用效 率低的问题。

发明内容
有鉴于此,本发明的目的在于,提出一种应用于分级存储系统的逻辑卷管理方法, 可以实现自动精简配置,提高存储资源的使用效率。该方法设置一卷组位图表,所述卷组位图表的位数为组成卷组的物理卷的物理区段数之和,卷组位图表的位与物理卷的物理区段一一对应;卷组位图表中的位设置为有效 表示对应的物理区段已被占用,卷组位图表中的位设置为无效表示对应的物理区段未被占 用;该方法并包括如下步骤A、初始化一个映射数组,该映射数组中每一个元素对应于卷组位图表中的一个位,元素值表示所对应的为在卷组位图表中的位置;B、在卷组的位图表中寻找一个设置为无效的位,并将该位的值设置为有效;C、将所找到的位所在卷组位图表中的位置记录到逻辑卷的映射数组对应的元素 中;D、新建一个逻辑卷,所述逻辑卷映射于所找到的位对应的物理区段。所述映射数组的元素值等于卷组位图表中与所述元素值对应的位的序号;若映射 数组的元素值为-1,表明尚未映射到物理区段。所述步骤B之前进一步包括将逻辑卷申请的存储空间进行调整,将申请的存储 空间的大小按照逻辑区段的大小进行对齐,从而确保逻辑卷的逻辑区段个数为整数。步骤B所述在卷组的位图表中寻找一个设置为无效的位的步骤中,若没有找到设 置为无效的位,则执行如下步骤进行错误信息反馈,通知系统管理员进行卷组扩容。所述步骤D之后,进一步包括E、将读写访问的地址进行转换,换算成逻辑卷的逻辑区段号;F、用所述逻辑区段号查找映射数组,得出对应的映射数组元素的值;G、根据元素值跳转到对应的物理区段,并对所述物理区段进行读写访问操作。较佳地,所述步骤G之前,进一步包括对元素的值进行判断,如果元素的值大于0,则执行所述步骤G ;如果元素的值不 大于0,则转至所述步骤B。本发明实施例还提出一种分级存储系统,包括前端协议驱动模块、卷管理模块、缓 存模块和物理存储资源驱动模块,该存储系统还包括位置关系映射模块;所述卷管理模块用于在创建卷组时,设置一卷组位图表,所述卷组位图表的位数 为组成卷组的物理卷的物理区段数之和,卷组位图表的位与物理卷的物理区段一一对应; 卷组位图表中的位设置为有效表示对应的物理区段已被占用,卷组位图表中的位设置为无 效表示对应的物理区段未被占用;卷管理模块还用于在创建逻辑卷之前,初始化一个映射数组,该映射数组中每一 个元素对应于卷组位图表中的一个位,元素值表示所对应的为在卷组位图表中的位置;所 述映射数组和卷组位图表均保存于所述位置关系映射模块;卷管理模块用于在所述位置关系映射模块的卷组位图表中寻找一个设置为无效 的位,并将该位的值设置为有效,将所找到的位所在卷组位图表中的位置记录到逻辑卷的 映射数组对应的元素中;新建一个逻辑卷,所述逻辑卷映射于所述所找到的位对应的物理 区段;位置关系映射模块用于将来自前端协议驱动模块的读写访问的地址进行转换,换 算成逻辑卷的逻辑区段号;用所述逻辑区段号查找映射数组,得出对应的映射数组元素的 值;根据元素值使物理存储资源驱动模块跳转到对应的物理区段。所述映射数组的元素值等于卷组位图表中与所述元素值对应的位的序号;若映射数组的元素值为-1,表明尚未映射到物理区段。所述的卷管理模块根据访问速度的不同,将物理存储资源划分为一个以上的速度 级别,并建立数据访问频率与所述级别的对应关系;对于待存储的数据,根据其访问频率查 找所述对应关系找到相应的速度级别,并将该数据存储于该速度级别的物理存储资源中。所述卷管理模块记录数据的访问频率,根据所述对应关系判断当前访问频率对应 的速度级别是否发生改变,当发生改变时将数据转储到当前访问频率对应的速度级别的物 理存储资源中。 所述卷管理模块进一步包括调整单元,用于将逻辑卷申请的存储空间进行调整,将申请的存储空间的大小按 照逻辑区段的大小进行对齐,从而确保逻辑卷的逻辑区段个数为整数。较佳地,所述卷管理模块进一步包括错误信息反馈单元,用于在卷组的位图表中 没有找到设置为无效的位的情况下,进行错误信息反馈,通知系统管理员进行卷组扩容。从以上技术方案可以看出,卷组通过维护一个统一的位图表与物理卷的物理区段 进行映射,初始时仅有一个逻辑区段与物理区段对应,随着存储容量的增加,逻辑区段对应 的物理区段可以动态增加,这样无需在初始时分配大量的物理区段,达到物理区段的动态 使用,极大节约了存储资源。


图1为现有技术的具备逻辑卷管理的存储系统逻辑框图;图2为逻辑卷管理物理区段到逻辑区段的映射关系示意图;图3为本发明实施例的具备逻辑卷管理的存储系统逻辑框图;图4为具备自动精简配置功能的逻辑卷管理物理区段到逻辑区段的映射关系示 意图;图5为本发明实施例的创建逻辑卷的流程图。图6为本发明实施例的对逻辑卷进行读写访问操作的流程图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面结合具体实施例对本发明作 进一步的详细阐述。本发明提出的存储系统的逻辑框图如图3所示,存储系统300包括前端协议驱动 模块301、卷管理模块302、位置关系映射模块303、缓存模块304和物理存储资源驱动模块 305。为了使存储系统在实现逻辑卷管理的基础上,还具备自动精简配置功能,本发明 对现有技术的存储系统进行了改进将多个物理卷共同构成卷组,在卷组上进行划分逻辑 卷;卷组通过维护一个统一的位图表与物理卷的物理区段进行映射,初始时仅有一个逻辑 区段与物理区段对应。在卷管理模块302和缓存模块304之间增加一用于实现自动精简配 置功能的位置关系映射模块303。位置关系映射模块303用于在读取/写入命令往下层模 块分发前,根据映射关系定位到实际的物理存储资源的位置。前端驱动协议模块301负责解析各种协议,包括光纤通道(fibre Channel FC)协议和网络小型电脑接口(iscsi)协议;卷管理模块302负责逻辑卷的管理,包括创建、删除、修改逻辑卷;缓存模块304的读写速度远大于硬盘,用于缓存历史读写内容,在收到新的读 请求时,首先在缓存模块304中寻找该读请求对应的内容,如果未找到再读取硬盘,可以提 高IO读写速度。物理存储资源驱动模块305则负责数据与真实物理设备交互,读取或写入 操作),该存储系统还包括位置关系映射模块303,用以实现逻辑区段和物理区段之间的映 射。所述卷管理模块302在创建卷组时,设置一卷组位图表,所述卷组位图表的位数 为组成卷组的物理卷的物理区段数之和,卷组位图表的位与物理卷的物理区段一一对应; 卷组位图表中的位设置为有效表示对应的物理区段已被占用,卷组位图表中的位设置为无 效表示对应的物理区段未被占用;卷管理模块302还用于在创建逻辑卷之前,初始化一个映射数组,该映射数组中 每一个元素对应于卷组位图表中的一个位,元素值表示所对应的位在卷组位图表中的位 置,例如,元素值等于位图表中对应位的序号。如果映射数组的元素值为-1,表明尚未映射 到物理区段。所述映射数组和卷组位图表均保存于所述位置关系映射模块303。卷管理模块302用于在所述位置关系映射模块303的卷组位图表中寻找一个设置 为无效的位,并将该位的值设置为有效,将所找到的位所在卷组位图表中的位置记录到逻 辑卷的映射数组对应的元素中;新建一个逻辑卷,所述逻辑卷映射于所述所找到的位对应 的物理区段。卷管理模块302记录了对应逻辑卷的大小,但不会为其分配所申请的空间,只 分配一个物理区段,映射为逻辑卷的第一个逻辑区段。当逻辑卷创建完成后,用户进行读写访问,IO请求命令经过前端驱动协议模块 301解析后,转到对应的目标逻辑卷,目标逻辑卷将IO请求的逻辑地址通过位置关系映射 模块303转换为实际的物理地址,然后转发到对应的物理设备上,下层的缓存模块304和物 理存储资源驱动模块305根据转换后的IO请求对物理存储资源进行读写访问。当访问逻 辑卷发生缺失时,卷管理模块302会快速分配一个物理区段,映射成地址缺失的逻辑区段, 从而不影响正常的访问。较佳地,物理存储资源可以包括多种类型的存储器,例如普通的磁碟式硬盘(SATA 或ΑΤΑ),微硬盘(Microdrive)或固态硬盘(Solid State Disk SSD)。其中,固态硬盘的访 问速度快,但价格昂贵,而磁碟式硬盘的访问速度较慢但价格低廉。根据访问速度的不同, 将物理存储资源划分为一个以上的速度级别,并建立数据访问频率与所述级别的对应关 系;对于待存储的数据,根据其访问频率查找所述对应关系找到相应的速度级别,并将该数 据存储于该速度级别的物理存储资源中,其原则是访问频率较高的的数据存储于访问速度 相对较快的物理存储资源中,而访问频率低的数据(包括备份数据)存储于访问速度相对 较慢的物理存储资源中。卷管理模块记录数据的访问频率,根据所述对应关系判断当前访 问频率对应的速度级别是否发生改变,当发生改变时将数据转储到当前访问频率对应的速 度级别的物理存储资源中。较佳地,卷管理模块302还可以进一步包括调整单元,用于将逻辑卷申请的存储空间进行调整,将申请的存储空间的大小按 照逻辑区段的大小进行对齐,从而确保逻辑卷的逻辑区段个数为整数。错误信息反馈单元,用于在卷组的位图表中没有找到设置为无效的位的情况下,进行错误信息反馈,通知系统管理员进行卷组扩容。图4所示的是具有自动精简配置功能的逻辑卷管理映射机制的一个实例,其中有 三个物理设备物理磁盘404、磁盘阵列405和固态磁盘(SSD) 408,其中物理磁盘404有三 个分区,分别为分区401、分区402和分区403。物理磁盘404构成物理卷409,磁盘阵列405 构成物理卷410,固态磁盘408构成物理卷411,三个物理卷组成了卷组416,在卷组416中 划分了两个逻辑卷,分别为逻辑卷417和逻辑卷418,逻辑卷417通过文件系统挂载在目录 419,逻辑卷418通过文件系统挂载到目录420。从图4可以看出,卷组416包含了一个位图表415,位图表的位数为组成卷组的物 理卷的物理区段数之和,位图表的位与物理卷的物理区段一一对应。位图表中的位426被 置为有效(例如设置为1,1表示有效),表明其对应的物理卷的物理区段412已经与逻辑区 段421建立了关联,对逻辑卷的逻辑区段421进行读写访问,实际上就是对物理卷的物理区 段412进行访问。位图表中的位如果设置为无效(例如设置为0,0表示无效),则表明该位 对应的物理卷的物理区段没有与任何逻辑卷的逻辑区段关联,为空闲区段。在该实施例中,逻辑卷417申请的存储空间包含13个逻辑区段,但是在逻辑卷417 初始化时,逻辑卷管理模块实际上仅为其分配了一个物理区段412,逻辑卷417的第一个逻 辑区段421与物理区段412通过位图表关联,逻辑卷上的关联数组的第一个元素值设置为 位图表的位416在位图表的序号。同样,逻辑卷418申请的存储空间包括5个逻辑区段,而 初始化时分配到的物理区段也只有一个,即物理区段422。当IO请求访问的逻辑地址所在的物理区段424没有物理区段与之相关联时,逻辑 卷管理会产生区段缺失,通过快速在卷组的位图表中找到一个尚未关联的位423,将其对应 的物理区段414与缺失的逻辑区段424建立映射,从而解决区段缺失。图5是在卷组中创建逻辑卷的流程图,表明了自动精简配置如何在逻辑卷管理中如何体现。该流程包括如下步骤步骤501 将逻辑卷申请的存储空间进行调整,将申请的存储空间的大小按照逻辑区段的大小进行对齐,从而确保逻辑卷的逻辑区段个数为整数。步骤502 为了描述逻辑卷结构,向系统申请内存,用于存放该逻辑卷的映射数组。步骤503 在卷组的位图表中寻找一个值为0的位,即寻找一个尚未分配的物理区 段。步骤504 判断是否找到未分配的物理区段,如果没找到,则表明卷组中所有存储 空间已经耗尽,执行步骤506,进行错误信息反馈,通知系统管理员进行卷组扩容,然后流程 结束;如果找到,则执行步骤505 ;步骤505 将该位的值置为1,标志对应的物理区段已经被引用。步骤507 将步骤504找到的位所在卷组位图表中的位置记录到逻辑卷的映射数 组对应的元素中。步骤508 更新逻辑卷管理的元数据,即新建一个逻辑卷,所述逻辑卷映射于所述 所找到的位对应的物理区段。步骤509 将新建的逻辑卷激活,告知系统可以进行读写访问。图6是对逻辑卷进行读写访问的流程图,表明了在自动精简配置的逻辑卷管理下如何进行读写访问操作,包括如下步骤步骤601 将读写访问的地址进行转换,换算成逻辑卷的逻辑区段号。步骤602 用换算的逻辑区段号查找逻辑卷映射数组,得出对应 的映射数组元素 的值。步骤603:对元素的值进行判断,如果元素的值不大于0,表明发生区段缺失,访问 的逻辑区段没有物理区段与之关联,执行步骤604 ;如果元素值大于0,找到对应的物理区 段,可以顺利地进行读写访问,转至步骤609。步骤604 逻辑卷管理模块在卷组的位图表中寻找一个值为0的位,即寻找一个尚 未分配的物理区段。步骤605 判断是否成功找到一个尚未分配的物理区段,如果失败,则执行步骤 611,报告错误信息,通知系统管理员卷组存储资源耗尽。如果成功,则执行步骤607。步骤607 将该位的值置为1,标志对应的物理区段已经被引用。步骤608 把逻辑卷管理的元数据进行保存。步骤609 根据元素值跳转到对应的物理区段。步骤610进行读写访问操作。综上所述,逻辑卷管理具备了自动精简配置的功能,从而提高了存储资源的利用 率,也提高了存储效率。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
一种应用于分级存储系统的逻辑卷管理方法,其特征在于,设置一卷组位图表,所述卷组位图表的位数为组成卷组的物理卷的物理区段数之和,卷组位图表的位与物理卷的物理区段一一对应;卷组位图表中的位设置为有效表示对应的物理区段已被占用,卷组位图表中的位设置为无效表示对应的物理区段未被占用;该方法包括如下步骤A、初始化一个映射数组,该映射数组中每一个元素对应于卷组位图表中的一个位,元素值表示所对应的为在卷组位图表中的位置;B、在卷组的位图表中寻找一个设置为无效的位,并将该位的值设置为有效;C、将所找到的位所在卷组位图表中的位置记录到逻辑卷的映射数组对应的元素中;D、新建一个逻辑卷,所述逻辑卷映射于所找到的位对应的物理区段。
2.根据权利要求1所述的方法,其特征在于,所述映射数组的元素值等于卷组位图表 中与所述元素值对应的位的序号;若映射数组的元素值为-1,表明尚未映射到物理区段。
3.根据权利要求1所述的方法,其特征在于,所述步骤B之前进一步包括将逻辑卷申 请的存储空间进行调整,将申请的存储空间的大小按照逻辑区段的大小进行对齐,从而确 保逻辑卷的逻辑区段个数为整数。
4.根据权利要求1所述的方法,其特征在于,步骤B所述在卷组的位图表中寻找一个 设置为无效的位的步骤中,若没有找到设置为无效的位,则执行如下步骤进行错误信息反 馈,通知系统管理员进行卷组扩容。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述步骤D之后,进一步包括E、将读写访问的地址进行转换,换算成逻辑卷的逻辑区段号;F、用所述逻辑区段号查找映射数组,得出对应的映射数组元素的值;G、根据元素值跳转到对应的物理区段,并对所述物理区段进行读写访问操作。
6.根据权利要求5所述的方法,其特征在于,所述步骤G之前,进一步包括对元素的值进行判断,如果元素的值大于0,则执行所述步骤G ;如果元素的值不大于 0,则转至所述步骤B。
7.一种分级存储系统,包括前端协议驱动模块、卷管理模块、缓存模块和物理存储资源 驱动模块,其特征在于,该存储系统还包括位置关系映射模块;所述卷管理模块用于在创建卷组时,设置一卷组位图表,所述卷组位图表的位数为组 成卷组的物理卷的物理区段数之和,卷组位图表的位与物理卷的物理区段一一对应;卷组 位图表中的位设置为有效表示对应的物理区段已被占用,卷组位图表中的位设置为无效表 示对应的物理区段未被占用;卷管理模块还用于在创建逻辑卷之前,初始化一个映射数组,该映射数组中每一个元 素对应于卷组位图表中的一个位,元素值表示所对应的为在卷组位图表中的位置;所述映 射数组和卷组位图表均保存于所述位置关系映射模块;卷管理模块用于在所述位置关系映射模块的卷组位图表中寻找一个设置为无效的位, 并将该位的值设置为有效,将所找到的位所在卷组位图表中的位置记录到逻辑卷的映射数 组对应的元素中;新建一个逻辑卷,所述逻辑卷映射于所述所找到的位对应的物理区段;位置关系映射模块用于将来自前端协议驱动模块的读写访问的地址进行转换,换算成 逻辑卷的逻辑区段号;用所述逻辑区段号查找映射数组,得出对应的映射数组元素的值; 根据元素值使物理存储资源驱动模块跳转到对应的物理区段。
8.根据权利要求7所述的分级存储系统,其特征在于,所述映射数组的元素值等于卷 组位图表中与所述元素值对应的位的序号;若映射数组的元素值为-1,表明尚未映射到物 理区段。
9.根据权利要求7所述的分级存储系统,其特征在于,所述的卷管理模块根据访问速 度的不同,将物理存储资源划分为一个以上的速度级别,并建立数据访问频率与所述级别 的对应关系;对于待存储的数据,根据其访问频率查找所述对应关系找到相应的速度级别, 并将该数据存储于该速度级别的物理存储资源中。
10.根据权利要求9所述的分级存储系统,其特征在于,所述卷管理模块记录数据的访 问频率,根据所述对应关系判断当前访问频率对应的速度级别是否发生改变,当发生改变 时将数据转储到当前访问频率对应的速度级别的物理存储资源中。
11.根据权利要求7所述的分级存储系统,其特征在于,所述卷管理模块进一步包括 调整单元,用于将逻辑卷申请的存储空间进行调整,将申请的存储空间的大小按照逻辑区段的大小进行对齐,从而确保逻辑卷的逻辑区段个数为整数。
12.根据权利要求7所述的分级存储系统,其特征在于,所述卷管理模块进一步包括 错误信息反馈单元,用于在卷组的位图表中没有找到设置为无效的位的情况下,进行错误 信息反馈,通知系统管理员进行卷组扩容。
全文摘要
本发明公开了一种应用于分级存储系统的逻辑卷管理方法,设置一卷组位图表,卷组位图表的位与物理卷的物理区段一一对应;卷组位图表中的位表示对应的物理区段是否被占用;该方法包括如下步骤A、初始化一个映射数组,该映射数组中每一个元素对应于卷组位图表中的一个位,元素值表示所对应的为在卷组位图表中的位置;B、在卷组的位图表中寻找一个设置为无效的位,并将该位的值设置为有效;C、将所找到的位所在卷组位图表中的位置记录到逻辑卷的映射数组对应的元素中;D、新建一个逻辑卷,所述逻辑卷映射于所找到的位对应的物理区段。本发明还公开了采用所述逻辑卷管理方法的存储系统。本发明方案可以无需在初始时分配大量的物理区段,达到物理区段的动态使用,极大节约了存储资源。
文档编号G06F3/06GK101840308SQ20091023675
公开日2010年9月22日 申请日期2009年10月28日 优先权日2009年10月28日
发明者邹波 申请人:创新科存储技术有限公司;创新科软件技术(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1