1、分布式文件存储系统原型Soft-Raid 文件传输协议系统基本思想n 利用 Raid算法实现一个分布式的文件传输协议,加快文件传输速度,提高数据的可用性。n 四台对等服务器提供服务,无中心服务器n 系统应该支持n 上传 (put)n 下载 (get)n 删除 (rm)n 重命名 (rename)n 移动文件位置 (mv)n 设置文件权限 (chmod)n 多用户 /多组之间文件共享n 多用户 /多组管理维护一致性:事务处理n 写操作使用分布式事务n 使用两阶段提交协议保证服务器之间的数据一致性RAID: 3-of-4 Encodingn 文件被分割为 3个等大的块,根据这三个块计算出一个同样大
2、小的校验块,将这四块分别存到不同的服务器上。当文件大小小于某阈值时,则将该文件直接在各服务器上存储一份复本n 读取时只要读取任何三块都可以还原出原来的文件,通常只取源文件的分割块以减少计算时间n 当服务器上任何一块丢失或损坏后,可以通过其他三块计算出损失的块效率: 3-of-4 Encodingn 同时从三个服务器读取比从单个服务器上要快近三倍,同时存储的数据量只为源文件的 4/3倍,冗余量小容错性与自动恢复n 当 4台服务器中任何一台瘫痪后,用户只能进行读操作n 在瘫痪的服务器重起后,管理员可以通过管理软件端控制它进行数据恢复n 数据恢复完成后用户可以在此进行写操作管理软件n 添加 /删除 /修改用户、组n 设置用户的磁盘配额n 可以修改任何用户的文件n 服务器瘫痪时进行数据恢复安全:文件加密传输n 用户可以选择使用 SSL协议进行传输加密n 实现上使用 OpenSSL,对上层传输透明维护一致性:并发控制n 服务器端利用多进程和文件锁控制多个用户的并发问题n 每个进程服务一个用户连接n 进行读操时加读锁n 进行写操作时加写锁