首页 > 代码库 > 论文学习 - 《面向海量存储系统的分层存储技术研究》
论文学习 - 《面向海量存储系统的分层存储技术研究》
摘要
随着现代社会信息量的迅速增大,一方面需要有超大容量的海量存储系统来存储这些数据,另一方面在该海量存储系统中,被经常访问到的只有其中一小部分。这样的事实驱动我们对海量数据采取分层存储管理的方式。
分层存储的主要思想是将活跃数据文件存放在高性能存储设备上,而将不活跃数据文件存放到速度慢但廉价且容量大的存储设备中。
目前的分层存储技术存在着以下的问题:
1. 典型的文件价值判定方法仅仅考虑数据本身的固有属性和历史访问频率,没有考虑文件的访问模式,也没有分析将文件存放在存储系统的哪个层次来加快存储系统的访问速度。
2. 文件的活跃度也是经常随着业务的变化而动态的变化,所以也亟待提出更好的动态迁移策略。
针对以上的问题,本文做出了以下研究工作成果:
1. 分析研究了海量存储系统中文件访问模式和不同存储设备性能差异,提出了自动分层存储系统(ATSS)。
2. 提出了一种基于访问模式与存储性能相匹配的文件价值判定方法(FVPSP)。
3. 针对文件活跃程度不断变化的存储系统,提出了一种基于文件活跃度自适应调整时间间隔的动态迁移策略,该策略减少了迁移过程中迁移模块对正常业务的影响。
第一章 绪论
课题背景
Jim Gray提出,网络环境下每18个月产生的数据量等于有史以来产生的数据量之和。
然而数据虽然增长迅速,但很多数据在创建以后的一段时间后就基本不会再次访问,因此,越来越多机构开始认识到分层存储的重要性。
数据应当也有其生存周期,且不同周期具有不同的价值。
目前,存储技术的分层主要分为:内存,固态硬盘,硬盘,磁带:
论文的主要研究内容和意义
本论文主要研究分层存储系统中的数据估值和数据迁移策略。
数据估值是对不同数据的价值进行评定,然后在数据迁移阶段,根据数据间价值的相对大小,迁移到不同的设备中去。
数据迁移是解决如何迁移这个问题 - 何时迁移,迁移路径,迁移数量 ...... 既要考虑到迁移的效果,又要考虑到迁移对现有业务的影响。
第二章 自动分层存储系统结构
基本思想:
1. 信息生命周期管理ILM - 信息在他们生命周期不同阶段有不同价值。
2. 分层存储管理HSM - 信息根据其价值分配到不同的存储器中
特点:基于文件,更多的可测量指标,更灵活的迁移力度。
模块分析:
1. 元数据管理模块
管理模块保留文件的属性,文件位置以及历史访问信息。每次外部读写请求都需要更新元数据信息。
2. 文件价值判定模块
在每次执行文件迁移之前对数据进行估值。
3. 迁移控制模块
该模块与上一模块紧密结合,接收其文件估值结果并制定文件迁移表。
4. 访问重定向模块
提供一个虚拟层,让上层接口无需关心文件所处的存储器所在的位置。
5. 文件系统监视模块
搜集存储系统的性能信息,该部分也是模块3 - 迁移控制模块的重要依据。
6. 迁移模块
从迁移计划表里取出迁移任务,对文件在不同的层次上进行迁移。
第三章 访问模式与存储性能相匹配的文件价值判定法
数据的生命周期:
1. 数据创建阶段:由用户创建数据信息,在本地存储或云存储分配初始空间。
2. 数据保护阶段:如HDFS会创建三个副本的数据保护。
3. 数据访问阶段:对存储系统来说,这个阶段具有最高使用价值。
4. 数据迁移阶段:将访问不活跃的数据转移。
5. 数据归档阶段:将长期没有访问的数据存入磁盘。
6. 数据回收阶段:许多数据在长时间后发现其没有保存价值了,可将其回收。
文件价值判定函数
Fvalue(i,k)= ρ(i,k)× Fs(i)+ Fr(i)(Fsize(i)+ γ)α
ρ(i,k)=Fs(i) ×[Ts(k+1)−Ts(k)]+ Fr(i)× [Tr(k+1)−Tr(k)]
Fs(i)=ΣFst(i)×δx−tx−1t=1, δ ∈(0,1)
Fr(i)=ΣFrt(i)×δx−tx−1t=1, δ ∈(0,1)
参数说明:
Fs(i) - 顺序访问系数
Fr(i) - 随机访问系数
Fsize(i) - 编号为 i 的文件大小
γ - 最小文件大小
α - 文件大小权重
文件放置计划
采用贪婪策略即可
第四章 基于文件活跃度的动态迁移算法
迁移策略的研究方向:
1. 提高存储设备的性能
2. 合理的迁移时间间隔
3. 最小化迁移代价
算法内容:
1. 容量双阈值迁移条件
存储器容量大于最大容量阈值或者小于最低容量阈值的时候,执行迁移。
2. 基于文件活跃度自适应调整时间间隔
·定义文件系统活跃因子来衡量文件系统的活跃度。
文件活跃度因子A(x)和迁移时间间隔的期望值可以表示如下:
A(x)= U(x)/(H(x)+1)
M(x)=max{ Mmax−b×A(x),Mmin}
参数说明:
3. 合适的迁移速率
不能迁移过快,以免影响现有业务的执行。
采用以下公式计算
F(X)=S/T*X
L(X)=(P(X)−F(X))/S*T
参数说明:
F(X):X时刻应当迁移的文件的大小
S:要迁移的总文件大小
T:迁移时间窗口(迁移时间长度)
全局算法流程图
论文学习 - 《面向海量存储系统的分层存储技术研究》