高延迟网络中的java

高延迟网络中的java,java,networking,hadoop,Java,Networking,Hadoop,我正在使用Hadoop在位于远程主机的HDF之间复制文件。我的问题是,这些主机之间的网络有很高的延迟(>1秒),有时Hadoop会启动java.net.NoRouteToHostException错误:没有到主机的路由 我认为这个问题的发生是因为延迟。 可以使用ping访问主机,但有一点延迟。下面是一个ping的示例。起初它无法到达目标主机,但后来它到达了 WorkGroup4-0:~# ping WorkGroup1-4ping: unknown host WorkGroup1-4 WorkG

我正在使用Hadoop在位于远程主机的HDF之间复制文件。我的问题是,这些主机之间的网络有很高的延迟(>1秒),有时Hadoop会启动
java.net.NoRouteToHostException错误:没有到主机的路由

我认为这个问题的发生是因为延迟。 可以使用ping访问主机,但有一点延迟。下面是一个ping的示例。起初它无法到达目标主机,但后来它到达了

WorkGroup4-0:~# ping WorkGroup1-4ping: unknown host WorkGroup1-4
WorkGroup4-0:~# ping WorkGroup1-1
PING WorkGroup1-1 (172.16.100.2) 56(84) bytes of data.
From WorkGroup4-0 (172.16.100.13) icmp_seq=1 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=2 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=3 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=4 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=5 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=6 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=7 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=8 Destination Host Unreachable
From WorkGroup4-0 (172.16.100.13) icmp_seq=9 Destination Host Unreachable
64 bytes from WorkGroup1-1 (172.16.100.2): icmp_req=12 ttl=64 time=1036 ms
64 bytes from WorkGroup1-1 (172.16.100.2): icmp_req=15 ttl=64 time=996 ms
^C
--- WorkGroup1-1 ping statistics ---
24 packets transmitted, 2 received, +9 errors, 91% packet loss, time 23134ms
rtt min/avg/max/mdev = 996.201/1016.462/1036.724/20.286 ms, pipe 3

有没有办法为高延迟的网络配置JVM,以便尝试连接到远程主机的时间更长

真是一团糟。。。但好的,这里有一个简短的测试列表:

  • dfs.client.failover.connection.retries.on.Timeout,默认值为0,介于2和5之间
  • dfs.client.failover.connection.retries,默认值为0,介于2和5之间
  • dfs.client.failover.max.attempts,默认值15,大于15,小于50

如果你的Hadoop集群中还有延迟,考虑Grand Advices特性并在每个节点上分配一个唯一的RACKID,这将告诉Hadoop所有的节点都是遥远的。


更多信息请点击此处:

91%的数据包丢失率
。。。我不得不说,通过这样的网络复制海量数据是一场噩梦。一旦复制过程失败(这肯定发生在坏网络中),hadoop就不支持恢复复制过程。我建议您寻求其他解决方案来复制数据。例如,将数据转储到本地,然后尝试其他支持从断点继续传输的工具。我几乎遇到了同样的问题。如果可能的话,我的第一个想法是修复网络延迟。您网络中的每个节点都会出现此问题吗?也许关于这个问题的问题对你(和我)更有用。