分享

JobTracker会调用NameNode的方法吗?

gwgyk 发表于 2015-1-12 16:52:38 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 4 11194
最近在做Hadoop优化,其中涉及到JobTracker调用NameNode的方法
我也知道,这样做会破坏模块之间的独立性,但是还想问问大家,在Hadoop中,JobTracker有调用NameNode方法吗?

已有(4)人评论

跳转到指定楼层
tntzbzc 发表于 2015-1-12 17:49:49
Namenode 管理者文件系统的Namespace。它维护着文件系统树(filesystem tree)以及文件树中所有的文件和文件夹的元数据(metadata)。

JobTracker用来管理任务及资源

这两个似乎没有什么交点

回复

使用道具 举报

tntzbzc 发表于 2015-1-12 17:51:31
tntzbzc 发表于 2015-1-12 17:49
Namenode 管理者文件系统的Namespace。它维护着文件系统树(filesystem tree)以及文件树中所有的文件和文件 ...
自然方法上也没有发现。楼主是通过什么联想到他们会有关联的
回复

使用道具 举报

gwgyk 发表于 2015-1-12 19:05:02
tntzbzc 发表于 2015-1-12 17:51
自然方法上也没有发现。楼主是通过什么联想到他们会有关联的

是这样,我们要优化Hadoop底层存储和调度策略,所以需要JobTracker从NameNode获取block和DataNode的对应关系
但是这样的话就需要JobTracker来调用DataNode的方法,但这样就会破坏模块的独立性
所以想问问Hadoop原来有没有JobTracker调用NameNode的呢?
回复

使用道具 举报

w123aw 发表于 2015-1-12 19:20:11
gwgyk 发表于 2015-1-12 19:05
是这样,我们要优化Hadoop底层存储和调度策略,所以需要JobTracker从NameNode获取block和DataNode的对应 ...


既然是改造那就没有关系了,直接拿过包来用就可以了。
可以用BlocksMap

BlocksMap是一个Block对象对BlockInfo对象的一个Map表
如图:

详细参考

深度了解namenode---其 内部关键数据结构原理简介

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条