博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop副本数配置
阅读量:5144 次
发布时间:2019-06-13

本文共 1491 字,大约阅读时间需要 4 分钟。

一个文件,上传到hdfs上时指定的是几个副本就是几个。修改了副本数(dfs.replications),对已经上传了的文件也不会起作用。

当然可以在上传文件的同时指定创建的副本数
hadoop dfs -D dfs.replication=2 -put abc.txt /tmp
可以通过命令来更改已经上传的文件的副本数:
hadoop fs -setrep -R 2 /

查看当前hdfs的副本数

hadoop fsck -locations
某个文件的副本数,可以通过ls中的文件描述符看到
hadoop dfs -ls

如果你只有3个datanode,但是你却指定副本数为4,是不会生效的,因为每个datanode上只能存放一个副本

当一个文件上传时,client并不立刻联系namenode,而是先在本地缓存数据,当 HDFS block size时, 联系namenode, namenode将文件名插入到文件系统结构中,并为期分配一个数据块。

namenode以datanode主机名和数据块的位置来相应client的请求。客户端从本地临时文件中将数据刷新到指定的datanode。
当file关闭时,未刷新的临时文件将传输到datanode,client通知namenode 文件关闭。 此时,namenode将文件创建操作提交到永久存储。
如果namenode在file closes之前die,则文件丢失。

创建副本

当client写文件到hdfs时,像前面提到的,先写文件到本地临时文件,假设设定hdfs的副本系数为3.当缓存的文件达到hdfs block size时,client从namenode检索一个datanode的列表。该列表包含将host该副本的datanode列表。
client刷新数据到列表中的第一个datanode。
第一个datanode以4kb为单位接收数据,将数据写到本地并传输到列表中的第二个datanode,第二个datanode也做同样操作。
一个datanode可以从上一个数据管道获取数据,并同时将数据发送到下一个数据管道。

配置参数可以不止一次被指定

最高优先级值优先
优先顺序(从低到高):
- *-site.xml on the slave node
- *-site.xml on the client machine
- Values set explicitly in the JobConf object for a MapReduce job

如果在配置文件中的值标记为final,它覆盖所有其他

<property>
<name>some.property.name</name>
<value>somevalue</value>
<final>ture</final>
</property>

对于类似副本数、data.dir,fs相关的参数建议在datanode节点配成final=true的

问:预处理主机的dfs.replication设置的是几?

答:预处理设置dfs.replication参数的hdfs-site.xml配置文件,修改后重新重启预处理服务,副本数问题搞定。

block的备份数是由写入数据的client端配置决定的,所以该类问题一般是由client的配置引起。

【参考】http://blog.sina.com.cn/s/blog_edd9ac0e0101it34.html

 

转载于:https://www.cnblogs.com/zhzhang/p/5141595.html

你可能感兴趣的文章
ecshop 后台分页功能
查看>>
sql server 多列转多行实现方法
查看>>
mybatis知识小计
查看>>
winfrom 多线程控制窗体 刷新子窗体控件 主窗体弹框时空对象
查看>>
AVPlayer缓存实现
查看>>
画图板中的画图工具的使用
查看>>
十九、全球经济政治社会一体化的总体发展趋势
查看>>
zoj 2229 Ride to School
查看>>
Merge k Sorted Lists
查看>>
jQuery 简介
查看>>
Python实现多元线性回归
查看>>
Jsq.java
查看>>
CSS单位PX、EM、REM、PT的区别
查看>>
unity出现Ignoring menu item NGUI because it is in no submenu!
查看>>
微信小程序星星评价
查看>>
eclipse查看、修改tomcat端口号!
查看>>
HDU 5597 GTW likes function 打表
查看>>
Educational Codeforces Round 13 A. Johny Likes Numbers 水题
查看>>
so模块加载后数据问题
查看>>
HTML5 video标签,右下角的下载按钮怎么去掉
查看>>