分布式文件系统研究10:多媒体分布式文件系统(4)
时间:2007-04-16 来源:leejianzhou
4. 设计策略
4.1. 文件访问并发度方面
1. 文件块大小设置
l 因为磁盘寻道时间占据了磁盘存取总时间的绝大部分,所以在连续磁盘扇区进行读写比在磁盘上跳转具有更高的带宽效率。
l 文件块(block)要大,GPFS是16KB-1M,默认256KB,DFS是1M,MMFS是512KB,一般的文件系统是4KB。
l 这种做法文件碎片可能很大,GPFS采用的策略是把1个块分为16/32个子块,把不足一个block大小的小文件以及文件结尾存放在子块里
l 多媒体文件一般块头都很大,文件碎片所占的比例可能不是很突出,因而文件碎片问题不是很严重。
2. 文件分段存储策略
l 分段存储的级别:
u 以文件块为单位;
u 以文件段为单位;
l 提高并发度,减轻缓存管理的压力,
l 需要数据库对文件元数据存储提供支持
l 降低了可靠性
l 文件碎片处理
3. 数据复制,提高数据可靠性和文件访问并发度
l 分段存储的可靠性可以通过硬件的raid来提高,成本比较高;
l 也可以依靠软件的文件复制来提高,但是带来了文件一致性问题,需要精心设计;
4. 缓存(caching)和预取(prefetching)策略
l 缓存一致性:必须保持缓存和文件系统上存储的实际文件数据的一致性
l 提前预取:播放器端实现
5. 磁盘空间利用率和磁盘吞吐量的平衡
l 磁盘越大,空间利用率越高,但是并行吞吐率越低
l 多媒体文件的访问对磁盘吞吐量也提出了一定的要求
6.元数据和存储数据分开存储,提高数据传输的带宽
4.2. 实时调度方面
1. 磁盘软实时调度算法
必须实现一定的软实时要求,对磁盘访问任务进行分级调度;
4.3. 数据一致性和可靠性方面
1. 数据复制
既提高了性能也提高了可靠性,但是带来了数据一致性问题,为此,必须利用锁管理和日志来维持数据一致性
2. 锁管理
特别是对文件的更新处理,在文件分段存储的情况下,如何对文件加锁
l 对文件加锁:效率低
l 对文件块加锁:普遍的方式
l 对字节流序列加锁:如GPFS,使用令牌进行管理
3. 日志
本机、分布式日志,便于恢复