当将一个巨大的文件加载到hadoop集群中时,如果客户端在将数据传输到datanodes时失败,会发生什么?
例如,文件为1280MB,hdfs块为128MB,当当将一个巨大的文件加载到hadoop集群中时,如果客户端在将数据传输到datanodes时失败,会发生什么?,hadoop,Hadoop,例如,文件为1280MB,hdfs块为128MB,当 客户端仅传输了3个块,然后失败了?NameNode是否获得包含3个块的文件或删除3个块?否它不会删除3个块。下面是它的工作原理,我们假设块4位于FSDataOutStream维护的队列的下一个队列中。由于某些网络问题,datanode写入一些x字节后发生故障,首先关闭管道并删除写入其中的任何数据,新的good datanode被赋予一个新标识,并被添加到队列中,该标识被传送到name node以更新块4的元数据信息,然后数据将从该块的第一个字
客户端仅传输了3个块,然后失败了?NameNode是否获得包含3个块的文件或删除3个块?否它不会删除3个块。下面是它的工作原理,我们假设块4位于FSDataOutStream维护的队列的下一个队列中。由于某些网络问题,datanode写入一些x字节后发生故障,首先关闭管道并删除写入其中的任何数据,新的good datanode被赋予一个新标识,并被添加到队列中,该标识被传送到name node以更新块4的元数据信息,然后数据将从该块的第一个字节开始写入新标识的datanode。《权威指南》中对文件写入的剖析有助于您更好地了解如何完成此操作。如果是客户端而不是datanode发生故障,这意味着客户端将停止传输此文件,而namenode是否也将保留此不完整的文件?它将不会保留元数据,因为最后,一旦文件成功写入HDFS Distributedfilesystem,就会向namenode发送一个submit回调(一旦所有校验和都被验证),以提交元数据信息,否则它会忽略它,你有什么更详细的资料可以推荐给我吗?你可以参考详细描述HDFS恢复过程的资料。如果答案能解决你的问题,请接受。