HDFS元数据的独立服务和独立持久化存储

HDFS元数据的独立服务和独立持久化存储

ID:37323547

大小:577.73 KB

页数:17页

时间:2019-05-21

HDFS元数据的独立服务和独立持久化存储_第1页
HDFS元数据的独立服务和独立持久化存储_第2页
HDFS元数据的独立服务和独立持久化存储_第3页
HDFS元数据的独立服务和独立持久化存储_第4页
HDFS元数据的独立服务和独立持久化存储_第5页
资源描述:

《HDFS元数据的独立服务和独立持久化存储》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、HDFS元数据的独立服务和独立持久化存储2009-8-22罗李Email:luoli523@gmail.comTwitter:luoli523主要内容起因现状我们的想法我们的实现后续的发展起因•数据的急剧膨胀•文件数的不断增多•Block随之成倍的增长•内存的急剧上涨•内存数据结构•一致性保证造成的性能瓶颈•Meta服务依靠namenode的启停•部分meta数据没有持久化(block->dn)现状•集群–单个集群1900台机器1T×12(2T×6)•数据量–22.28PB/36.98PB60%•文件数–1亿左右•Block数–1.3亿左右•Meta存储

2、–只持久化了namespace的信息到fsimage现状•内存–60G/80G~75%•数据结构–BlockMap靠内存中ref来维护block->dn的信息•响应•删除文件个数1100万,每天的删除操作为240万•创建文件操作900万~1200万•重命名文件数量为1050万•通过文件名获取block及其位置的操作getBlockLocations有近3亿•类似“ls”的操作有700万新的架构(InnodbonFusionIO)BlockChecker(InnodbonFusionIO)StateManagerStateManagerDatanodeBl

3、ockFileZookeeperZookeeperStatelessStatelessStatelessNamenodeNamenode…NamenodeDatanodeDatanodeDatanode…DatanodeNamenode的改进•无状态NN:针对HDFS中Namenode单点瓶颈的问题,TBFS通过无状态方式实现Namenode的水平扩展。为了实现无状态Namenode,需要将以前保留在Namenode内存中的关键数据结构部分或全部挪到第三方,并持久化保存。数据结构名称描述dir保存HDFS目录结构的数据结构FSDirectory(文件->

4、块的对应关系)blocksMap保存块与文件、块与datanode和datanode与块的对应关系datanodemap保存datanode的storageID和对应DatanodeDescriptor的Map容器heartbeats保存拥有心跳的Datanode的DatanodeDescriptor的容器corruptReplicas保存损坏块的Map容器,key为Block,value为对应Datanode的DatanodeDescriptor集合recentInvalidateSets保存即将删除的块的Map容器,key为Datanode的Stor

5、ageID,value是块的Block集合excessReplicateMap保存多余块的Map容器,key为Datanode的storageID,value是块的Block集合保存少于replication数的块的数据结构,其内部维护了一个List>neededReplications类型的优先级队列pendingReplications保存处于replicationpending状态的block,如果超时则放入TimeoutItems列表中leaseManager维护写操作和追加操作租约的数据结构7Namenode的改进

6、(续1)将BlocksMap和FSDirectory在数dir据库中实现持久化保存(InnodbonFusionIO)blocksMap(InnodbonFusionIO)StateManagerStateManagerDatanodeBlockFileheartbeatsdatanodeMapdatanodeMap和heartbeats的数据从数据•基于树状结构来描述Map和Set,比Stateless库中读取,Namenode中只是缓存较直观,操作方便Stateless•提供了ephemeral和sequenceNamenodeStatelesszn

7、ode的机制,方便做成员管理和提Namenode供分布式锁服务NamenodeZooKeeper•提供了Watcher机制,提供对数据变/化的通知LeaseManger…namenodedatanodeblockcheckerZookeeperpendinleaseunderexcesscorruptinvalidategroup为LeaseManager保g存全局lease信息维护under维护excess维护维护TBFS维护replication维护corruptreplicationreplicationinvalidate集群中pending相关

8、的块相关的持相关的持久相关的持久块相关的持namenode8持久化数据久化数据化

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。