分布式文件系统快照的思考

文章探讨了分布式文件系统中快照的实现,主要涉及COW和ROW两种技术,并对比了它们的优缺点。快照在元数据管理上较为复杂,特别是处理递归和文件的映射关系。在对文件系统进行快照后,读写操作的处理是关键,需要考虑如何高效地实现快照的读写功能。
摘要由CSDN通过智能技术生成

      snapshot最初实在块设备上实现的,例如san阵列。lvm也支持逻辑卷级别的snapshot。例如如果用san存放oracle的dat文件,在san上设置定时快照策略,例如一天一次或者几个小时一次,这样就相当于定期对数据库做一次备份,与比定期把dat文件全拷贝相比,snapshot的速度快、占用物理存储空间比较少。

     快照的技术实现主要是两种方式,COW(copy on write)和ROW(redirect on write)。粗略的对比,COW简单易实现,但是写速度慢,空间利用率低。目前san阵列主流技术是ROW。

     文件系统实现snapshot要比块设备复杂很多。主要原因是文件系统的元数据比块设备复杂很多,文件系统元数据的粒度较低。举个简单例子,文件系统需要考虑递归,例如对一个路径做snapshot,其实就是对路径和递归到下层的路径和文件一起做snapshot。  先不考虑递归文件,首先看下如何对单个文件做snapshot。对磁盘文件系统不是很熟悉,讨论下分布式文件系统里面的snapshot。再增加一个约束条件,就是snapshot不支持读写,这样实现会更简单。

    分布式文件系统里,单个文件元数据包括三个方面:

                     fileid+file description,(file id相当于file handle,file description对应于磁盘文件系统里面inode的一些信息,即file feature,例如修改时间,size,属组权限等)

                     chunkid+chunk description

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值