BTRFS- Multiple Device Support(多重设备支持)

备注:本文翻译自 IBM Research Report BTRFS - Linux Btree Filesystem

Linux 有设备映射(DMs)子系统去管理存储设备。举个例子,LVM和mdadm,这些时软件模型,主要功能是管理raw disks,合并他们到虚拟的连续的块地址空间,并且将其抽象话到更高级别的内核层。他们支持镜像,剥离和RAID5/6。无论如何,checksums是不支持的,这样会导致BTRFS有一个问题。举个例子,考虑一种情况,数据存储在磁盘上是RAID-1的格式,每个4KB块有一个额外的拷贝。 如果文件系统在一个拷贝上检测到一个checksum的错误,它需要从其他拷贝恢复。DMs隐藏了虚拟地址空间抽象化背后的信息,并且返回其中一份拷贝。为了规避这个问题,BTRFS做了自己的设备管理。它计算checksums,将他们存储在一个单独的树中,然后更好的确定当媒介错误发生的时候合适恢复数据。

一台机器可以被附加到多个存储设备上;BTRFS分离每个设备到large chunks,经验法则是chunk大约是一个设备尺寸的1%。

在写的时刻, 1GB chunks 被用于数据, 256Mchunks用于元数据。

一个chunk tree 包含一个从逻辑chunks到物理chunks的映射。 一个device tree包含反向映射,文件系统剩余部分可以看到有逻辑的chunks,所有的extent references 地址逻辑chunks。这个允许移动物理的chunks under the covers无需回溯和引用修复。 chunk/device trees 是很小的,并且典型的可以在内存中缓存。这个减少增加间接层的性能开销。 

物理的chunks根据逻辑chunk的需要的RAID级别被分成组。对于镜像,chunk

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值