没有合适的资源?快使用搜索试试~ 我知道了~
基于持久性内存和SSD的后端存储MixStore.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 4 浏览量
2022-06-10
08:13:33
上传
评论
收藏 828KB DOCX 举报
温馨提示
试读
29页
基于持久性内存和SSD的后端存储MixStore.docx
资源推荐
资源详情
资源评论
基于持久性内存和 SSD 的后端存储
MixStore
摘 要 持久性内存同时具备内存的低时
延字节寻址和磁盘的持久化特性,将对现有软件架构体系产生革命性
的变化和深远的影响分布式存储在云计算和数据中心得到了广泛的应
用,然而现有的以 为代表的后端存储引擎是面向传
统机械盘和固态硬盘设计的,其原有的优化
设计机制不适合 特性优势的发挥提出了一种基于持久性内存和
的后端存储 ,通过易失区段标记和待删除列表技术实
现了适用于持久性内存的并发跳表,用于替代 实现元数据
管 理 机 制 , 在 保 证 事 务 一 致 性 的 同 时 , 消 除 了 的
所引发的性能抖动等问题,同时提升元数据的并发访问
性能;通过结合元数据管理机制的数据对象存储优化设计,把非对齐
的小数据对象存放在 中,把对齐的大块数据对象存储在
上,充分发挥了 的字节寻址、持久性特性和 的大容量低
成本优势,并结合延迟写入和 !!"技术实现数据更
新策略优化,消除了 的 #$ 日志引起的写放大,提升小
数 据 写 入 性 能 测 试 结 果 表 明 , 在 同 样 的 硬 件 环 境 下 相 比
, 的写吞吐提升 %&',写时延降低了 ()',有
效地提升了系统的性能
关键词 持久性内存*并发跳表*后端存储*混合存储* 存储引擎
近年来,随着移动通信和物联网技术的快速发展,数据的规模呈
爆发式增长,传统的存储系统已经无法满足不断增长的海量数据存储
的需要为解决数据存储规模、数据备份、数据安全、服务质量、软件
定义等问题,分布式存储系统应运而生分布式存储是通过软件的方法
把若干节点的存储资源,如磁盘、内存等组织起来,对外提供虚拟的
统一的块、文件或对象接口的按需存储服务
本 地 文 件 系 统 如 +,- , +./0
-,10!-等,具有成熟、
稳定的优势,成为分布式存储系统访问本地存储资源的主要方法应用
广泛的分布式存储系统 的后端存储 , 也是基于 +, 进
行存储访问这样做的优势是利用了文件和对象天然的映射关系,利用
操作系统页缓存机制缓存数据,利用索引节点缓存机制缓存元
数据,同时从操作系统层面保证了磁盘的隔离性但是这种架构也有明
显的缺陷
234
,主要是事务一致性难以保证,元数据管理低效,以及缺乏
对新型硬件的支持鉴于此, 在 5" 版本引入了 作
为后端存储 将对象数据的存放方式改为直接对裸设备进行
指 定 地 址 和 长 度 的 读 写 操 作 , 不 再 依 赖 本 地 文 件 系 统 提 供 的
67+1!8009接口同时,
引入了 数据库保存元数据和属性信息,包括对
象 的 集 合 、 对 象 、 存 储 池 的 信息 和 磁 盘 空 间 分 配 记 录 等 ,
有效避免了数据的双写,提升了元数据的操作效率,同时
借助 解决了事务一致性问题
虽然改善了元数据效率和事务一致性,但在实际使用
中存在一些明显的问题
234
,主要包括:
3 使用预写式日志"888 #$技术
保 证 一 致 性 , 存 在 写 放 大 本 身 的 $!.8!
8
2:4
机制也会带来写放大$!. 的数据压
紧机制还会带来业务的性能抖动
: 的 元 数 据 信 息 、 属 性 信 息 和 小 数 据 被 存 储 到
中,并在其中多次复制和序列化,带来较大的 9 开销
(为了保证事务一致性,对小数据的更新需要先从磁盘读取更新
后保存到 中,同时 有自己的 #$ 日志,导致
505 的写放大问题
上述 ( 个问题和对应的系统开销,在固态硬盘
和机械盘场景下,相对系统整体性能提升带来的收益来说是值得
的,但在持久性内存场景下则成为了不必要的负担
2(4
也称为非易失内存!;
<=或存储级内存8,在
本文统称为 因其非易失、字节寻址和原地更新等特性,
成为工业界和学术界研究的热点
没有很好利用 内存式高速处理和外存式持久化
的双重能力 具有非易失、字节寻址特性
2/4
,可以通过简化日志
的方式保证事务一致性,减少日志结构引起的数据整理和写放大,以
及由此带来的额外系统开销和性能瓶颈与传统基于块的存储设备相比,
提供了更高的吞吐和更低的延迟但是, 比 容量小
且单位存储成本更高,而且目前商用的 读写具有不对称性,例
如通过 7$
2%4
测得的 76 读
带宽最高约为 >?,而写带宽则约为 :?因此, 更适
合用来存储元数据和小数据,而 更适合存储大块的数据对象充分
发挥 和 存储介质的优势特性,设计高性能的后端存储,
将为解决传统存储的不足带来了新的机遇
本 文 提 出 了 一 种 基 于 和 的 分 布 式 后 端 存 储
,通过针对 和 特性的组合优化设计,构建性能
更优的本地存储系统,解决了 现有后端存储 的写放
大以及 等问题
1 相关工作
现有的 被设计为一个面向 和 @
;的存储引擎,致力于提供快速的元数据操作、避免对象
61A写入时的一致性开销,同时解决日志双写问题 通
过将元数据保存到 来实现快速的元数据操作通过
# 进行磁盘空间管理,将 61A 直接写入块设备,去除对文
件 系 统 的依 赖 同 时 , 实现 了写 时 复 制 机制 !!
" 方式的 61A 更新,从而避免在日志中包含完整的
61A 数据,解决双写问题但是基于 管理元数据存在写放
大问题, 的 操作也会导致性能抖动,影响系
统吞吐率另一方面,在数据规模较大以及 等应用
场景中,基于 的元数据管理仍然难以满足性能要求即使更
换持久性内存等更高性能的硬件,所获得的提升也有限
以 $;
2>4
和
2)4
为代表的 $!. 存储引擎凭借其优
异的写性能成为众多分布式组件的存储基石在大型生产环境中,例如
8.1
2B4
,
2&4
,@
23C4
等广泛 部署了各种基于 $!
. 的本地存储$!. 把小的随机写通过合并操作变成连续的顺
序写,因此对 @ 硬盘的写入性能有很好的优化相比 @ 来说,
的顺序写入和随机写入性能差别较小,所以 $!. 对 的
写入性能提升有限为此, D
2334
提出一种基于 优化的键值
!;D=存储,核心思想是把 和 ; 分离,只有
被保存在 $!. 中,而 ; 单独存储在日志中这样就显著减小
了 $!. 的大小,使得查找期间数据读取量减少,并减轻了索引
树合并时不必要的数据移动而引起的写放大 D 保留了 $!
. 的优势,减少了写放大,但数据访问时需要进行多次 # 映射,
且 依 然 存 在 $!. 固 有 的 过 程 $!
23:4
基 于
剩余28页未读,继续阅读
资源评论
罗伯特之技术屋
- 粉丝: 3663
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功