发明名称 |
一种自动精简配置扩容的方法 |
摘要 |
本发明提供一种自动精简配置扩容的方法,通过扩展自动精简存储池模块功能,来扩展存储池的容量,负责自动精简配置存储池中空间的分配与回收,存储池的空间扩容,当存储池中实际可用空间不足时,为满足业务需求,需要对整个存储池进行扩容,通过在自动精简存储池模块中增加设备层,通过本发明中的算法控制存储池中的设备使用,实现存储池中容量的扩展。增加存储池对设备的直接控制,这样可以实现动态的存储池中容量的增加,也为后续存储池性能优化以及功能的扩展提供途径。当存储池空间回收后,存储池中可分配空间存储设备可能存在多个,在接收到写请求后,可能将请求分解映射到一个特定的设备或者多个设备上,潜在提升了后续读请求的性能。 |
申请公布号 |
CN103116475B |
申请公布日期 |
2017.02.15 |
申请号 |
CN201310047066.1 |
申请日期 |
2013.02.06 |
申请人 |
郑州云海信息技术有限公司 |
发明人 |
梁志诚 |
分类号 |
G06F3/06(2006.01)I |
主分类号 |
G06F3/06(2006.01)I |
代理机构 |
济南信达专利事务所有限公司 37100 |
代理人 |
姜明 |
主权项 |
一种自动精简配置扩容的方法, 其特征在于系统通过扩展自动精简存储池模块,实现存储池的扩容量,具体步骤如下:1)在扩展自动精简存储池模块中增加设备层,当执行thin‑pool extend device‑name命令时,会将设备添加到设备层中的空闲RbTree数据结构中,RbTree中包含设备的特征信息,当正在使用RbTree中设备空间不能满足写请求时,首先会从空闲RbTree中提取一个设备,用来存储业务数据信息;同时会将设备的特征信息从空闲RbTree中转移到正在使用中的RbTree中,当整个自动精简存储池中空闲RbTree中没有可用的设备时,需要用户向存储池中添加设备;2)扩展自动精简存储池模块的存储池空间分配&回收与扩容的交互:(1)当存储池接收到写请求之后,会查看当前正在使用RbTree中设备空闲空间是否能够满足本次写请求;如果能够满足写请求所占用的空间,则减少正在使用RbTree中设备的空闲空间数量,当设备空闲空间数量为0时,需要将设备从正在使用RbTree中转移到已经使用RbTree中;如果不能够满足写请求所占用的空间,则从空闲RbTree中提取设备,存储业务数据信息,同时将设备的特征信息从空闲RbTree中转移到正在使用RbTree中;(2)当存储池收到DISCARD请求之后,查看正在使用RbTree中是否包含DISCARD请求涉及的设备,如果找到设备则增加找到设备的空闲空间数量;如果未找到设备,则从已经使用的RbTree中查找DISCARD请求涉及的设备,增加找到设备的空闲空间数量,并将设备转移到正在使用RbTree中;此时正在使用的RbTree中可用空闲空间数量增加,并且可用设备数目也会增加;当正在使用RbTree中设备空间不再被使用,则将设备转移到空闲RbTree中。 |
地址 |
450000 河南省郑州市郑东新区心怡路278号16层1601室 |