dataproc主机上的超光速子复制错误

wrrgggsh  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(398)

我有一个运行在dataproc主节点上的简单示例,安装了tachyon、spark和hadoop。
我从spark写入超光速粒子时出现复制错误。有没有办法指定它不需要复制?

15/10/17 08:45:21 WARN org.apache.hadoop.hdfs.DFSClient: DataStreamer Exception
org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /tmp/tachyon/workers/1445071000001/3/8 could only be replicated to 0 nodes instead of minReplication (=1).  There are 0 datanode(s) running and no node(s) are excluded in this operation.
    at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.chooseTarget4NewBlock(BlockManager.java:1550)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getNewBlockTargets(FSNamesystem.java:3110)

我打印的日志部分只是一个警告,但是Spark错误会立即出现。
我查看了超光速粒子配置文件,发现了可能导致这种情况的原因:

tachyon.underfs.hdfs.impl   "org.apache.hadoop.hdfs.DistributedFileSystem"

考虑到这一切都是在dataproc主节点上,预装了hadoop,hdfs与spark一起工作,我认为这是一个可以从tachyon内部解决的问题。

093gszye

093gszye1#

您可以通过手动设置 dfs.replication 内部 /etc/hadoop/conf/hdfs-site.xml 除了dataproc的默认值 2 . 把它设置在你的主机上至少可以覆盖驱动程序调用, hadoop fs 调用,并且它似乎正确地传播到 hadoop distcp 调用,所以很可能您不需要担心在每个工作进程上也设置它,只要工作进程从作业范围的配置中获取文件系统配置。
请注意 1 “已”是指数据的一个副本,而不是“除主副本外还有一个副本”。所以,复制不能低于1。最小复制由 dfs.namenode.replication.min 在同一个地方 hdfs-site.xml ; 你可以在这里看到它的引用 BlockManager.java .

ar5n3qh5

ar5n3qh52#

这是一个复制问题,我们自然会查看工作节点的状态。
原来他们是因为另一个原因。修正后,这个错误消失了。
我想知道并接受的答案是,如何手动更改复制因子。

相关问题