没有合适的资源?快使用搜索试试~ 我知道了~
基于蚁群优化算法的纠删码存储系统数据更新方案.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 129 浏览量
2022-06-10
08:17:58
上传
评论
收藏 1.96MB DOCX 举报
温馨提示
试读
33页
基于蚁群优化算法的纠删码存储系统数据更新方案.docx
资源推荐
资源详情
资源评论
摘 要 由于纠删码具备高可用性和高存储空间有效性的特点,采用纠删
码为大规模分布式存储系统提供数据持久性已成为事实标准.然而,纠
删码的密集型更新操作将导致大量的数据传输和 I O 开销.如何减少数
据传输量,优化现有网络资源的利用率,以提高纠删码的更新效率,
成为纠删码存储系统面临的重要挑战.然而,在多重服务质量(quality
of service, QoS)指标下,目前对纠删码更新效率的优化研究很少.针
对此问题,提出一种基于蚁群优化算法的多数据节点更新方案 (ant
colony optimization algorithm based multiple data nodes
update scheme, ACOUS),采用 2 阶段数据更新方式以优化多数据
节点更新过程.具体而言,基于多目标蚁群优化更新路由算法(multi-
objective ant colony optimization update routing algorithm,
MACOU)所构建的多目标更新树,2 阶段数据更新方式能有效地进行
数据增量收集和校验增量分发.大量的实验结果表明,在典型的数据中
心网络拓扑结构下,与 TA-Update 方案相比,所提方案能够在保证算
法收敛的前提下,以可忽略的计算开销为代价,将更新时延降低 26%
~37%.
关键词 分布式存储系统;数据更新;纠删码;蚁群优化;更新时延
由于纠删码具备高可用性和高存储空间有效性的特点,采用纠删
码为分布式存储系统以及数据中心
[1-4]
提供数据持久性已成为约定俗成
的标准.纠删码把大数据对象划分成多个小的数据块,然后将这些小的
数据块通过编码生成多个校验块,最后将这些数据块和校验块部署在
不同存储群集的存储节点上.
数据更新在分布式存储系统中很常见
[5-8]
.在许多企业的服务器和网
络文件系统中,更新请求常常主导了写入工作负载(通常超过 90%)
[9-10]
.
在 典 型 的 最 大 距 离 可 分 (maximum distance separable,
MDS)MDS(n,k)纠删码存储系统中,1 个数据块的更新请求涉及到 n-
k 个校验块的更新.根据纠删码更新过程中是否有传输整个数据块,可
以将更新分为 2 类:基于 raid 的更新和基于增量的更新.其中,基于
raid 的更新方案需要在数据节点和校验节点之间传输整个数据块,为
了完成对数据节点的更新,数据节点首先需要收集所有新的数据块,
然后重新计算更新后的校验块,并将其传到相应的校验节点.基于增量
的更新方案只需要将数据节点上数据增量(数据块修改的部分)通过广
播的方式传输到每一个校验节点,相比之下,基于增量的更新可以节
省更多的 I O 操作和网络带宽.然而,频繁的数据更新也会导致巨大的
I O 操作和带宽开销.尤其在使用纠删码的键值存储系统中,对键值数
据进行密集的小型更新会导致巨大的 I O 操作和昂贵的网络流量
[7,11-15]
.
提高纠删码的更新效率具有十分重要的意义
[16]
.最近一些研究工作
者投入了大量精力来优化纠删码更新性能,以减少 I O 操作和降低网
络时延
[6,17-19]
.在现有的更新方案中,如 CodFS
[17]
和 Azure
[20]
,采用追加式
更新方式,或采用替换式更新和追加式更新的混合方式.一些研究者试
图通过优化更新顺序和更新过程来减少网络传输开销
[6,18-19]
.
从网络性能角度来看,数据增量最好是能够沿着数据节点与校验
节点之间的最佳网络路径进行传输.虽然当前的路由算法能够可靠地处
理分布式存储系统的大量网络流量
[21-22]
,但是数据更新路由技术缺乏对
异构存储系统(异构是指系统中的存储节点的吞吐量、I O 速率不同,
以及各段网络链路的有效带宽均不同)的深入研究,从而导致网络资源
利用率不高.因此,优化大规模分布式存储系统路由极为重要,需要深
入研究纠删码存储系统中数据更新路由.为了设计多目标路由优化更新
算法,包括内存 I O 速率和其他服务质量(quality of service, QoS)
指标,如时延和带宽,本文提出一种基于蚁群优化算法的多数据节点
更 新 方 案 (ant colony optimization algorithm based multiple
data nodes update scheme, ACOUS),ACOUS 采用 2 阶段的数
据更新过程来优化多数据节点的更新路由,并且使用基于多目标蚁群
优 化 更 新 路 由 算 法 (multi-objective ant colony optimization
update routing algorithm, MACOU)建立的更新树进行数据增量的
收集和校验增量的分发.
具体而言,所提出的 ACOUS 方案采用集合式数据更新模式,主要
包含 2 个阶段:在第 1 阶段,数据更新由数据节点触发.可以有多个数
据节点(最多 k 个)进行更新,而其中的 1 个节点将被选为集合节点,
其他所有数据节点计算数据增量并根据 MACOU 算法将数据增量发送
到集合节点.在第 2 阶段,集合节点根据 MACOU 算法建立的多目标更
新树,将较验增量依次分发到相应的校验节点.
本文的主要贡献有 3 个方面:
1) 针对大规模异构纠删码存储系统的内存吞吐量和跨节点链路带
宽不相等的问题,本文提出的 ACOUS 是第一个深入研究异构纠删码
存储系统中多数据节点更新过程和更新路由的工作.由于蚁群算法在解
决 QoS 路由问题上的广泛应用
[23]
,因此本文使用多目标蚁群优化算法
来提高纠删码更新效率.
2) 分别定量分析了集合式更新和分布式更新方式下的数据更新 I
O 操作数量和数据传输开销,分析了多个数据节点的更新路由问题.
3) 开发了一个原型系统,进行了大量实验以评估在典型数据中心
网络拓扑下 ACOUS 的性能.实验结果表明,本文提出的 MACOU 更新
算法优于 TA-Update
[5]
,在保证收敛性的前提下显著提高了更新效率.
1 背景及相关工作
本节先介绍纠删码以及蚁群优化路由算法的原理,然后介绍目前
常用的纠删码的更新方法.
1.1 纠删码和蚁群优化路由算法
由于分布式存储系统有持久性和存储效率的需求,纠删码在大规
模存储系统的应用成为研究焦点.众所周知,里德-所罗门码 RS(n,k)
[24]
(reed solomon codes, RS)纠删码首先将一个大小为 D 字节的文件
分为 k 个大小相等的数据块 d
i
(1≤i≤k),每个数据块大小为 D k 字节
然后,这些等大的数据块通过编码生成 k 个数据块和 n-k 个校验块,
这些数据块和校验块组成一组(称为条带 Stripe),分布在 n 个不同的
存储节点(D
1
…D
k
;P
1
…P
n-k
)中,这 n 个节点属于不同的群集,以此来最
大限度地提高系统的可靠性.每个校验块 p
j
(1≤j≤n-k)根据式(1)进行计
算,其中 表示 d
i
到 p
j
的系数.基于这种线性编码,n 个块中任何不多
于 k 个块出现故障就可以重建整个原始文件.
(1)
数据节点上的更新可以通过将数据增量广播到所有校验节点,使
用 预 先 定 义 的 系 数 将 增 量 添 加 到 校 验 节 点 以 保 持 数 据 一 致 性 .
代表数据增量,当新数据 覆盖原始数据 d
i
后,校验节点接
收由数据节点发送的数据增量后进行计算并更新.如果有 u(1≤u≤k)个
数据节点进行更新,每个校验节点根据式(2)计算更新后的
(2)
剩余32页未读,继续阅读
资源评论
罗伯特之技术屋
- 粉丝: 3691
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功