Hadoop~HDFS的Block块

一、HDFS的block块

1.介绍

block块是HDFS的最小存储单位,每个256MB(可以修改)

2.文件在HDFS中的存储方式

文件分成多个block块,block块分三份存入对应服务器,每个block块都有2个(可修改)备份,每个副本都复制到其他服务器一份,每个block块都有两个备份在其他服务器上,这使得安全性极大提高

3.修改默认文件上传到HDFS中的副本数量

hdfs-site.xml

默认为3,一般情况下无需主动配置

<property>
    <name>dfs.replicationname>
    <value>3value>
property>

4.上传文件的时候,临时决定被上传文件以多少个副本存储

hadoop fs -D dfs.replication=2 -put test.txt /tmp/

如上命令,就可以在上传test.txt的时候,临时设置其副本数为2

5.修改已经存在文件的副本数

对于已经存在HDFS的文件,修改dfs.replication属性不会生效,如果要修改已存在文件可以通过命令

hadoop fs -setrep [-R] 2 path

如上命令,指定path的内容将会被修改为2个副本存储。

  • R选项可选,使用-R表示对子目录也生效。

6.检查文件副本数

hdfs fsck path [-files [-blocks [-locations]]]:fsck可以检查指定路径是否正常

  • -files可以列出路径内的文件状态
  • -files -blocks输出文件块报告(有几个块,多少副本)
  • -files -blocks -locations输出每一个block的详情

7.修改block块大小

<property>
    <name>dfs.blocksizename>
    <value>268435456value>
property>

你可能感兴趣的:(Hadoop框架,hadoop,hdfs,大数据)