zoukankan      html  css  js  c++  java
  • HDFS的体系结构和操作

    HDFS fs 常用命令

    1.对hdfs操作的命令格式是hadoop fs
      1.1 -ls <path> 表示对hdfs下一级目录的查看

        hadoop fs -ls hdfs://chaoren:9000/ ----对HDFS的根目录进行查看(Linux下:ls /)
        path:这个可以使用more core-site.xml进行查看,发现里面配置有这个path的值为hdfs://chaoren:9000。

      1.2 -lsr <path> 表示对hdfs目录的递归查看

        hadoop fs -lsr hdfs://chaoren:9000/
        hadoop fs -lsr /
        这两个命令的作用是一样的,都是查询HDFS根目录下的

      1.3 -mkdir <path> 创建目录

        hadoop fs -mkdir /d1 ---创建文件夹d1
        hadoop fs -ls / ---验证文件夹是否创建成功


      1.4 -put <src> <des> 从linux上传文件到hdfs

        hadoop fs -put ./core-site.xml hdfs://chaoren:9000/d1

      1.5 -get <src> <des> 从hdfs下载文件到linux

        hadoop fs -get /d1/core-site.xml .

      1.6 -text <path> 查看文件内容

        hadoop fs -text /d1/core-site.xml

      1.7 -rm <path> 表示删除文件

        hadoop fs -rm /d1/core-site.xml

      1.8 -rmr <path> 表示递归删除文件

        hadoop fs -rmr /d1


    2.hdfs在对数据存储进行block划分时,如果文件大小超过block,那么按照block大小进行划分;不如block size的,划分为一个块,是实际数据大小。

    Namenode:
    1、是整个文件系统的管理节点。它维护着整个文件系统的文件目录树,文件/目录的元信息和每个文件对应的数据块列表。接收用户的操作请求。

    2、文件包括:(源码中hdfs-site.xml的dfs.name.dir属性)
    (1)fsimage:元数据镜像文件。存储某一时段namenode内存元数据信息。
    (2)edits:操作日志文件。
    (3)fstime:保存最近一次checkpoint的时间。
    以上这些文件都是保存在Linux的文件系统中。

    Datanode:
    提供真实文件数据的存储服务。

    文件块(block):最基本的存储单位HDFS默认block大小是64MB
    不同于普通文件系统的是,HDFS中,如果一个文件小于一个数据块的大小,并不占用整个数据块存储空间,只占用实际大小!
    Replication:源码中hdfs-site.xml的dfs.replication属性。多副本,默认是三个。

    SecondaryNameNode:
    1、HA的一个解决方案。但不支持热配。配置即可。
    2、执行过程:从namenode上下载元数据信息(fsimage,edits),然后把二者合并,生成新的fsimage,在本地保存,并将其推送到namenode,同时重置namenode的edits。
    3、默认安装在namenode节点上,但这样不安全。

    *****PermissionDenyException 权限不足**********
    错误:dfs.permissions的默认值是true。但是自己在用时,将其改为了false。改为了false,就不会报权限不足的错误了。

  • 相关阅读:
    loj6158 A+B Problem (扩展KMP)
    2017CodeM初赛B场
    Codeforces Round #421(div 2)
    CF821E(多次矩阵快速幂)
    Codechef-ANCESTOR(树套树/CDQ分治)
    Codechef-BLACKCOM(树形背包dp)
    Codechef-CHEFPRAD(找事件点+贪心)
    洛谷 p3391
    luogu p3369
    LOJ10082
  • 原文地址:https://www.cnblogs.com/ahu-lichang/p/6639125.html
Copyright © 2011-2022 走看看