GIGA+调研

 背景

1.现在越来越多的科学计算和网络服务将文件系统视为一个高速的轻量级“数据库”,将文件当做一个大目录下的无结构记录;

2.程序级的并发导致对元数据服务的并发性要求越来越高

目前文件系统的瓶颈:

1.由单一MDS管理元数据,限制了系统的扩展性

2.将目录的子树分散到不同的mds上管理,但是每个目录及其子树仍然由单一的mds管理;

3.有些系统允许将server作为代理,将请求发送到真正的server上,但是仍然没能解决单目录变化的吞吐量的限制;

4.对称的共享磁盘文件系统,虽然通过使用分布式锁和一致性缓存解决了单目录下并发更新的问题,但是对于并发创建仍然是系统的瓶颈;

5.允许客户端缓存元数据可以加速读速度,但是仍然无法解决更新操作的瓶颈问题

 GIGA+的目标:    

GIGA+尽量避免同步开销,并且尽量减少元数据的迁移; 客户端不换成目录的条目,仅仅缓存目录的索引信息; 客户端缓存的索引信息可能是过期的,此时客户端可能将请求发送到陈旧的server上,则陈旧的server将最新的目录索引信息返回给客户端;当有新的server加入系统时,也将元数据的迁移降到最低并且延迟通知客户端。主要包括以下几点:

1.server水平扩展data partition而不需要维持系统的同步;

2.允许使用过期的partition-to-server映射map;

3.支持在线增加server节点,并且尽量减少数据的迁移

         GIGA+扩展了Fagin的extendible hash方案。extendible hash用来决定将hash值的多少bit位视为有效位,其余的bit位视为无效位留着扩展用。算法使用了两层数据结构:上层是一个indirection,称为header-table(头指针表),每个头指针指向二层数据结构的头。indirection使用一个header-table保存指向partition的指针;header-table中的多个项可以指向同一个partition。header-table中的项使用一个递增的基数索引。GIGA+中,目录条目的名字通过hash与key对应。

         GIGA+中的重要变量是header-table,它保存了索引bitmap和基数。基数与bitmap的增长有关。

         基数随着header-table大小的改变而改变。header-table有2r个条目,每个指向一个partition

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值