[转帖]hadoop图解_Hadoop,ERP及大数据讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Hadoop,ERP及大数据讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3264 | 回复: 0   主题: [转帖]hadoop图解        下一篇 
huizai
注册用户
等级:少校
经验:933
发帖:83
精华:0
注册:2013-6-18
状态:离线
发送短消息息给huizai 加好友    发送短消息息给huizai 发消息
发表于: IP:您无权察看 2013-6-19 15:12:31 | [全部帖] [楼主帖] 楼主

转自:http://my.oschina.net/u/617085/blog/75367

gateway机器是跳板机,提交job到云梯的,在gateway机器上只要配置hadoop-site.xml即可,配置文件中主要是指定jobtracker的地址和hdfs的地址。

北京联动北方科技有限公司

gateway机器(相当于job client)提交job和对应的jar包到jobtracker机器上,jobtracker会对提交的作业进行相应的校验,校验通过就初始化这个job,然后jobtracker把对应的job放入调度队列,同时taskTracker会不停的发送心跳信号给jobtracker,如果taskTracker空闲,那么jobtracker会根据调度策略把它分给相应的taskTracker,然后taskTracker就启动一个jvm进程来处理。然后一般taskTracker启动的选择都和datanode的距离有关,一般是先考虑同一服务器的机器,其次是同一机架的,主要是为了减少网络的开销(因为不在同一服务器上的话,还要dataNode的数据传输就需要网路)。

然后taskTracker在跑mapreduce的时候,会请求namenode,由它来告知datanode一系列的信息,比如存储地址,大小等信息。

hdfs的架构图:
北京联动北方科技有限公司

namenode主要是维护文件系统的树结构以及树内文件的目录、地址等信息,它负责管理datanode和数据的读写。它一般会由一个second namenode机器来防止单点故障。

hdfs读取数据:
北京联动北方科技有限公司
dfs客户端先建立hdfs文件系统的连接,然后从namenode中获取对应data的地址等信息,然后通过inputFormat方法去切割和读取datanode中的文件,这样就完成了数据的读取。

hdfs写入数据:
北京联动北方科技有限公司
dfs客户端首先建立hdfs文件系统的连接,然后通过create方法告知它要创建一个文件,然后namenode开始创建一个文件名称,通过hdfs的写入流类进行对datanode数据的写入,它的写入是以包的形式写入的,然后每次写入会有一个ack的包确认信号返回,也就是途中datanode中的两个相互箭头的表示。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论