精华内容
下载资源
问答
  • hadoop程序运行

    千次阅读 2012-04-06 10:53:58
    hadoop命令的使用: Usage: hadoop [--config confdir] COMMAND 这里COMMAND为下列其中一个: namenode -format 格式化DFS文件系统 secondarynamenode 运行DFS的第二个namenode namenode 运行DFS的...

    hadoop命令的使用:

    Usage: hadoop [--config confdir] COMMAND 
    


    这里COMMAND为下列其中一个:

     
    1. namenode -format        格式化DFS文件系统  
      secondarynamenode       运行DFS的第二个namenode  
      namenode                    运行DFS的namenode  
      datanode                    运行一个DFS的datanode  
      dfsadmin            运行一个DFS的admin 客户端  
      fsck                运行一个DFS文件系统的检查工具  
      fs                  运行一个普通的文件系统用户客户端  
      balancer            运行一个集群负载均衡工具  
      jobtracker          运行MapReduce的jobTracker节点  
      pipes               运行一个Pipes作业  
      tasktracker     运行一个MapReduce的taskTracker节点  
      job                 处理MapReduce作业  
      version         打印版本  
      jar <jar>       运行一个jar文件  
      distcp <srcurl> <desturl>   递归地复制文件或者目录  (采用分布式复制方法,一般用于两个HDFS集群中)
      archive -archiveName NAME <src>* <dest> 生成一个Hadoop档案       (将har当作一个新的文件系统,《权威指南3.8节》)
      daemonlog               获取或设置每个daemon的log级别  
      或CLASSNAME              运行名为CLASSNAME的类大多数命令会在使用w/o参数  
                              时打出帮助信息。

       


    • hadoop程序的编译:(我是用的hadoop版本为hadoop-0.20.203.0)

    1.注意的是要将hadoop的core包加入到classpath中,命令如下:

    javac -classpath ~/hadoop-0.20.203.0/hadoop-core-0.20.203.0.jar  FileSystemDoubleCat.java

    (这里还有一个疑问:我用通配符添加jar包时一直失败(使用 *.jar),提示找不到类??????)


    • 运行hadoop程序的方法如下:

    1.直接使用hadoop CLASSNAME 【args】 运行,

        ( 注意此时需设置环境变量 HADOOP_CLASSPATH中包含当前类。其中当前目录中应该包含.class文件,这个可以通过在eclipse中的bin文件下取得,或用上面的方法进行编译)

    如:hadoop FileSystemDoubleCat hdfs://localhost:9000/user/kqiao/uploadFile


    2.将程序打包成jar包,然后使用hadoop jar命令运行。

         这只相当于将上面中的.class文件打包,然后运行该jar文件。(注意,如果以集群模式下运行hadoop,则只能使用这种方法,因为需要在各网络节点上分发jar包)并且主程序中要有:

    job.setJarByClass(MaxTemperature.class)这句,用于设定jar类

    命令如下:jar -cvf FileSystemDoubleCat.jar FileSystemDoubleCat.class
                        hadoop jar FileSystemDoubleCat.jar FileSystemDoubleCat hdfs://localhost:9000/user/kqiao/uploadFile

    3.安装eclipse的hadoop插件,直接在eclipse中编辑程序,然后运行

         这应该算是最简单的运行方法了吧。。。。

       在run configuration下完成配置,然后 run on hadoop即可。

    -----------------------------------------------------------------------------------------------------------------------------------

      以后记录我在运行中遇到的问题~

    (1)-D mapred.reduce.tasks=2   或  job.setNumReduceTasks(2) 设置reducer的数量   

        (换了一个hadoop版本,不知道为什么,使用-D  选项设置reducer数量失败了,没有报错,但是reducer保持为1,只能使用job.set来设置?未解决。。)

      (2)如果已经确定有某类的存在,却一直提示找不到该类,一般是因为class_path的设置问题。

      (3)如果自定义的mapper类是主类的内部类时,一定记得将其定义为static。

      (4)hadoop程序,如果有运行错误,主要通过查看job或task的日志解决:看看抛出了什么样的异常,在哪个阶段,哪个任务抛出了异常。

       如果是运行结果与预期不符,则通过查看计数器判断那部分出错,另一方面可以在程序中加入输出语句,System.out.println("****");然后在web页面中的job下查看各个job的task日志,看看 stdout log, stderr log进行分析排序。



    展开全文
  • Hadoop 程序运行两大模型

    千次阅读 2019-12-12 09:24:05
    案例 : world count ...指定本次MapReduce程序中 数据输入的路径(hdfs文件系统中的路径) 和 数据最终输出 存放在什么位置(hdfs...1.创建数据输入的路径(hdfs文件系统中的路径):hadoop fs -mkdir -p /Hado...

    案例 : world count

     

    IDEA pom文件 :

     

     

    指定本次MapReduce程序中 数据输入的路径(hdfs文件系统中的路径) 和 数据最终输出 存放在什么位置(hdfs文件系统中的路径)
            1.创建数据输入的路径(hdfs文件系统中的路径):hadoop fs -mkdir -p /Hadoop_daima/input
            2.把要计算的文件放到数据输入的路径(hdfs文件系统中的路径)中:hadoop fs -put xx.txt yy.txt /Hadoop_daima/input
            3.注意:不需要创建 数据最终输出目录(hdfs文件系统中的路径),否则会报错:FileAlreadyExistsException: Output directory,
                   数据最终输出目录会由MapReduce程序创建

     Hadoop MapReduce--程序运行模型--集群运行模式

    将 mapreduce 程序提交给 yarn 集群的命令:
        格式一:hadoop jar xx.jar mapreduce程序的全限定类名 args参数
        例子:hadoop jar wordcount.jar cn.itcast.bigdata.mrsimple.WordCountDriver args

        格式二:hadoop jar xx.jar
            (无需配置mapreduce程序的全限定类名,因为在pom.xml中的<mainClass>标签体中配置了mapreduce程序的全限定类名)
        例子:hadoop jar wordcount.jar

     

    Hadoop MapReduce--程序运行模型--本地运行模式

    conf.set("mapreduce.framework.name","local")代码语句 为设置本地模式运行,但要注意的是 mapred-default.xml中已经默认配置是本地模式,
    所以即使不配置conf.set(“mapreduce.framework.name”,“local”),只要右键run运行该程序仍然是本地模式

    展开全文
  •  查看hdfs文件权限,通过 hadoop fs -chmod 777 XXXX 进行权限的修改 2、本地(Linux)文件权限不够  查看并修改权限,同样使用chmod命令 3、对hdfs进行文件写入时,显示权限不够  (1)、参照第一种方法便可...

    问题:在hdfs与本地文件系统进行文件读写的时候显示权限不够

    解决:

    1、hdfs中的文件权限不够

           查看hdfs文件权限,通过 hadoop fs -chmod 777 XXXX 进行权限的修改

    2、本地(Linux)文件权限不够

           查看并修改权限,同样使用chmod命令

    3、对hdfs进行文件写入时,显示权限不够

           (1)、参照第一种方法便可

           (2)、(修改用户,不再是本机用户,而是hdfs用户)修改编译器的配置,右键类方法的名称,在debug as 中找到 run configurations 做如下配置

                

    其中hadoop这个名字你需要改成自己的,可以通过web界面进行查看用户的名称。

    展开全文
  • 以前Hadoop集群运行jar包都没问题的,但是昨天突然出现了这个问题,网上查阅了很多,大部分说是配置的问题(yarn-site.xml、mapred-site.xml配置错误),但是既然我的环境以前能运行程序就应该不是环境的问题,于是...

    以前Hadoop集群运行jar包都没问题的,但是昨天突然出现了这个问题,网上查阅了很多,大部分说是配置的问题(yarn-site.xml、mapred-site.xml配置错误),但是既然我的环境以前能运行程序就应该不是环境的问题,于是查阅了很多终于解决了问题,希望对各位有所帮助:

    有太多任务在排队,需要
    1 用hadoop job -list查看正在运行的job
    2 用hadoop job -kill jobId杀掉job

    展开全文
  • Hadoop应用程序

    2011-01-10 16:34:10
    Hadoop的小程序,看代码比较方便,如果要运行,那么需要加很多jar build path,这些jar包大部分都是hadoop的jar。
  • Hadoop集群运行JNI程序

    千次阅读 2013-07-27 00:02:00
    要在Hadoop集群运行运行JNI程序,首先要在单机上调试程序直到可以正确运行JNI程序,之后移植到Hadoop集群就是水到渠成的事情。 Hadoop运行程序的方式是通过jar包,所以我们需要将所有的class文件打包成jar包。在...
  • Hadoop系统安装运行程序开发 1.单机Hadoop系统安装基本步骤 2.集群Hadoop系统安装基本步骤 3.Hadoop集群远程作业提交与执行 4.Hadoop MapReduce程序开发
  • 使用 Intellij 和 Maven 在本地运行 Hadoop 程序 您可以使用这种方法在本地编写和测试您的 Hadoop 程序,而无需在您自己的机器上配置 Hadoop 环境或使用集群。 本教程基于 , 。 要求 JDK Linux 或 Mac 操作系统 ...
  • 用命令行运行hadoop程序,中间出现了很多错误,和大家分享一下 将WordCount.java文件放在Hadoop安装目录下,我的是放在/home/administrator/hadoop-0.20.2/下,并在此目录下创建输入目录input,改目录下有输入文件...
  • windows环境下编写hadoop程序 新建:File->new->Project->Maven->next GroupId 和ArtifactId 随便写(还是建议规范点)->finfsh 会生成pom.xml,文件内容如下 <?xml version="1.0" encoding=...
  • hadoop运行Java程序

    千次阅读 2015-04-20 20:47:41
    第一种:原生态运行jar包 1,利用eclipse编写Map-Reduce方法,一般引入Hadoop-core-1.1.2.jar。注意这里eclipse里没有安装hadoop的插件,只是引入其匝包,该eclipse可以安装在windows或者linux中,如果是在windows中...
  • Hadoop2.0,YARN也采用了Master/Slave结构。Master-ResourceManager:负责整个集群资源的管理与调度,主要这么几个功能包括:处理来自客户端的请求启动管理ApplicationMaster,接收来自ApplicationMaster的资源申请...
  • hadoop运行java程序

    2012-11-28 16:22:59
    1、借助eclipse 在eclipse下面搭建Hadoop开发环境的相关问题及其解决详见...2、在命令下运行 首先需要将程序打成jar包,我用的eclipse写程序,也就用eclipse打包了,如果工程中包含第
  • 首先,在Hadoop安装目录下新建一个名称为myapp的目录,用来存放我们自己编写的Hadoop应用程序,可以在Linux的终端中执行如下命令: [zhd@zhd local]$ mkdir myapp 直接点击finish,成功后点击OK 查看是否生成 ...
  • 在win10中配置hadoop开发环境时没有在c:\windows\system32目录中拷贝hadoop.dll文件 2、 错误: org.apache.hadoop.io.nativeio.NativeIO$Win dows.createDirectoryWithMode0(Ljava/lang/String;I)V 解决办法: ...
  • 1.hadoop集群(我用的是hadoop-2.7.3版本),这里hadoop有两种:1是编译好的hadoop-2.7.3;2是源代码hadoop-2.7.3-src; 2. 自己的机器可以是任何系统,只要支持JVM,自己的主机上必须有eclipse,以及hadoop-...
  • 在eclipse下运行hadoop程序

    千次阅读 2017-08-24 20:00:56
    1.我的是hadoop1.2.1+ecplise4.2 ,假如你是Hadoop1.2.1,建议使用ecplise4.2以下试试,因为我试了ecplise4.7、4.6、4.4、4.3都不行,把Hadopp-1.2.1的jar包放进去目标目录都显示不了DFS Location,所以不断尝试更换...
  • Hadoop示例程序WordCount运行及详解

    千次阅读 2017-10-23 14:46:14
    研究Haddop框架,费了一整天时间将Hadoop在Linux下完全运行起来,看到官方的map-reduce的demo程序WordCount,仔细研究了一下,算做入门了。 MapReduce确实是一种新的编程理念。其中为map和reduce函数。先用 map处理...
  • hadoop 集群运行WordCount示例程序

    千次阅读 2015-12-19 17:02:56
    在博客中http://blog.csdn.net/stormragewang/article/details/41148917写到运行wordcount程序 [hadoop@Yarn-Master ~]$ hadoop/2.6.1/bin/hadoop jar hadoop/2.6.1/share/hadoop/mapreduce/hadoop-mapreduce-...
  • Linux系统(Ubuntu14.10)下Hadoop开发环境搭建 下载Eclipse,解压安装,...这样就可以用eclipse编写Hadoop程序,调试正确后,就可以打成jar包,提交到Hadoop分布式集群中运行。注意,在Eclipse中运行程序,并没有提交
  • 现在我们就用使用Hadoop运行一下其自带的WordCount程序,以初步了解一些Hadoop是怎么运行的,我们采取两种方式运行这个小程序,首先是在Eclipse的环境中将WordCount程序直接运行Hadoop上然后观察结果,然后再将...
  • WordCount_MapReduce 在 Hadoop运行的 MapReduce 程序
  • PageRank_MapReduce 在 Hadoop运行的 MapReduce 程序
  • Eclipse调用hadoop2运行MR程序

    万次阅读 2014-04-03 22:03:27
    Eclipse调用hadoop运行MR程序其实就是普通的java程序可以提交MR任务到集群执行而已。在Hadoop1中,只需指定jt(jobtracker)和fs(namenode)即可,一般如下:Configuration conf = new Configuration(); conf.set(...
  • linux下的eclipse编写hadoop2.7.3测试程序,使程序可以正常运行
  • 首先到Hadoop安装目录下的/sbin,然后运行./start-all.sh 当看到上面六个服务说明已经正常启动了,那么继续下一步 2、 回到Hadoop安装目录下,执行下面命令创建文件夹及文件 bin/hadoop fs -mkdir -p /test/...
  • 今天写好hadoop 程序之后,进行线上测试,驶入数据为一个hive表的文件,location到了一个hdfs目录下,然后跑hadoop的过程中,map阶段没有出现问题,但是每次到了reduce阶段,进度都卡在33%不动了,刚开始以为是集群...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 131,048
精华内容 52,419
关键字:

hadoop程序运行