zoukankan      html  css  js  c++  java
  • HDFS-学习总结

    在多人共用HDFS的环境下,配置设置非常重要。特别是在Hadoop处理大量资料的环境,如
    果没有配额管理,很容易把所有的空间用完造成别人无法存取。Hdfs的配额设定是针对目录
    而不是针对账号,可以 让每个账号仅操作某一个目录,然后对目录设置配置。


    hdfs文件的限额配置允许我们以文件个数,或者文件大小来限制我们在某个目录下上传的文
    件数量或者文件内容总量,以便达到我们类似百度网盘网盘等限制每个用户允许上传的最大
    的文件的量。

    1|1①数量限额


    hdfs dfs  -mkdir -p /user/root/dir   #创建hdfs文件夹 hdfs dfsadmin -setQuota 2 dir    # 给该文件夹下面设置最多上传两个文件,发现只能上传一个文件,因为系统把文件本身也当作文件

    清除文件数量限制

    hdfs dfsadmin -clrQuota /user/root/dir  # 清除文件数量限制

    1|2②空间大小限额


    在设置空间配额时,设置的空间至少是block_size * 3大小

     生成任意大小文件的命令:

    dd if=/dev/zero of=1.txt  bs=1M count=2   #生成2M的文件

    清除空间配额限制

    二、hdfs的安全模式

    安全模式是hadoop的一种保护机制,用于保证集群中的数据块的安全性。当集群启动的时

    候,会首先进入安全模式。当系统处于安全模式时会检查数据块的完整性。


    假设我们设置的副本数(即参数dfs.replication)是3,那么在datanode上就应该有3个副本存
    在,假设只存在2个副本,那么比例就是2/3=0.666。hdfs默认的副本率0.999。我们的副本率
    0.666明显小于0.999,因此系统会自动的复制副本到其他dataNode,使得副本率不小于0.999。
    如果系统中有5个副本,超过我们设定的3个副本,那么系统也会删除多于的2个副本。


    在安全模式状态下,文件系统只接受读数据请求,而不接受删除、修改等变更请求。在,当
    整个系统达到安全标准时,HDFS自动离开安全模式

    安全模式操作命令:

    hdfs dfsadmin  -safemode  get #查看安全模式状态 hdfs dfsadmin  -safemode enter #进入安全模式 hdfs dfsadmin  -safemode leave #离开安全模式

    三、HDFS Shell命令

    概述

    HDFS Shell命令允许使用命令行在HDFS存储中进行文件夹和文件操作。

    如文件夹的增删改查、文件的增删改查等。

    开始练习hadoop时,打开Linux之后要用 start-dfs.sh 

     启动HDFS。
    HDFS不是开机启动的

     

    常用命令

    命令格式

    hdfs dfs -操作命令 参数

    前面的【hdfs dfs -】部分是固定的,后面的【操作命令 参数】部分是变化的

    命令练习(练习时可结合Hadoop站点观察操作结果)

    hdfs dfs -mkdir /abc #创建名为/abc的文件夹

    hdfs dfs -ls / 0 #列出根目录中的内容

    hdfs dfs -ls -R / #递归列出多层文件夹的内容

    hdfs dfs -put /etc/hosts /abc/hosts #把Linux系统中/etc/hosts文件上传到HDFS中

    hdfs dfs -appendToFile /etc/hosts /abc/hosts

    #向文件中追加内容

    hdfs dfs -checksum /abc/hosts #查看文件的MD5值

    hdfs dfs -du -h / #查看文件/文件夹的大小

    #-h以人类友好的方式显示大小(过大时带单位)

    hdfs dfs -get /abc/hosts ./hosts #把HDFS中的文件下载到本地Linux中

    #注意./hosts是下载后保存到本地的位置

    hdfs dfs -cat /abc/hosts #查看HDFS中文本文件的内容

    #注意:只能查看文件文件

    hdfs dfs -tail /abc/hosts #列出文件结尾处1KB的文件内容

    hdfs dfs -mv /abc/hosts /abc/xyz #修改文件名字或移动位置

    hdfs dfs -cp /abc/xyz /abc/hosts #复制文件

    hdfs dfs -find / -name xyz #查找名字为xyz的文件的位置

    hdfs dfs -rmdir /abc #删除名为/abc的文件夹

    #注意:如果其中还有文件则不能删除

    hdfs dfs -rm /abc/hosts #删除文件

    hdfs dfs -rm -r /abc #递归删除文件/文件夹,文件夹中有文件也能删除

    hdfs dfs -df #查看HDFS文件系统的磁盘使用情况

  • 相关阅读:
    loaded some nib but the view outlet was not set
    指标评比
    IOS DEVELOP FOR DUMMIES
    软件测试题二
    javascript select
    DOM节点类型详解
    mysql操作
    UVA 10055
    solutions for 'No Suitable Driver Found For Jdbc'
    解决git中文乱码问题
  • 原文地址:https://www.cnblogs.com/zzmds/p/14160981.html
Copyright © 2011-2022 走看看