`

终于成功运行第一个Hadoop程序

阅读更多

 

之前一直只在Windows上玩 为了Hadoop 只好迁移到Ubuntu上~

 



 

记录一下自己的历程:

 

1. Windows上安装Ubuntu

 

方法就是通过wubi安装,全自动化,非常傻瓜,太适合我这种linux小白了!

 

wubi可以直接在官网下载,当时我不知道,使用的还是从iso之中解压出来的程序 哈哈

 

下载地址:http://www.ubuntu.com/download/desktop/windows-installer

 

自己选择合适的来用啊

 

 

 

 

2. 进行各种配置,包括: JDK Hadoop, 当然也包括安装一个拼音输入法。。。。

 

JDK以及配置Hadoop的方法,完全参考的:http://os.51cto.com/art/201211/364167.htm

 Note: 跟着上面的步骤走下来我才知道,这个实际上是伪分布式~

 

3. 开始跑一个例子程序吧~

hadoop自带的例子程序 就在解压出来的hadoop文件夹之中,但是一开始一直遇到一个很奇怪的问题:报错如下:

 

13/07/06 20:10:59 ERROR security.UserGroupInformation: PriviledgedActionException as:hadoop cause:org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: hdfs://localhost:9000/usr/local/hadoop/input

org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: hdfs://localhost:9000/usr/local/hadoop/input

at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(FileInputFormat.java:235)

at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getSplits(FileInputFormat.java:252)

at org.apache.hadoop.mapred.JobClient.writeNewSplits(JobClient.java:1054)

at org.apache.hadoop.mapred.JobClient.writeSplits(JobClient.java:1071)

at org.apache.hadoop.mapred.JobClient.access$700(JobClient.java:179)

at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:983)

at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:936)

at java.security.AccessController.doPrivileged(Native Method)

at javax.security.auth.Subject.doAs(Subject.java:415)

at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)

at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:936)

at org.apache.hadoop.mapreduce.Job.submit(Job.java:550)

at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:580)

at org.apache.hadoop.examples.WordCount.main(WordCount.java:82)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)

at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)

at org.apache.hadoop.examples.ExampleDriver.main(ExampleDriver.java:64)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at org.apache.hadoop.util.RunJar.main(RunJar.java:160)

 

在各种google之后才知道,hdfs里面还没有把input这个文件夹加上去

 

敲入命令:

 

hadoop@ubuntu:/usr/local/hadoop$ bin/hadoop dfs -put input input

 

这样之后,通过dfs-ls命令终于能找到input文件夹:

 

hadoop@ubuntu:/usr/local/hadoop$ bin/hadoop dfs -ls

Found 1 items

drwxr-xr-x - hadoop supergroup 0 2013-07-06 20:12 /user/hadoop/input

 

 

 

这个时候再次执行运行例子程序的命令,就没有之前遇到的异常:

 

Input path does not exist: hdfs://localhost:9000/usr/local/hadoop/input

 

最后正确执行的log如下:

 

hadoop@ubuntu:/usr/local/hadoop$ bin/hadoop jar hadoop-examples-1.2.0.jar wordcount input wc_output2

13/07/06 20:12:39 INFO input.FileInputFormat: Total input paths to process : 1

13/07/06 20:12:39 INFO util.NativeCodeLoader: Loaded the native-hadoop library

13/07/06 20:12:39 WARN snappy.LoadSnappy: Snappy native library not loaded

13/07/06 20:12:40 INFO mapred.JobClient: Running job: job_201307061937_0006

13/07/06 20:12:41 INFO mapred.JobClient: map 0% reduce 0%

13/07/06 20:12:46 INFO mapred.JobClient: map 100% reduce 0%

13/07/06 20:12:53 INFO mapred.JobClient: map 100% reduce 33%

13/07/06 20:12:55 INFO mapred.JobClient: map 100% reduce 100%

13/07/06 20:12:55 INFO mapred.JobClient: Job complete: job_201307061937_0006

13/07/06 20:12:56 INFO mapred.JobClient: Counters: 29

13/07/06 20:12:56 INFO mapred.JobClient: Job Counters

13/07/06 20:12:56 INFO mapred.JobClient: Launched reduce tasks=1

13/07/06 20:12:56 INFO mapred.JobClient: SLOTS_MILLIS_MAPS=4785

13/07/06 20:12:56 INFO mapred.JobClient: Total time spent by all reduces waiting after reserving slots (ms)=0

13/07/06 20:12:56 INFO mapred.JobClient: Total time spent by all maps waiting after reserving slots (ms)=0

13/07/06 20:12:56 INFO mapred.JobClient: Launched map tasks=1

13/07/06 20:12:56 INFO mapred.JobClient: Data-local map tasks=1

13/07/06 20:12:56 INFO mapred.JobClient: SLOTS_MILLIS_REDUCES=8917

13/07/06 20:12:56 INFO mapred.JobClient: File Output Format Counters

13/07/06 20:12:56 INFO mapred.JobClient: Bytes Written=24591

13/07/06 20:12:56 INFO mapred.JobClient: FileSystemCounters

13/07/06 20:12:56 INFO mapred.JobClient: FILE_BYTES_READ=34471

13/07/06 20:12:56 INFO mapred.JobClient: HDFS_BYTES_READ=46619

13/07/06 20:12:56 INFO mapred.JobClient: FILE_BYTES_WRITTEN=180119

13/07/06 20:12:56 INFO mapred.JobClient: HDFS_BYTES_WRITTEN=24591

13/07/06 20:12:56 INFO mapred.JobClient: File Input Format Counters

13/07/06 20:12:56 INFO mapred.JobClient: Bytes Read=46510

13/07/06 20:12:56 INFO mapred.JobClient: Map-Reduce Framework

13/07/06 20:12:56 INFO mapred.JobClient: Map output materialized bytes=34471

13/07/06 20:12:56 INFO mapred.JobClient: Map input records=561

13/07/06 20:12:56 INFO mapred.JobClient: Reduce shuffle bytes=34471

13/07/06 20:12:56 INFO mapred.JobClient: Spilled Records=4992

13/07/06 20:12:56 INFO mapred.JobClient: Map output bytes=77170

13/07/06 20:12:56 INFO mapred.JobClient: Total committed heap usage (bytes)=219152384

13/07/06 20:12:56 INFO mapred.JobClient: CPU time spent (ms)=2450

13/07/06 20:12:56 INFO mapred.JobClient: Combine input records=7804

13/07/06 20:12:56 INFO mapred.JobClient: SPLIT_RAW_BYTES=109

13/07/06 20:12:56 INFO mapred.JobClient: Reduce input records=2496

13/07/06 20:12:56 INFO mapred.JobClient: Reduce input groups=2496

13/07/06 20:12:56 INFO mapred.JobClient: Combine output records=2496

13/07/06 20:12:56 INFO mapred.JobClient: Physical memory (bytes) snapshot=280190976

13/07/06 20:12:56 INFO mapred.JobClient: Reduce output records=2496

13/07/06 20:12:56 INFO mapred.JobClient: Virtual memory (bytes) snapshot=2009939968

13/07/06 20:12:56 INFO mapred.JobClient: Map output records=7804

 

 

 

 

 

最后,查看运行完成之后的结果:

 

bin/hadoop dfs -cat wc_output2/* | more

 

 

 

备注:

 

几个GUI管理网址:[目前我知道的]

 

http://localhost:50070/dfshealth.jsp 

 

http://localhost:50030/jobtracker.jsp

 

 

0
1
分享到:
评论

相关推荐

    Hadoop的单机伪分布式搭建和运行第一个WordCount程序

    Hadoop的单机伪分布式搭建和运行第一个WordCount程序 • 环境: macOs下 Eclipse(Neon)+Hadoop-2.5.2(64位) 注:已经安装的java环境,我的事jdk1.8的

    Hadoop学习全程记录-在Eclipse中运行第一个MapReduce程序.docx

    Hadoop学习过程中的记录笔记:如何在Eclipse下写第一个MapReduce程序

    Hadoop权威指南 第二版(中文版)

    Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何构建Hadoop集群,如何管理Hadoop;Pig简介;Hbase简介;Hive简介;ZooKeeper简介;开源工具Sqoop,最后还...

    Hadoop实战中文版

    1.5.2 相同程序在MapReduce中的扩展 1.6 用Hadoop统计单词——运行第一个程序 1.7 Hadoop历史 1.8 小结 1.9 资源 第2章 初识Hadoop 2.1 Hadoop 的构造模块显示全部信息第一部分 Hadoop——一种分布式编程框架...

    Hadoop权威指南 中文版

    hadoop的i/o、mapreduce应用程序开发;mapreduce的工作机制:mapreduce的类型和格式;mapreduce的特性:如何安装hadoop集群,如何管理hadoop;pig简介:hbase简介:zookeeper简介,最后还提供了丰富的案例分析。  ...

    新版Hadoop视频教程 段海涛老师Hadoop八天完全攻克Hadoop视频教程 Hadoop开发

    第一天 hadoop的基本概念 伪分布式hadoop集群安装 hdfs mapreduce 演示 01-hadoop职位需求状况.avi 02-hadoop课程安排.avi 03-hadoop应用场景.avi 04-hadoop对海量数据处理的解决思路.avi 05-hadoop版本选择和...

    Hadoop开发者第一期入门专刊

    19 在Windows 上使用eclipse 编写Hadoop 应用程序 24 在Windows 中使用Cygwin 安装HBase 28 Nutch 与Hadoop 的整合与部署 31 在Windows eclipse 上单步调试Hive 教程 38 Hive 应用介绍 42 Hive 执行计划解析 50 ...

    【大数据入门笔记系列】第五节 SpringBoot集成hadoop开发环境(复杂版的WordCount)

    【大数据入门笔记系列】第五节 SpringBoot集成hadoop开发环境(复杂版的WordCount)前言环境清单创建SpringBoot项目创建包创建yml添加集群主机名映射hadoop配置文件环境变量HADOOP_HOME编写代码添加hadoop依赖jar包...

    Hadoop权威指南(中文版)2015上传.rar

    第1章 初识Hadoop 数据!数据! 数据存储与分析 与其他系统相比 关系型数据库管理系统 网格计算 志愿计算 1.3.4 Hadoop 发展简史 Apache Hadoop和Hadoop生态圈 第2章 关于MapReduce 一个气象数据集 数据的格式 使用...

    hadoop段海涛老师八天实战视频

    第一天 hadoop的基本概念 伪分布式hadoop集群安装 hdfs mapreduce 演示 01-hadoop职位需求状况.avi 02-hadoop课程安排.avi 03-hadoop应用场景.avi 04-hadoop对海量数据处理的解决思路.avi 05-hadoop版本选择和...

    Hadoop实战-第2版-陆嘉恒.pdf

    MapReduce应用程序5. MapReduce应用案例6. MapReduce工作机制7. Hadoop I/O操作8. 下一代MapReduce: Yarn9. HDFS简介10. HDFS文件结构11. Hive详解12. HBase详解13. Mahout简介14. Pig详解15. ZooKeeper详解16. ...

    Hadoop实战中文版.PDF

    71.5.2 相同程序在MapReduce中的扩展 91.6 用Hadoop统计单词——运行第一个程序 111.7 Hadoop历史 151.8 小结 161.9 资源 16第2章 初识Hadoop 172.1 Hadoop的构造模块 172.1.1 NameNode 172.1.2 ...

    最高气温 map reduce hadoop 实例

    自己的第一个hadoop 实例,好高兴分享一下。 运行命令hadoop jar ‘/home/hadoop/downloas/max.jar’ upload.MaxTemperature

    Hadoop实战

    《Hadoop实战》作为云计算所青睐的分布式架构,Hadoop是一个用Java语言实现的软件框架,在由大量计算机组成的集群中运行海量数据的分布式计算,是谷歌实现云计算的重要基石。《Hadoop实战》分为3个部分,深入浅出地...

    《hadoop实战》第二版中文

    作为云计算所青睐的分布式架构,Hadoop是一个用Java语言实现的软件框架,在由大量计算机组成的集群中运行海量数据的分布式计算,是谷歌实现云计算的重要基石。《Hadoop实战》分为3个部分,深入浅出地介绍了Hadoop...

    hadoop权威指南第2版

    Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何构建Hadoop集群,如何管理Hadoop;Pig简介;Hbase简介;Hive简介;ZooKeeper简介;开源工具Sqoop,最后还...

    hadoop权威指南(第2版)

    hadoop的i/o、 mapreduce应用程序开发;mapreduce的工作机制;mapreduce的类型和格式;mapreduce的特性;如何构建hadoop集群,如何管理hadoop;pig简介;hbase简介;hive简介;zookeeper简介;开源工具sqoop,最后还...

    hadoop权威指南(中文第2版)

    hadoop的i/o、mapreduce应用程序开发;mapreduce的工作机制;mapreduce的类型和格式;mapreduce的特性;如何构建hadoop集群,如何管理hadoop;pig简介;hbase简介;hive简介;zookeeper简介;开源工具sqoop,最后还...

    Hadoop实战(陆嘉恒)译

    Hadoop——一种分布式编程框架第1 章 Hadoop简介1.1 为什么写《Hadoop 实战》1.2 什么是Hadoop1.3 了解分布式系统和Hadoop1.4 比较SQL 数据库和Hadoop1.5 理解MapReduce1.5.1 动手扩展一个简单程序1.5.2 相同程序在...

Global site tag (gtag.js) - Google Analytics