• 安装hadoop1.2.1(参考hadoop实战第二版)


    准备:

      安装jdk和ssh。

    1. 官网下载hadoop1.2.1

      hadoop-1.2.1.tar.gz

      http://hadoop.apache.org/releases.html

    2. 解压到/home/hadoop/目录下

    3. 伪分布式hadoop配置

      可以把伪分布式的hadoop看做只有一个节点的集群,在这个集群中,这个节点既是Master,也是Slave;既是NameNode,也是DataNode;既是JobTracker,也是TaskTracker。伪分布式的配置过程很简单,只需要修改几个文件。进入conf文件夹,修改配置文件。

    • 指定JDK的安装位置:修改hadoop-env.sh如下
    #添加jdk路径
    export JAVA_HOME=/usr/lib/jvm7/jdk1.7.0_79
    • 修改core-site.xml
    <!-- 配置HDFS的地址及端口号-->
    <configuration>
        <property>
            <name>fs.default.name</name>
            <value>hdfs://localhost:9000</value>
        </property>
    </configuration>
    • 修改hdfs-site.xml

      该文件用来配置hdfs,配置的默认备份方式是3,单机版的hadoop中需要改为1.

    <!-- 设置HDFS备份方式 -->
    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    </configuration>
    • 修改mapred-site.xml

    该文件是MapReduce的配置文件,配置JobTracker的地址和端口。

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

    4. 在启动hadoop之前,需要格式化hadoop的文件系统hdfs。

      hadoop namenode -format

    5. 启动所有进程

      bin/start-all.sh

    6. 打开浏览器输入网址

      http://localhost:50030(MapReduce的web页面)

      http://localhost:50070(HDFS的web页面)

    WordCount:

    1. 在file文件夹下创建两个文件

    echo "hello world" > file0.txt
    echo "hello hadoop" > file1.txt

    2. 将新创建的两个文件上传到HDFS

    hadoop dfs -put file /input

    3. 编译WordCount.java

    javac -classpath ~/hadoop/hadoop-1.2.1/hadoop-core-1.2.1.jar:~/hadoop/hadoop-1.2.1/lib/commons-cli-1.2.jar ~/hadoop/WordCount/WordCount.java -d ~/hadoop/WordCountJar

    4. 打包class文件

    jar -cvf wordcount.jar ./*.class

    5. 在hadoop中运行wordcount.jar文件

    hadoop jar wordcount.jar WordCount input output

    6. HDFS常用命令(待编辑)

        hadoop dfs -mkdir /file              在HDFS上新建文件夹
    
        hadoop dfs -put input1.txt /input  把本地文件input1.txt传到HDFS的/tmp/input目录下
    
       hadoop dfs -get  input1.txt /tmp/input/input1.txt  把HDFS文件拉到本地
    
        hadoop dfs -ls /tmp/output                  列出HDFS的某目录
        hadoop dfs -cat /tmp/ouput/output1.txt  查看HDFS上的文件
    
        hadoop dfs -rmr /home/less/hadoop/tmp/output  删除HDFS上的目录
    
        hadoop dfsadmin -report 查看HDFS状态,比如有哪些datanode,每个datanode的情况
    
       hadoop dfsadmin -safemode leave  离开安全模式
    
        hadoop dfsadmin -safemode enter  进入安全模式
  • 相关阅读:
    ref与out的区别(C#)
    用MS SQL Server 2008修改数据库表时提示“不允许保存更改”的解决方法
    测试的职责
    性能测试新手误区(三):用户数与压力
    JAVA + LR实现apache流媒体的性能测试(LR部分)
    性能测试新手误区(二):为什么我模拟的百万测试数据是无效的
    JAVA + LR实现apache流媒体的性能测试(JAVA部分)
    性能测试新手误区(六):性能监控
    性能测试新手误区(五):这是性能问题么
    性能测试新手误区(四):一切来自录制
  • 原文地址:https://www.cnblogs.com/iamswf/p/4578735.html
Copyright © 2020-2023  润新知