HDFS 如何在mapreduce中将数据块从datanode移动到其他datanode?

yi0zb3m4  于 2023-05-27  发布在  HDFS
关注(0)|答案(1)|浏览(214)

我实现了4个节点的集群,用于在站点(https://www.linode.com/docs/guides/how-to-install-and-set-up-hadoop-cluster/)之后运行Hadoop。
顺便说一下,我想在map任务之后或map或reduce任务期间将数据块移动到其他数据阳极。
有什么办法吗?然后在移动数据块后,它是否可以完成map reduce工作?
我尝试使用scp和移动数据块到其他数据节点。
但是,我只使用yarn文件和mapreduce-example jar(hadoop 3.1.2)文件。
我不知道怎么修改密码
此外,在数据块被移动后,namenode会自动更改块的元数据吗?

xoshrz7s

xoshrz7s1#

你不能只使用scp或类似的方法。
namenode跟踪单个块位置,手动移动块文件将导致未复制文件损坏。对于任何复制的文件,HDFS可能会将其复制回来,无论如何,如果您确实移动了一个块。元数据不会自动更新。
坚持使用hadoop fs -mv命令,您也可以使用Filesystem Java API。MapReduce不是必需的

相关问题