hdfs块分割

chhkpiq4  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(315)

我的hadoop知识已经4周了。我正在使用一个带有hadoop的沙盒。
根据这个理论,当一个文件被复制到hdfs文件系统时,它将被分割成128mb的块。然后,每个块将被复制到不同的数据节点,然后复制到数据节点。
问题:
当我将一个数据文件(约500 mb)从本地文件系统复制到hdfs(put命令)中时,整个文件仍然存在于hdfs(-ls命令)中。我本来希望看到128MB的数据块。我做错什么了?
如果假设,我在hdfs中成功地分割和分发了数据文件,那么有没有方法将原始文件合并并检索回本地文件系统?

2wnc66cl

2wnc66cl1#

你将看不到从 -ls 命令。这在逻辑上相当于一个硬盘上的块在linux中没有出现 ls 或windows资源管理器。你可以在命令行上这样做 hdfs fsck /user/me/someFile.avro -files -blocks -locations ,或者可以使用namenode ui查看哪些主机具有文件的块,以及在哪些主机上复制每个块。
当然。你只要做些 hdfs dfs -get /user/me/someFile.avro 或者使用hue或namenodeui下载文件。所有这些选项都会将适当的块流式传输给您,以便将逻辑文件重新组合在一起。

相关问题