• hadoop-HDFS 2.X新特性


    1.集群间数据拷贝

      1.1 scp实现两个远程主机之间的文件复制  

        scp -r hello.txt root@hadoop103:/user/luomk/hello.txt          // 推 push
        scp -r root@hadoop103:/user/luomk/hello.txt  hello.txt       // 拉 pull
        scp -r root@hadoop103:/user/luomk/hello.txt root@hadoop104:/user/luomk   //是通过本地主机中转实现两个远程主机的文件复制;如果在两个远程主机之间ssh没有配置的情况下可以使用该方式。

      1.2 采用discp命令实现两个hadoop集群之间的递归数据复制

        bin/hadoop distcp hdfs://haoop102:9000/user/luomk/hello.txthdfs://hadoop103:9000/user/luomk/hello.txt

    2.小文件存档

      2.1 hdfs存储小文件弊端

        每个文件均按块存储,每个块的元数据存储在NameNode的内存中,因此hadoop存储小文件会非常低效。因为大量的小文件会耗尽NameNode中的大部分内存。但注意,存储文件所需要的磁盘容量和存储这些原始内容所需要的磁盘空间相比也不会增多;

      2.2 解决存储小文件的办法之一

        hadoop存档文件或har文件,是一个更高效的文件存档工具,它将文件存入HDFS块,在减少NameNode内存使用的同时,允许对问价进行透明的访问;具体说,hadoop存档文件对内还是一个一个独立文件,对NameNode而言却是一个整体,减少了NameNode的内存;

          

      2.3 实例

    //需要启动yarn进程
         [luomk@hadoop102 hadoop-2.7.2]$ start-yarn.sh
    //归档文件
         把/user/luomk目录里面的所有文件归档成一个叫myhar.har的归档文件,并把归档后文件存储到/user/my路径下。
         [luomk@hadoop102 hadoop-2.7.2]$ bin/hadoop archive -archiveName myhar.har -p /user/luomk   /user/my
    //查看归档
         [luomk@hadoop102 hadoop-2.7.2]$ hadoop fs -lsr /user/my/myhar.har
         [luomk@hadoop102 hadoop-2.7.2]$ hadoop fs -lsr har:///myhar.har
    //解归档文件
         [luomk@hadoop102 hadoop-2.7.2]$ hadoop fs -cp har:/// user/my/myhar.har /* /user/luomk

        

  • 相关阅读:
    客户机(单线程 和多线程都可以用 主要是看服务器是单线程的还是多线程的)
    获得URl信息
    获取地址
    定时器的使用以及日期的学习
    生产者和消费者
    线程join
    线程的协作
    文件的解压与压缩
    文件的分割与合并
    以各种方式读写文件
  • 原文地址:https://www.cnblogs.com/wnwn/p/12560487.html
Copyright © 2020-2023  润新知