HADOOP的学习笔记 (第一期)

hadoop分布式包括mapreduce以及hdfs文件系统,适合处理大文件,不是和处理多个小文件。

其中分为NameNode 与DataNode,可以有多个DataNode,一个NameNode新版本以后会有两个NameNode防止NameNode down掉。

JobTracker 接受作业提交,监控和控制作业的运行,负责任务分发到TaskTracker 。

TaskTracker控制Map/Reduce任务中当前节点的运行\

nn jobtracker master

dn jobtracker slave


开始慢慢学习hadoop,就当是自己学习的笔记吧。以后也方便看。


首先需要准备一个环境,我准备的环境是linux,这样既可以学习linux又可以学习hadoop。我的linux用的是centos,大家可以根据自己的个人喜好。

环境上需要安装,jdk、以及ssh,因为hadoop使用到jdk的,所以需要进行提前安装。都准备完毕以后可以进入正轨了。


1.设置ssh免密码登陆,我的情况是单机情况,多机情况差不多。

cd /root/.ssh

ssh-keygen -t rsa -P ' ’ -f ~/.ssh/id_rsa 回车中途有可能需要输入yes,完成以后再.ssh目录中多处了几个文件:id_rsa、id_rsa.pub

        然后将id_dsa.pub文件 cp到/tmp目录下:cp /root/.ssh/id_rsa.pub /tmp

        如果是多台机器则同时需要copy其他的机器之上:scp /root/.ssh/id_rsa.pub 192.168.1.54:/tmp

        最后执行:cat /tmp/id_rsa.pub >> /root/.ssh/authorized_keys   >>追加

        完成以后进行测试 ssh localhost看是否还需要密码,如果不需要密码,ok

2.配置jdk,修改hadoop配置文件,指定jdk的安装路径:

        首先查看java的环境变量配置:env | grep JAVA 然后copy

        进入到hadoop目录。我用的hadoop版本是0.20 cd hadoop-0.20.2/conf/

        vi hadoop-env.sh

export JAVA_HOME=/home/app/jdk1.6.0_30


下面是配置hadoop的单机环境:

3.f修改hadoop核心的配置文件core-site.xml配置hdfs的地址和端口号:

vi conf/core-site.xml
  <configuration>
    <property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
    </property>
  </configuration>

4.修改hadoop中hdf配置,修改replication,控制复制数量,我的理解的意思是互相备份

      vi conf/hdfs-site.xml

<configuration>
    <property>
<name>dfs.replication</name>
<value>1</value>
    </property>
  </configuration>

5.修改hadoop中mapreduce的配置文件,配置的是jobtrack的地址和端口

<configuration>
    <property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
    </property>
 </configuration>

6.配置完成以后格式化文件系统:

bin/hadoop namenode - format

7.启动hadoop

bin/start-all.sh

8.jps查看情况 或者使用 bin/hadoop dfs -ls /


9.同样也可以startx 进入图形化界面,用浏览器查看hdfs与jobtracker的情况。

http://localhost:50030 mapreduce  的 web 界面
http://localhost:50070 hdfs  的web 界面




可以查看hdfs中的文件情况,点击第一幅图中的browse the filesystem,也就是50070中的。

我们可以新建一个文件夹以及放入一些文件来做一会的测试:

通过

bin/hadoop fs -mkdir /input 创建一个input目录。

bin/hadoop fs -put *.sh /input 在hadoop中的bin目录中执行,将此目录中的所有.sh文件放到文件系统的/input文件夹下

然后我们用hadoop自带的一个例子进行测试:wordcount

bin/hadoop jar hadoop-0.20.2-examples.jar wordcount /input /output


执行完成以后我们同样可以去50070去看,这时会多了一个output目录里面就是放的统计结果。

同样可以去50030看看job的执行情况,执行当中会有一个run jobs,执行完成就会出现一个complated jobs 可以看分析情况。


至此,hadoop的入门单机环境算是搞了。一遍后即继续学习。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值