随笔-314  评论-209  文章-0  trackbacks-0
首先 dfs.replication这个参数是个client参数,即node level参数。需要在每台datanode上设置。 其实默认为3个副本已经够用了,设置太多也没什么用。 一个文件,上传到hdfs上时指定的是几个副本就是几个。以后你修改了副本数,对已经上传了的文件也不会起作用。可以再上传文件的同时指定创建的副本数 hadoop dfs -d dfs.replication=1 -put 70m logs/2 可以通过命令来更改已经上传的文件的副本数: hadoop fs -setrep -r 3 / 查看当前hdfs的副本数 hadoop fsck -locations fsck started by hadoop from /172.18.6.112 for path / at thu oct 27 13:24:25 cst 2011 ....................status: healthy total size: 4834251860 b total dirs: 21 total files: 20 total blocks (validated): 82 (avg. block size 58954290 b) minimally replicated blocks: 82 (100.0 %) over-replicated blocks: 0 (0.0 %) under-replicated blocks: 0 (0.0 %) mis-replicated blocks: 0 (0.0 %) default replication factor: 3 average block replication: 3.0 corrupt blocks: 0 missing replicas: 0 (0.0 %) number of data-nodes: 3 number of racks: 1 fsck ended at thu oct 27 13:24:25 cst 2011 in 10 milliseconds the filesystem under path '/' is healthy 某个文件的副本数,可以通过ls中的文件描述符看到 hadoop dfs -ls -rw-r--r-- 3 hadoop supergroup 153748148 2011-10-27 16:11 /user/hadoop/logs/201108/impression_witspixel2011080100.thin.log.gz 如果你只有3个datanode,但是你却指定副本数为4,是不会生效的,因为每个datanode上只能存放一个副本。 参考:http://blog.csdn.net/lskyne/article/details/8898666
posted on 2018-11-26 11:52 xzc 阅读(738) 评论(0)  编辑  收藏 所属分类: hadoop
网站地图