华为RAID2.0+采用底层硬盘管理和上层资源管理两层虚拟化管理模式,在系统内部,每个硬盘空间被划分成一个个小粒度的数据块,基于数据块来构建RAID组,使得数据均匀地分布到存储池的所有硬盘上,同时,以数据块为单元来进行资源管理,大大提高了资源管理的效率。
OceanStor存储系统支持不同类型(SSD、SAS、NL-SAS)的硬盘(SATA盘理论可用,只是其性能较低,企业级存储中已很少使用),这些硬盘组成一个个的硬盘域(Disk Domain)。在一个硬盘域中,同种类型的硬盘构成一个存储层,每个存储层内部再按一定的规则划分为Disk Group;
各存储层的硬盘被划分为固定大小的Chunk(CK),其中,SSD层和SAS层的CK的大小为64MB,NL-SAS层的CK大小为256M。
OceanStor 存储系统通过随机算法,将每一个存储层的Chunk(CK)按照用户设置的“RAID策略”来组成Chunk Group(CKG),用户可以为存储池(Storage Pool)中的每一个存储层分别设置“RAID策略”。
OceanStor存储系统会将Chunk Group(CKG)切分为更小的Extent。Extent作为数据迁移的最小粒度和构成Thick LUN的基本单位,在创建存储池(Storage Pool)时可以在“高级”选项中进行设置,默认4MB。对于Thin LUN或文件系统,会在Extent上再进行更细粒度的划分(Grain),并以Grain为单位映射到Thin LUN、文件系统。(Thin LUN的概念将在后面的章节中描述)
若干Extent组成了卷(Volume),卷(Volume)对外体现为主机访问的LUN(这里的LUN为Thick LUN)。在处理用户的读写请求以及进行数据迁移时,LUN向存储系统申请空间、释放空间、迁移数据都是以Extent为单位进行的。例如:用户在创建LUN时,可以指定容量从某一个存储层中获得,此时LUN由指定的某一个存储层上的Extent组成。在用户的业务开始运行后,存储系统会根据用户设定的迁移策略,对访问频繁的数据以及较少被访问的数据在存储层之间进行迁移(此功能需要购买SmartTier License)。此时,LUN上的数据就会以Extent为单位分布到存储池的各个存储层上。
在用户创建Thin LUN或文件系统时,OceanStor存储系统还会在Extent的基础上再进行更细粒度的划分(Grain),并以Grain为单位映射到Thin LUN或文件系统,从而实现对存储容量的精细化管理。
原理:
共同学习,写下你的评论
评论加载中...
作者其他优质文章