Hadoop日记1:初探linux、JDK、Hadoop2、Hello World

本文记录了在Ubuntu环境下配置Hadoop伪分布式的过程及遇到的问题,包括Java环境配置、SSH无密码登录设置、Hadoop配置文件调整等,并通过WordCount案例演示了Hadoop的基本使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:Wmware 12.5.7、Ubuntu 16.04 LTS、java 1.8.0_144、Hadoop 2.7.4。

今天在linux下尝试了hadoop的操作,首先是配置java环境,过程有点繁琐,好在linux可以直接在终端下载软件,期间配置环境变量时误删了profile下的一个词还找了很久错。然后是安装SSH,配置SSH的无密码登陆,这个具体用处暂时不懂。下一步就是安装Hadoop2了,然后就是一个很奇怪的“找不到JAVA_HOME” 问题,后来经过排查需要将hadoop-env.sh和hadoop-config.sh等文件中的JAVA_HOME改成显式的jdk安装路径,问题得以解决。下一步是Hadoop伪分布式配置,使得Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。这个需要修改2个配置文件core-site.xml 和 hdfs-site.xml。  最后是运行实例,统计单词的个数,这里准备了两个文件file1.txt和file2.txt。

hadoop@hadoop-virtual-machine:/usr/local/hadoop$ echo "hello world" > ./input/file1.txt
hadoop@hadoop-virtual-machine:/usr/local/hadoop$ echo "hello hadoop" > ./input/file2.txt
在hdfs里建个input文件夹,在hdfs原有的input和output文件都要-rmr删掉。

hadoop@hadoop-virtual-machine:/usr/local/hadoop$ bin/hdfs dfs -mkdir input

将txt文件上传到hdfs中

hadoop@hadoop-virtual-machine:/usr/local/hadoop$ bin/hdfs dfs -put ./input/test*.txt input

调用jar

hadoop@hadoop-virtual-machine:/usr/local/hadoop$ bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.4.jar wordcount input output

最后输出output

hadoop@hadoop-virtual-machine:/usr/local/hadoop$ bin/hdfs dfs -cat output/part-r-00000
hadoop	1
hello	2
world	1

还可以将结果导到文件中,注意需要将本地原有的output文件夹删掉,不可以覆盖。

./bin/hdfs dfs -get output ./output

部分资料参考网友:http://www.powerxing.com/install-hadoop/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值