一种实现存储系统自动精简配置和精简分配的方法技术方案

技术编号:8703889 阅读:216 留言:0更新日期:2013-05-16 17:30
本发明专利技术提供一种实现存储系统自动精简配置和精简分配的方法,本发明专利技术能够自动的、精简的按需分配自动精简配置的存储池空间,能够最大化合理的利用存储系统的物理存储空间。够实现自动精简设备存储池的精简分配,存储池空间自动按需分配,保证精简分配过程数据块的正确性和数据的一致性。能够按需分配存储池空间,通过精简分配将存储池空间自动分配给精简卷以供使用者使用,使用者无需人工干预精简分配过程。本发明专利技术的友谊效果是,通过该系统架构,能采用该系统架构,可以自动的、精简的分配存储池空间,当需要存储池提供空间的时候,自动精简配置才会精简的分配存储池空间。

【技术实现步骤摘要】
一种实现存储系统自动精简配置和精简分配的方法
本专利技术是一种实现存储系统自动精简配置精简分配的系统及方法,通常用于存储系统中,旨在提供一种对自动精简配置存储池空间进行精简分配的系统架构。
技术介绍
自动精简配置存储方案能够给操作系统提供大容量的虚拟驱动器。这种技术的核心是“欺骗”。简单的说,实际的物理存储设备可能并没有这么多,而让操作系统认为有这么大的存储空间。这主要是因为企业中的数据往往也是在逐渐增加,而不是一开始就有这么多。自动精简配置扩展了存储管理功能,虽然实际分配的物理容量小,但可以为操作系统提供超大容量的虚拟存储空间。随着应用写入的数据越来越多,实际存储空间也可以及时扩展,而无需手动扩展。换句话说,自动精简配置提供的是“运行时空间”,可以显著减少已分配但是未使用的存储空间。如图1所示传统存储与自动精简配置存储的空间占用对比图。自动精简配置将所有的存储空间汇集到一个资源池中,并使用统一大小的“块”将空间划分,最终,按需分配给应用的是资源池中的“块”。在自动精简配置精简分配中,我们采用写时分配技术,物理磁盘容量只有在应用程序写真实数据到逻辑卷时才会将实际的存储池空间分配出去。简单理解就是只有在有写请求的时候,才会按需从空闲的资源池中分配新的块给该请求。这种按需精简分配是自动精简配置精简分配的实质。自动精简配置包括存储池和精简卷。其中存储池空间是占用实际物理空间,而精简卷就是通过“欺骗”提供给操作系统的虚拟驱动器,并不真实的占用实际物理空间。由存储池向精简卷提供存储空间,一个存储池可以对应多个精简卷,而每一个精简卷都可以大于或者小于存储池空间容量。因此,为了保证自动精简配置正常运行,自动精简配置的精简分配急需解决三方面问题,一个是自动精简配置精简分配的分配算法问题,为了保证分配存储池空间的正确性,我们需要设计一个精准的精简分配算法;另一个是保证数据一致性,精简分配是一个过程,需要保证整个分配过程写入数据块的数据一致性;最后一个是解决并发访问的问题,要保证对同一个存储池同一个块的精简分配的互斥性,避免并发分配同一个块,保证分配块的唯一性。
技术实现思路
本专利技术的目的是提供一种实现存储系统自动精简配置和精简分配的方法。本专利技术的有益效果是:实现自动精简配置存储池的精简分配,按需分配自动精简配置存储池空间,根据用户数据的实际占用的空间,自动分配存储空间,提高磁盘存储空间的利用率,推迟用户磁盘扩容的时间,减少磁盘购买数量,提高存储性能,减少环境对存储的压力,降低总体实现成本,从而降低系统的整体能耗、冷却成本、以及二氧化碳排放量,符合绿色存储的要求。因此采用这种系统架构,能够自动,高效,精简的完成自动精简配置存储池精简分配的工作。附图说明图1是传统存储与自动精简配置存储的空间占用对比图;图2是精简分配整体流程示意图;图3是精简分配块分配流程示意图;图4是精简分配分配块映射流程示意图。具体实施方式参照说明书附图对本专利技术的方法作以下详细地说明。一种实现存储系统自动精简配置精简分配的系统架构,该架构支持在不同的操作系统,实现自动精简配置存储池空间的精简分配。在自动精简分配中,采用事务机制来保证分配过程的数据一致性。在算法上,采用先完成存储池实际存储空间块的分配,然后再完成存储池到精简卷的块的映射过程,精简分配过程的正确性。针对精简分配过程,采用块管理机制,只允许一个数据块有一个写者,从而在按需分配的过程中,避免并发写入同一个块的事件发生,保证分配数据块的唯一性。该系统包括:(1)事务管理模块;(2)块管理模块;(3)刷写块模块;(4)空间验证模块;(5)块分配模块;(6)分配块映射模块;事务管理模块(1),唯一可以获得可写块的途径,这是通过分配新块和跟随已存在的块来实现的。事务机制提交的方法确保在写超级块之前,所有数据都会被刷新。如果出现停电等意外情况,元数据信息将保持最后一次提交的状态。该模块针对精简分配提供分配新块的事务和提交事务的操作;块管理模块(2),提供固定大小的数据的入口,支持并发的读操作,但是对于每一个块,只支持一个单独的写操作;提供缓存数据的刷新操作,将缓存中数据刷写至磁盘。针对精简分配提供获取写锁、刷新数据等操作;刷写块重映射模块(3),完成刷新(flush)IO请求的重映射操作;空间验证模块(4),判断自动精简配置存储池是否还有剩余空间,如果没有剩余空间就尝试释放一些无用的存储池空间,如果有剩余空间返回0,如果没有剩余空间返回无空间(-ENOSPC);块分配模块(5),是真正的在存储池完成块分配的模块,也是精简分配的核心模块。块分配模块会在存储池中找到下一个可以使用的数据块,并且判断该块是否被IO请求完整覆盖,如果是,则直接重映射IO至该块;否则,说明该块只被部分占用,因此将该块全部清零,并重映射IO至该块。如图3所示;分配块映射模块(6),完成存储池空间新分配的块与对应精简卷映射的操作。该模块会将映射信息插入到自动精简配置的元数据信息中,建立存储池中的块与精简卷的对应的块的关联关系,从而最终完成精简分配的映射过程,并再次调度该IO请求。如图4所示。根据所述事务管理模块(1),当开始精简分配时,会调用事务管理模块(1)开始分配新块的一个事务,然后调用块管理模块(2)获取一个写锁。根据所述事务管理模块(1),当精简分配完成映射后,会首先调用事务管理模块(1)提交事务的操作,然后调用模块(2)刷新数据的操作,将元数据信息刷写至磁盘,整个过程无误,表示整个事务的操作完成。根据所述块分配模块(5),当块分配模块成功分配新的块后,会调用分配块映射模块(6)将存储池中新分配的块与精简卷空间建立关联关系,完成映射操作。根据所述分配块映射模块(6),当精简分配完成映射后,会调用事务管理模块(1)提交事务的操作。自动精简配置精简分配系统的整体流程如图2精简分配整体流程示意图所示。本专利技术实施方案非常简单,只需要在LINUX内核中安装自动精简配置软件并加入本专利技术的系统模块程序即可。根据本专利技术,自动精简配置精简分配系统能够自动实现存储池的精简分配,当需要分配存储空间时,精简分配模块会自动按需分配存储空间,满足自动精简配置的精简特性。除说明书所述的技术特征外,均为本专业技术人员的已知技术。本文档来自技高网
...
一种实现存储系统自动精简配置和精简分配的方法

【技术保护点】
一种实现存储系统自动精简配置和精简分配的方法, 其特征在于在不同的操作系统中,实现自动精简配置存储池空间的精简分配,该系统包括:(1)事务管理模块;(2)块管理模块;(3)刷写块模块;(4)空间验证模块;(5)块分配模块;(6)分配块映射模块,其中:事务管理模块(1),唯一获得可写块的途径,通过分配新块和跟随已存在的块来实现的,事务机制提交的方法确保在写超级块之前,所有数据都会被刷新,如果出现停电意外情况,元数据信息将保持最后一次提交的状态,该模块针对精简分配提供分配新块的事务和提交事务的操作;块管理模块(2),提供固定大小的数据的入口,支持并发的读操作,但是对于每一个块,只支持一个单独的写操作;提供缓存数据的刷新操作,将缓存中数据刷写至磁盘,针对精简分配提供获取写锁、刷新数据操作;刷写块重映射模块(3),完成刷新IO请求的重映射操作,刷新的IO请求不需要分配新块,因此直接完成重映射;空间验证模块(4),判断自动精简配置存储池是否还有剩余空间,如果没有剩余空间就尝试释放一些无用的存储池空间,如果有剩余空间返回0,如果没有剩余空间返回无空间‑ENOSPC;块分配模块(5),是真正的在存储池完成块分配的模块,也是精简分配的核心模块,块分配模块会在存储池中找到下一个能够使用的数据块,并且判断该块是否被IO请求完整覆盖,如果是,则直接重映射IO至该块;否则,说明该块只被部分占用,因此将该块全部清零,并重映射IO至该块;分配块映射模块(6),完成存储池空间新分配的块与对应精简卷映射的操作,该模块会将映射信息插入到自动精简配置的元数据信息中,建立存储池中的块与精简卷的对应的块的关联关系,从而最终完成精简分配的映射过程,并再次调度该IO请求。...

【技术特征摘要】
1.一种实现存储系统自动精简配置和精简分配的方法,其特征在于在不同的操作系统中,实现自动精简配置存储池空间的精简分配,该系统包括:(1)事务管理模块;(2)块管理模块;(3)刷写块模块;(4)空间验证模块;(5)块分配模块;(6)分配块映射模块,其中:事务管理模块(1),唯一获得可写块的途径,通过分配新块和跟随已存在的块来实现的,事务机制提交的方法确保在写超级块之前,所有数据都会被刷新,如果出现停电意外情况,元数据信息将保持最后一次提交的状态,该模块针对精简分配提供分配新块的事务和提交事务的操作;块管理模块(2),提供固定大小的数据的入口,支持并发的读操作,但是对于每一个块,只支持一个单独的写操作;提供缓存数据的刷新操作,将缓存中数据刷写至磁盘,针对精简分配提供获取写锁、刷新数据操作;刷写块重映射模块(3),完成刷新IO请求的重映射操作,刷新的IO请求不需要分配新块,因此直接完成重映射;空间验证模块(4),判断自动精简配置存储池是否还有剩余空间,如果没有剩余空间就尝试释放一些无用的存储池空间,如果有剩余空间返回0,如果没有剩余空间返回无空间-ENOSPC;块分配模块(5),是真正的在存储池完成块分配的模块,也是精简分配的核心模块,块分配模块会在存储池中找到下一个能够使用的数据块,并且判断该块是否被IO请求完整覆盖,如果是,则直接重映射IO至该块;否则,说明该块只被部分占用,因此将该块全部清零,并重映射IO至该块;分配块映射模块(6),完成存储池空间新分配的块与对应精简卷...

【专利技术属性】
技术研发人员:温源张宇梁志诚文中领张延枫
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:山东;37

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

1