程序编写及打包

  1. 使用maven导入第三方jar

    pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion> <groupId>hadoop-study</groupId>
    <artifactId>HadoopTest</artifactId>
    <version>4.0</version>
    <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <hadoop.version>2.7.5</hadoop.version>
    </properties>
    <dependencies>
    <dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-client</artifactId>
    <version>${hadoop.version}</version>
    </dependency>
    <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
    <scope>test</scope>
    </dependency>
    <dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-minicluster</artifactId>
    <version>${hadoop.version}</version>
    <scope>test</scope>
    </dependency>
    </dependencies>
    <build>
    <finalName>word-count</finalName>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
    <source>1.6</source>
    <target>1.6</target>
    </configuration>
    </plugin>
    <plugin>
    <groupId>org.apache.maven.plugin</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.5</version>
    <configuration>
    <outputDirectory>${basedir}</outputDirectory>
    </configuration>
    </plugin>
    </plugins>
    </build>
    </project>
  2. 导入本地配置文件测试运行

    在Idea 里选择ProjectStructure 添加hadoop配置路径并把它设为resource,可以进行build和run

  3. 打包文件提交运行

    在Idea 里选择ProjectStructure 删除hadoop配置路径

    在Idea 里选择ProjectStructure/Artifact,添加jar/from modules with dependencies,选择主类

    hadoop jar HadoopTest.jar [args]

监视job运行状态

  1. 修改hadoop配置文件

    <!--mapred-site.xml-->
    <configuration>
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property>
    </configuration>
    <!--yarn-site.xml-->
    <configuration>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
    </property>
    <property>
    <name>yarn.resourcemanager.address</name>
    <value>master:8032</value>
    </property>
    <property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>master:8030</value>
    </property>
    <property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>master:8031</value>
    </property>
    </configuration>
  2. 常用网址和命令

    查看任务: hadoop job -list

    杀死任务: hadoop job -kill jobid

    任务页面:http://master:8088

常见问题

  1. Class not found

    • 在IDE编译的时候发生,可能是没有导入需要的依赖包

      解决办法:使用maven配置依赖环境

    • 当手动运行class 文件时发生,可能是没有设置hadoopclasspath

      解决办法:export $HADOOP_CLASSPATH=CLASSPATH:".",或者是打包成jar运行

  2. 在任务页面无法看到job

    原因:hadoop需要另外配置mapreduce的运行时环境,默认是local,需配置成yarn

    解决办法:在mapred-site.xml中添加mapreduce.framework.name配置

  3. retrying connecting 0.0.0.0

    原因:没设置yarn.resourcemanger的主机ip,或者设置错文件

    解决办法: 在yarn-site.xml 上添加yarn.resourcemanger.hoatname等信息

  4. map卡在0%

    原因:需要在yarn里面配置附属服务为mapreduce

    解决办法:在yarn-site.xml 上添加yarn.nodemanager.aux-services

参考文章:https://blog.csdn.net/tangtang5156/article/details/40867759

hadoop 提交程序并监控运行的更多相关文章

  1. Hadoop示例程序WordCount编译运行

    首先确保Hadoop已正确安装及运行. 将WordCount.java拷贝出来 $ cp ./src/examples/org/apache/hadoop/examples/WordCount.jav ...

  2. 简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行

    [TOC] 简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行 程序源码 import java.io.IOException; import java.util. ...

  3. 编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本]

    编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本] 1. 开发环境 Jdk 1.7.0_72 Maven 3.2.1 Scala 2.10.6 Spark 1.6 ...

  4. 使用IDEA远程向伪分布式搭建的Hadoop提交MapReduce作业

    环境 VirtualBox 6.1 IntelliJ IDEA 2020.1.1 Ubuntu-18.04.4-live-server-amd64 jdk-8u251-linux-x64 hadoop ...

  5. Linux下使用Eclipse开发Hadoop应用程序

    在前面一篇文章中介绍了如果在完全分布式的环境下搭建Hadoop0.20.2,现在就再利用这个环境完成开发. 首先用hadoop这个用户登录linux系统(hadoop用户在前面一篇文章中创建的),然后 ...

  6. 2 weekend110的mapreduce介绍及wordcount + wordcount的编写和提交集群运行 + mr程序的本地运行模式

    把我们的简单运算逻辑,很方便地扩展到海量数据的场景下,分布式运算. Map作一些,数据的局部处理和打散工作. Reduce作一些,数据的汇总工作. 这是之前的,weekend110的hdfs输入流之源 ...

  7. 使用Python实现Hadoop MapReduce程序

    转自:使用Python实现Hadoop MapReduce程序 英文原文:Writing an Hadoop MapReduce Program in Python 根据上面两篇文章,下面是我在自己的 ...

  8. 一套代码小程序&Web&Native运行的探索03——处理模板及属性

    接上文:一套代码小程序&Web&Native运行的探索02 对应Git代码地址请见:https://github.com/yexiaochai/wxdemo/tree/master/m ...

  9. Hadoop生态圈-使用Ganglia监控flume中间件

    Hadoop生态圈-使用Ganglia监控flume中间件 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Ganglia监控简介 加州伯克利大学千禧计划的其中一个开源项目.是一 ...

随机推荐

  1. 学习笔记:IIS搭建PHP网站出现404错误的解决办法

    关于404错误提示相信大家都遇到过吧,记得我遇到这个问题的时候,弄得我焦头烂额的,今天给大家分享下,使用IIS大家PHP网站时出现404错误提示的处理方法,希望对各位朋友有所帮助.IIS搭建PHP出现 ...

  2. ExpressRoute 概述

    使用 Azure ExpressRoute 可通过连接服务提供商所提供的专用连接,将本地网络扩展到 Azure 云.使用 ExpressRoute 可与 Azure云服务建立连接. 可以从任意位置之间 ...

  3. Python scrapy 常见问题及解决 【遇到的坑】

    1. 爬虫出现Forbidden by robots.txt 解决方法:setting.py ROBOTSTXT_OBEY = True 改成False 原因:scrapy抓包时的输出就能发现,在请求 ...

  4. [翻译] VBPieChart

    VBPieChart https://github.com/sakrist/VBPieChart Pie Chart iOS control with different animations to ...

  5. oracle 大表 已有大数据量 建索引防卡 nologging

    create index idx_th_user_info_fans_name on th_user_info(fans_name) nologging;

  6. DB_NAME DB_UNIQUE_NAME 和 SID 的理解

    1. DB_NAME 表示数据库名称,DB_NAME 会保持在数据文件头.控制文件.REDO文件里,所以更改DB_NAME不能仅仅修改spfile ,还需要用nid 来进行更改,并且更改后还需要手工做 ...

  7. Hexo Next配置百度分享、加入动态背景、接入网页在线联系功能、页脚增加统计功能、添加gitment、添加热度、阅读量排行

    Hexo Next配置百度分享.加入动态背景.接入网页在线联系功能.页脚增加统计功能.添加gitment.添加热度.阅读量排行: https://wangc1993.github.io/categor ...

  8. August 01st 2017 Week 31st Tuesday

    A contented mind is the greatest blessing a man can enjoy in this world. 知足是人生在世最大的幸事. Being content ...

  9. 41、Thead线程 System.Thread与互斥体Mutex

    Thead线程 System.Thread 使用Thread类可以创建和控制线程.下面的代码是创建和启动一个新线程的简单例子.Thread 类的构造函数重载为接受ThreadStart和Paramet ...

  10. Vue中$refs的用法

    说明:vm.$refs 一个对象,持有已注册过 ref 的所有子组件(或HTML元素) 使用:在 HTML元素 中,添加ref属性,然后在JS中通过vm.$refs.属性来获取 注意:如果获取的是一个 ...