【发布时间】:2014-06-13 17:43:16
【问题描述】:
我有一个脚本可以将大量文件从本地机器传输到远程机器上的 HDFS。在脚本中,它使用ssh,如下所示:
cat localfile | ssh user@remote 'hadoop fs -put - path-to-target-file'
由于我有很多文件要传输,并且每次传输之前我需要检查是否已经存在同名的目标文件,因此对于每次传输我必须使用两个 ssh 命令(检查存在,放置) .因为建立 SSH 连接很耗时,我想知道是否有办法让 SSH 连接保持活动状态,以便在第一次连接成功后,其他 ssh 命令不会尝试建立新连接,而是直接使用旧连接。
另外,我使用多个进程进行上传。是否可以保持多个不同的连接处于活动状态?例如,如果我使用 4 个进程,是否可以同时保持 4 个不同的连接处于活动状态?
谢谢。
【问题讨论】:
-
scp和rsync是你的朋友!