zoukankan      html  css  js  c++  java
  • Hadoop2 使用 YARN 运行 MapReduce 的过程源码分析

    Hadoop 使用 YARN 运行 MapReduce 的过程如下图所示:

    总共分为11步. 这里以 WordCount 为例, 我们在客户端终端提交作业:

    # 把本地的 /home/hadoop/test.txt 文件上传到 HDFS 的 /input 下, 之后 HDFS 会对文件分块等
    hadoop-2.7.3/bin/hadoop fs -put /home/hadoop/test.txt /input/  
    # 我们以 hadoop 自带测试例子 wordcount 为例
    hadoop-2.7.3/bin/hadoop jar hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /input /output

    第一步: run job ( 运行作业 )

        这一步是在 Client 内部进行, hadoop jar .... 是通过 RunJar 运行的, 参考  hadoop-2.7.3/bin/hadoop  

    # 这段代码在 hadoop-2.7.3/bin/hadoop 中
    # the core commands
        if [ "$COMMAND" = "fs" ] ; then
          CLASS=org.apache.hadoop.fs.FsShell
        elif [ "$COMMAND" = "version" ] ; then
          CLASS=org.apache.hadoop.util.VersionInfo
        elif [ "$COMMAND" = "jar" ] ; then
          CLASS=org.apache.hadoop.util.RunJar
          if [[ -n "${YARN_OPTS}" ]] || [[ -n "${YARN_CLIENT_OPTS}" ]]; then
            echo "WARNING: Use "yarn jar" to launch YARN applications." 1>&2
          fi

    ( 未完待续 )

  • 相关阅读:
    冒泡算法
    Eclipse 安装插件(aptana、svn 、git、Java EE、JSHint)
    smtp和pop3
    EJB 3.0 + JBOSS 5.1
    有状态EJBBean和无状态的EJBBean
    EJB3.0在发布时出现异常javax.naming.NameNotFoundException: myqueue not bound
    Django之路由系统
    Mysql安装与连接
    Django之Form组件
    jinja2模板
  • 原文地址:https://www.cnblogs.com/zhangchao0515/p/8430821.html
Copyright © 2011-2022 走看看