Hadoop-Hadoop应用总结(转载)

http://lxm63972012.iteye.com/blog/1433307

环境配置

       1.  安装linux ubuntu系统

       2. 安装开启openssh-server:$ sudo apt-get install openssh-server

       3. 建立ssh 无密码登录

           $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
          
           直接回车,完成后会在~/.ssh/生成两个文件:id_dsa 和id_dsa.pub。
          
           这两个是成对出现,类似钥匙和锁。再把id_dsa.pub 追加到授权key 里面(当前并没有authorized_keys文件):
          
           $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys。
          
           完成后可以实现无密码登录本机:$ ssh localhost。
         
       4.关闭防火墙 $ sudo ufw disable

       5. 安装jdk 1.6

       6. 安装后,添加如下语句到/etc/profile 中:

           export JAVA_HOME=/home/Java/jdk1.6
          
           export JRE_HOME=/home/Java/jdk1.6/jre
          
           export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
          
           export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

 

Hadoop伪分布配置
1. 在conf/hadoop-env.sh文件中增加:export JAVA_HOME=/home/Java/jdk1.6

2. 在conf/core-site.xml文件中增加如下内容:
<!--  fs.default.name - 这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URI跟DataNode交互,以取得文件的块列表。-->
    <property>
          <name>fs.default.name</name>
          <value>hdfs://localhost:9000</value>
    </property>

<!—hadoop.tmp.dir 是hadoop文件系统依赖的基础配置,很多路径都依赖它。如果hdfs-site.xml中不配置namenode和datanode的存放位置,默认就放在这个路径中-->
   <property>
      <name>hadoop.tmp.dir</name>
      <value>/home/hdfs/tmp</value>
   </property>
  
3. 在conf/hdfs-site.xml中增加如下内容:  
<!-- dfs.replication -它决定着系统里面的文件块的数据备份个数。对于一个实际的应用,它应该被设为3(这个数字并没有上限,但更多的备份可能并没有作用,而且会占用更多的空间)。少于三个的备份,可能会影响到数据的可靠性(系统故障时,也许会造成数据丢失)-->
     <property>
         <name>dfs.replication</name>
         <value>1</value>
     </property>
<!-- dfs.data.dir - 这是DataNode结点被指定要存储数据的本地文件系统路径。DataNode结点上的这个路径没有必要完全相同,因为每台机器的环境很可能是不一样的。但如果每台机器上的这个路径都是统一配置的话,会使工作变得简单一些。默认的情况下,它的值hadoop.tmp.dir, 这个路径只能用于测试的目的,因为它很可能会丢失掉一些数据。所以,这个值最好还是被覆盖。 dfs.name.dir - 这是NameNode结点存储hadoop文件系统信息的本地系统路径。这个值只对NameNode有效,DataNode并不需要使用到它。上面对于/temp类型的警告,同样也适用于这里。在实际应用中,它最好被覆盖掉。-->
    <property>
         <name>dfs.name.dir</name>
         <value>/home/hdfs/name</value>
    </property>
    <property>
        <name>dfs.data.dir</name>
        <value>/home/hdfs/data</value>
    </property>
4. 在conf/mapred-site.xml中增加如下内容:
<!-- mapred.job.tracker -JobTracker的主机(或者IP)和端口。-->
<property>
       <name>mapred.job.tracker</name>
       <value>localhost:9001</value>
</property>   
    

操作命令

1.  格式化工作空间

进入bin目录,运行 ./hadoop namenode –format

2.  启动hdfs

进入hadoop目录,在bin/下面有很多启动脚本,可以根据自己的需要来启动。

* start-all.sh 启动所有的Hadoop守护。包括namenode, datanode, jobtracker, tasktrack

* stop-all.sh 停止所有的Hadoop

* start-mapred.sh 启动Map/Reduce守护。包括Jobtracker和Tasktrack

* stop-mapred.sh 停止Map/Reduce守护

* start-dfs.sh 启动Hadoop DFS守护Namenode和Datanode

* stop-dfs.sh 停止DFS守护  

 

Hadoop hdfs 整合

     可按如下步骤删除和更改hdfs不需要的文件:

         1.将hadoop-core-1.0.0.jar 移动到lib目录下。

         2. 将ibexec目录下的文件移动到bin目录下。

         3. 删除除bin、lib、conf、logs之外的所有目录和文件。

         4. 如果需要修改日志存储路径,则需要在conf/hadoop-env.sh文件中增加:

            export    HADOOP_LOG_DIR=/home/xxxx/xxxx即可。

 

HDFS文件操作

Hadoop使用的是HDFS,能够实现的功能和我们使用的磁盘系统类似。并且支持通配符,如*。

       1.  查看文件列表

查看hdfs中/user/admin/hdfs目录下的文件。

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -ls /user/admin/hdfs

查看hdfs中/user/admin/hdfs目录下的所有文件(包括子目录下的文件)。

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -lsr /user/admin/hdfs

       2.  创建文件目录

查看hdfs中/user/admin/hdfs目录下再新建一个叫做newDir的新目录。

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -mkdir /user/admin/hdfs/newDir

       3.  删除文件

删除hdfs中/user/admin/hdfs目录下一个名叫needDelete的文件

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -rm /user/admin/hdfs/needDelete

      删除hdfs中/user/admin/hdfs目录以及该目录下的所有文件

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -rmr /user/admin/hdfs

        4. 上传文件

上传一个本机/home/admin/newFile的文件到hdfs中/user/admin/hdfs目录下

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs –put /home/admin/newFile /user/admin/hdfs/

        5. 下载文件

下载hdfs中/user/admin/hdfs目录下的newFile文件到本机/home/admin/newFile中

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs –get /user/admin/hdfs/newFile /home/admin/newFile

        6. 查看文件内容

查看hdfs中/user/admin/hdfs目录下的newFile文件

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs –cat /home/admin/newFile

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值