CN101604226B - 一种基于虚拟raid构建动态缓存池提高存储***性能的方法 - Google Patents
一种基于虚拟raid构建动态缓存池提高存储***性能的方法 Download PDFInfo
- Publication number
- CN101604226B CN101604226B CN2009100170641A CN200910017064A CN101604226B CN 101604226 B CN101604226 B CN 101604226B CN 2009100170641 A CN2009100170641 A CN 2009100170641A CN 200910017064 A CN200910017064 A CN 200910017064A CN 101604226 B CN101604226 B CN 101604226B
- Authority
- CN
- China
- Prior art keywords
- virtual
- raid
- mapping table
- virtual raid
- hot spot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000013507 mapping Methods 0.000 claims abstract description 53
- 238000013506 data mapping Methods 0.000 claims description 12
- 230000001133 acceleration Effects 0.000 claims description 9
- 238000007726 management method Methods 0.000 claims description 8
- 230000003139 buffering effect Effects 0.000 claims description 5
- 238000005192 partition Methods 0.000 claims description 5
- 239000007787 solid Substances 0.000 claims description 3
- 230000007812 deficiency Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000004308 accommodation Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于虚拟RAID构建动态缓存池提高存储***性能的方法,该存储***构成包括:物理存储设备,存储阵列,存储阵列管理台,虚拟RAID,虚拟缓存池。构建步骤包括:设定虚拟缓存池策略;创建虚拟RAID,创建块设备映射表。创建虚拟缓存池,创建虚拟RAID映射表。提取热点数据到缓存池,创建虚拟缓存池映射表;定时更新热点数据,修改热点数据映射表;清空虚拟缓存池。修改虚拟RAID,修改块设备映射表。修改虚拟缓存池,修改虚拟RAID映射表。本发明的方法优点是,在不占用***有限设备槽位不增加硬件成本的前提下,有效解决缓存容量不足导致的***性能下降问题。
Description
技术领域
本发明涉及计算机以及网络信息技术领域,特别涉及一种基于虚拟RAID构建动态缓存池提高存储***性能和可靠性的方法。
技术背景
当前存储阵列一般都有2G-4G左右的***缓存。通过Cache可以快速读写数据,能够有效提高***的输入输出性能。Cache容量与下一级存储器即磁盘阵列的容量相比是很小的,一般不超过0.1%,它保存的只是下一级存储器内容的一个子集。缓存的性能虽然非常快,但其容量相对于多媒体数据来说并不足够大,在很快写满缓存以后,速度立即衰减到实际操作磁盘的速度。
当面临多媒体类业务时,存储阵列的性能将远远不能满足实际业务的需求。目前的解决办法是通过扩大***物理内存暂时缓解性能瓶颈,此方法会大大增加硬件的整体成本,同时***硬件设计上也不允许无限制的增加物理内存。此种方法在一般存储阵列上最大也只能扩展到64G左右。而业界单块SATA硬盘的存储容量已经到达1TB,单个阵列容量已经到达30TB左右,此种缓存扩展方法实现的缓存比率也只能到达0.2%左右。
鉴于现有技术的不足,人们希望有一种能够提高存储阵列缓存比率,并同时提高***性能和可靠性的方法。
发明内容
本发明的目的在于克服已有技术存在的不足,解决存储***在大负载情况下缓存不足所带来的性能和可靠性问题,提供一种在不增加成本的前提下,大大提高***性能,提高存储阵列的负载承受能力,同时保证频繁读写数据的可靠性测方法。
为了实现上述目的,本发明采取如下技术方案。***包括:存储阵列,存储阵列管理台,虚拟缓存池,块设备映射表,虚拟RAID映射表和热点数据映射表,由一个阵列控制器来控制多个物理存储设备的相互连接,使多个物理存储设备的读写同步进行,同时将物理存储设备的存储空间以一个或多个虚拟磁盘的形式提供给主机,其中:
物理存储设备,用于构建虚拟RAID的物理资源的单位,通常意义上是SATA磁盘或固态硬盘设备;
存储阵列管理台,是接受管理员指令进行阵列虚拟缓存管理的功能模块;
虚拟RAID,在每块物理存储设备上划分一个分区,由多个物理存储设备的分区创建虚拟的RAID,存储***热点数据;
虚拟缓存池,利用***物理存储设备构建的不同RAID等级的虚拟RAID空间;
块设备映射表,处于存储管理台内,是记录虚拟RAID与物理存储设备(磁盘)之间映射关系的对照表。一个虚拟RAID可包含多个物理存储设备;
虚拟RAID映射表,处于存储管理台内,是记录虚拟缓存池与虚拟RAID之间映射关系的对照表。虚拟缓存池在一个存储***中只有一个,但一个虚拟缓存池可包含多个虚拟RAID;
热点数据映射表,处于存储管理台内,是记录缓存池空间与热点数据或分区之间映射关系的对照表;
构建虚拟RAID的动态虚拟缓存池及管理方法,包括如下步骤:
设定虚拟缓存池策略:管理员在管理台上指定虚拟RAID占用的物理存储设备空间比率,并选择期望的性能加速策略;
创建虚拟RAID,创建块设备映射表:管理台根据管理员设定,计算出最佳的虚拟RAID等级和空间大小,并在阵列现有的所有物理存储设备上划分一定空间创建指定级别的虚拟RAID,并在***中建立块设备映射表;
创建虚拟缓存池,创建虚拟RAID映射表:管理台把所有的虚拟RAID纳入虚拟缓存池,并建立虚拟RAID映射表;
提取热点数据到缓存池,创建虚拟缓存池映射表;管理台根据访问频度把热点数据调入虚拟缓存池,并创建虚拟缓存池映射表;
更新热点数据,修改热点数据映射表;每隔一定时间管理台***热点数据和分区,迁出非热点数据和分区,迁入新热点数据和分区,并更新热点数据映射表;
清空虚拟缓存池:当***关机的时候,管理台自动把热点数据转移到实际物理存储单元。
当物理存储设备发生变化时:
修改虚拟RAID,修改块设备映射表:新加物理存储设备的时候,管理台把新加物理设备纳入管理范围,添加进虚拟RAID中,实现虚拟RAID扩容和性能加速,移除物理设备的时候则进行反向操作;
修改虚拟缓存池,修改虚拟RAID映射表,当创建新的虚拟RAID的时候,管理台更新虚拟RAID映射表,把新加虚拟RAID纳入虚拟缓存池,实现虚拟缓存池扩容和缓存性能加速,移除虚拟RAID的时候则进行反向操作。
与现有技术相比,本发明的优异效果是:
1)本发明无需增加硬件购置成本,即可大大提高现有存储阵列的性能。为保证性能而创建的虚拟RAID类型可靠性,通常高于用户用于存储数据的RAID等级,所以本方法可以在一定程度上提高数据可靠性。
2)本方法用到的物理存储设备可以是SATA、SAS物理磁盘,也可以是SSD固态硬盘,适应范围广。
3)本方法可以在线扩展虚拟RAID,扩展虚拟存储池的容量,具有很好的扩展性。
附图说明
附图1是基于虚拟RAID构建动态虚拟缓存池提高存储***性能和可靠性的工作示意图;
具体实施方式
参照附图,对本发明的方法作以下详细的说明。
如附图1所示,本发明的一种基于虚拟RAID构建动态缓存池提高存储***性能和可靠性的方法,***结构包括:存储阵列,存储阵列管理台,虚拟缓存池,块设备映射表,虚拟RAID映射表和热点数据映射表,其中:
存储阵列,由一个阵列控制器来控制多个物理存储设备(如磁盘)的相互连接,使多个物理存储设备的读写同步,减少错误,增加效率和可靠度的存储设备,可将物理存储设备的存储空间以一个或多个虚拟磁盘的形式提供给主机。
物理存储设备,用于构建虚拟RAID的物理资源的单位,通常意义上是块设备;
存储阵列管理台,是接受管理员指令进行阵列虚拟缓存管理的功能模块;
虚拟RAID,在每块物理存储设备上划分一个分区,由多个物理存储设备的分区创建虚拟的RAID,存储***热点数据;
虚拟缓存池,利用***物理存储设备构建的不同RAID等级的虚拟RAID空间;
块设备映射表,处于存储管理台内,是记录虚拟RAID与物理存储设备(磁盘)之间映射关系的对照表;
虚拟RAID映射表,处于存储管理台内,是记录虚拟缓存池与虚拟RAID之间映射关系的对照表;
热点数据映射表,处于存储管理台内,是记录缓存池空间占用与热点数据或分区之间映射关系的对照表。
在本方案中,虚拟缓存池由至少一个虚拟RAID构成,并建立映射表;一个存储阵列只有一个缓存池,一个缓存池可以包含多个不同RAID等级的虚拟RAID。
在本方案中,进一步地,虚拟RAID是构建在***中的物理磁盘的一个独立分区上,且至少由一个分区构成。
在本方案中,进一步地,***自动计算热点数据或分区,并把热点数据自动迁入和迁出虚拟缓存。
构建基于虚拟RAID的动态虚拟缓存池及其管理方法,包括如下步骤:
1)设定虚拟缓存池策略:管理员在管理台上指定虚拟RAID占用的物理存储设备空间比率,并选择期望的性能加速策略;
2)创建虚拟RAID,创建块设备映射表:管理台根据管理员设定,计算出最佳的虚拟RAID等级和空间大小,并在阵列现有的所有物理存储设备上划分一定空间创建指定级别的虚拟RAID,并在***中建立块设备映射表。
3)创建虚拟缓存池,创建虚拟RAID映射表:管理台把所有的虚拟RAID纳入虚拟缓存池,并建立虚拟RAID映射表。
4)提取热点数据到缓存池,创建虚拟缓存池映射表;管理台根据访问频度把热点数据调入虚拟缓存池,并创建虚拟缓存池映射表。
5)更新热点数据,修改热点数据映射表;每隔一定时间管理台***热点数据和分区,迁出非热点数据和分区,迁入新热点数据和分区,并更新热点数据映射表。
6)清空虚拟缓存池:当***关机的时候,管理台自动把热点数据转移到实际物理存储单元。
在本方案中,进一步地,如步骤1)中所述的性能加速策略包括随机读写加速、顺序读写加速等策略。对于随机读写加速,***将可选创建虚拟RAID50,在提供更好随机读写性能的基础上,提供更好的可靠性,可以容忍两块磁盘失效,但并没有增加***奇偶校验负担。对于顺序读写加速策略,***将可选创建虚拟RAID10,多数情况下,RAID10能够承受多个磁盘出现故障的情况,因此更能保证***的正常运行,且其数据丢失的几率最小。
在本方案中,进一步地,如步骤5)中所述的更新热点数据策略。***间隔一定时间根据数据访问频度、重要性等级等参数,避免非热点数据长期驻留高速虚拟缓存池导致空间浪费,而同时新的热点数据却并没有进入虚拟缓存池而导致***整体性能下降。热点数据更新时间等参数可以由管理员手动设定。
在本方案中,进一步地,如步骤6),因为在***关闭电源的之后,可能存在单个或一组物理存储设备被移除的情况,***此处不可能保持虚拟缓存池的数据一致性,因此需要像普通内存一样刷新数据到物理存储单元。
当物理存储设备发生变化时:
1)修改虚拟RAID,修改块设备映射表:新加物理存储设备的时候,管理台把新加物理设备纳入管理范围,添加进虚拟RAID中,实现虚拟RAID扩容和性能加速。移除物理设备的时候则进行反向操作。
2)修改虚拟缓存池,修改虚拟RAID映射表。当创建新的虚拟RAID的时候,
3)管理台更新虚拟RAID映射表,把新加虚拟RAID纳入虚拟缓存池,实现虚拟缓存池扩容和缓存性能加速。移除虚拟RAID的时候则进行反向操作。
跨虚拟RAID的缓存多副本:
为了应对可能发生的超出虚拟RAID安全要求的物理存储设备数量失效,所有虚拟缓存数据是以跨虚拟RAID的多副本方式保存的。
默认设置下,单份缓存数据(D0)在一个虚拟RAID中保存一个副本,此虚拟RAID是D0数据的主存储单元。动态虚拟缓存***还将在另一个虚拟RAID上维护一份即时同步的D0数据的副本。
当单个物理存储设备出现故障的时候,虚拟RAID本身即可保障数据不受任何影响。
当构成一个虚拟RAID的所有磁盘同时失效的时候,***还保留一份完整的数据。如果此时还有另外一个虚拟RAID可以构建新的D0数据的多副本,***将立即启动构建过程。如果***已经没有多余的虚拟RAID,此份D0数据将强制换出动态虚拟缓存池,以保障数据的安全性。
Claims (4)
1.一种基于虚拟RAID构建动态缓存池提高存储***性能的方法,包括:存储阵列,存储阵列管理台,虚拟缓存池,块设备映射表,虚拟RAID映射表和热点数据映射表,由一个阵列控制器来控制多个物理存储设备的相互连接,使多个物理存储设备的读写同步进行,同时将物理存储设备的存储空间以一个或多个虚拟磁盘的形式提供给主机,其中:
物理存储设备,用于构建虚拟RAID的物理资源的单位,是SATA磁盘或固态硬盘设备;
存储阵列管理台,是接受管理员指令进行阵列虚拟缓存管理的功能模块;
虚拟RAID,在每块物理存储设备上划分一个分区,由多个物理存储设备的分区创建虚拟的RAID,存储***热点数据;
虚拟缓存池,利用***物理存储设备构建的不同RAID等级的虚拟RAID空间;
块设备映射表,处于存储阵列管理台内,是记录虚拟RAID与物理存储设备磁盘之间映射关系的对照表,一个虚拟RAID可包含多个物理存储设备;
虚拟RAID映射表,处于存储阵列管理台内,是记录虚拟缓存池与虚拟RAID之间映射关系的对照表,虚拟缓存池在一个存储***中只有一个,但一个虚拟缓存池可包含多个虚拟RAID;
热点数据映射表,处于存储阵列管理台内,是记录缓存池空间与热点数据或分区之间映射关系的对照表;
基于虚拟RAID构建动态缓存池提高存储***性能的方法,包括如下步骤:
设定虚拟缓存池策略:管理员在存储阵列管理台上指定虚拟RAID占用的物理存储设备空间比率,并选择期望的性能加速策略;
创建虚拟RAID,创建块设备映射表:存储阵列管理台根据管理员设定,计算出最佳的虚拟RAID等级和空间大小,并在阵列现有的所有物理存储设备上划分一定空间创建指定级别的虚拟RAID,并在***中建立块设备映射表;
创建虚拟缓存池,创建虚拟RAID映射表:存储阵列管理台把所有的虚拟RAID纳入虚拟缓存池,并建立虚拟RAID映射表;
提取热点数据到缓存池,创建虚拟缓存池映射表;存储阵列管理台根据访问频度把热点数据调入虚拟缓存池,并创建虚拟缓存池映射表;
更新热点数据,修改热点数据映射表;每隔一定时间存储阵列管理台***热点数据和分区,迁出非热点数据和分区,迁入新热点数据和分区,并更新热点数据映射表;
清空虚拟缓存池:当***关机的时候,存储阵列管理台自动把热点数据转移到实际物理存储单元;
当物理存储设备发生变化时:
修改虚拟RAID,修改块设备映射表:新加物理存储设备的时候,存储阵列管理台把新加物理设备纳入管理范围,添加进虚拟RAID中,实现虚拟RAID扩容和性能加速,移除物理设备的时候则进行反向操作;
修改虚拟缓存池,修改虚拟RAID映射表,当创建新的虚拟RAID的时候,存储阵列管理台更新虚拟RAID映射表,把新加虚拟RAID纳入虚拟缓存池,实现虚拟缓存池扩容和缓存性能加速,移除虚拟RAID的时候则进行反向操作
2.根据权利要求1所述的方法,其特征在于,虚拟缓存池由至少一个虚拟RAID构成,并建立虚拟RAID映射表;一个存储阵列只有一个缓存池,一个缓存池可以包含多个不同RAID等级的虚拟RAID。
3.根据权利要求1所述的方法,其特征在于,虚拟RAID是构建在***中的物理磁盘的一个独立分区上,且至少由一个分区构成。
4.根据权利要求1所述的方法,其特征在于,***自动计算热点数据或分区,并把热点数据自动迁入和迁出虚拟缓存池。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100170641A CN101604226B (zh) | 2009-07-14 | 2009-07-14 | 一种基于虚拟raid构建动态缓存池提高存储***性能的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100170641A CN101604226B (zh) | 2009-07-14 | 2009-07-14 | 一种基于虚拟raid构建动态缓存池提高存储***性能的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101604226A CN101604226A (zh) | 2009-12-16 |
CN101604226B true CN101604226B (zh) | 2010-12-01 |
Family
ID=41469972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100170641A Active CN101604226B (zh) | 2009-07-14 | 2009-07-14 | 一种基于虚拟raid构建动态缓存池提高存储***性能的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101604226B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751228B (zh) * | 2009-12-29 | 2011-07-20 | 成都市华为赛门铁克科技有限公司 | 磁盘阵列的实现方法和数据读写方法及装置 |
CN101776984B (zh) * | 2010-02-20 | 2011-09-14 | 浪潮(北京)电子信息产业有限公司 | 在存储***中处理磁盘漫游的方法和装置 |
CN101997919B (zh) * | 2010-11-16 | 2013-06-12 | 杭州宏杉科技有限公司 | 一种存储资源的管理方法及管理装置 |
CN102096559B (zh) * | 2011-01-26 | 2014-09-24 | 浪潮电子信息产业股份有限公司 | 一种提高sata接口固态硬盘数据传输效率的方法 |
CN102147713B (zh) * | 2011-02-18 | 2013-06-12 | 杭州宏杉科技有限公司 | 一种网络存储***的管理方法及装置 |
CN102388374A (zh) * | 2011-09-28 | 2012-03-21 | 华为技术有限公司 | 存储数据的方法和装置 |
WO2013097147A1 (zh) | 2011-12-29 | 2013-07-04 | 华为技术有限公司 | 云计算***和管理云计算***中存储资源的方法 |
CN103631536B (zh) * | 2013-11-26 | 2016-06-01 | 华中科技大学 | 一种利用ssd的无效数据优化raid5/6写性能的方法 |
CN103713860A (zh) * | 2014-01-03 | 2014-04-09 | 浪潮(北京)电子信息产业有限公司 | 一种基于备份架构的虚拟磁盘库构建方法及*** |
CN104156175B (zh) * | 2014-08-06 | 2017-05-24 | 厦门天锐科技股份有限公司 | 一种虚拟磁盘容量平滑拓展方法 |
CN107037975B (zh) * | 2015-07-15 | 2019-12-03 | 中兴通讯股份有限公司 | 卷的空间分配方法和装置 |
CN106484310B (zh) * | 2015-08-31 | 2020-01-10 | 华为数字技术(成都)有限公司 | 一种存储阵列操作方法和装置 |
US9990304B2 (en) * | 2015-11-13 | 2018-06-05 | Samsung Electronics Co., Ltd | Multimode storage management system |
CN107851062A (zh) * | 2015-12-31 | 2018-03-27 | 华为技术有限公司 | 一种主机集群中缓存管理方法及主机 |
CN108121497B (zh) * | 2016-11-29 | 2021-04-30 | 中国电信股份有限公司 | 存储方法以及存储*** |
CN107229573B (zh) * | 2017-05-22 | 2020-04-28 | 上海天玑数据技术有限公司 | 一种基于固态硬盘的弹性高可用缓存方法 |
CN109213428B (zh) * | 2017-06-30 | 2021-05-28 | 伊姆西Ip控股有限责任公司 | 用于管理存储***的方法和设备 |
CN110018879B (zh) * | 2018-01-09 | 2023-06-09 | 阿里巴巴集团控股有限公司 | 应用于分布式***的延迟加载方法及装置 |
CN108845771A (zh) * | 2018-06-25 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种存储***中配置raid的方法、***及相关组件 |
CN111158587B (zh) * | 2019-12-10 | 2023-03-21 | 南京道熵信息技术有限公司 | 基于存储池虚拟化管理的分布式存储***及数据读写方法 |
CN117032596B (zh) * | 2023-10-09 | 2024-01-26 | 苏州元脑智能科技有限公司 | 数据访问方法及装置、存储介质及电子设备 |
-
2009
- 2009-07-14 CN CN2009100170641A patent/CN101604226B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101604226A (zh) | 2009-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101604226B (zh) | 一种基于虚拟raid构建动态缓存池提高存储***性能的方法 | |
CN104350477B (zh) | 用于固态驱动装置(ssd)的优化的上下文移除 | |
CN103186350B (zh) | 混合存储***及热点数据块的迁移方法 | |
CN102460400B (zh) | 基于管理程序的本地和远程虚拟内存页面管理 | |
CN102662607B (zh) | 一种raid6级别混合磁盘阵列及其性能加速和可靠性提高方法 | |
CN108829341B (zh) | 一种基于混合存储***的数据管理方法 | |
CN110347336A (zh) | 一种基于nvm与ssd混合存储结构的键值存储*** | |
CN106527969B (zh) | 一种寿命均衡的NandFlash存储器读写方法 | |
US20070162692A1 (en) | Power controlled disk array system using log storage area | |
CN106528001A (zh) | 一种基于非易失性存储器和软件raid的缓存*** | |
CN102087586B (zh) | 数据处理方法及装置 | |
US9996557B2 (en) | Database storage system based on optical disk and method using the system | |
CN104572478A (zh) | 数据存取方法和数据存取装置 | |
CN103049222A (zh) | 一种raid5的写io优化处理方法 | |
CN101930404A (zh) | 存储装置及其操作方法 | |
CN103455577A (zh) | 云主机镜像文件的多备份就近存储和读取方法及*** | |
CN102521147A (zh) | 一种使用高速非易失介质做缓存的管理方法 | |
CN105808157A (zh) | 存储架构的创建方法、存储访问方法和存储*** | |
CN104778018A (zh) | 基于非对称混合型磁盘镜像的宽条带磁盘阵列及存储方法 | |
CN110196818A (zh) | 缓存数据的方法、缓存设备和存储*** | |
CN109739696B (zh) | 一种双控存储阵列固态硬盘缓存加速方法 | |
CN107678685A (zh) | 基于闪存的存储路径优化的键值存储管理方法 | |
US10572464B2 (en) | Predictable allocation latency in fragmented log structured file systems | |
US20100257312A1 (en) | Data Storage Methods and Apparatus | |
CN103500147A (zh) | 一种嵌入分层存储的pb级集群存储***的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |