Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop 如何通过SFTP高效上传50gb文件?_Hadoop_Bigdata_Sftp_Jsch - Fatal编程技术网

Hadoop 如何通过SFTP高效上传50gb文件?

Hadoop 如何通过SFTP高效上传50gb文件?,hadoop,bigdata,sftp,jsch,Hadoop,Bigdata,Sftp,Jsch,我想使用JSCHJava库实现SFTP客户机。我有以下疑问。请提出你的想法 如何以最佳方式将非常大的文件(大约50gb)上传到SFTP服务器 执行上述操作时,很有可能出现错误“会话超时”。除了明确地设置时间之外,还有什么最好的解决方法吗 一次传输非常大的文件始终不是最好的主意。 一种选择是使用更大的缓冲区,如果上载/下载未使用到最大值。 但我建议的选项是:自动分割文件或使用tempfile机制,它可以处理传输时的中断(比如jdownloader)你已经问了基本相同的问题:-你从来没有回答过你在

我想使用JSCHJava库实现SFTP客户机。我有以下疑问。请提出你的想法

  • 如何以最佳方式将非常大的文件(大约50gb)上传到SFTP服务器
  • 执行上述操作时,很有可能出现错误“会话超时”。除了明确地设置时间之外,还有什么最好的解决方法吗

一次传输非常大的文件始终不是最好的主意。 一种选择是使用更大的缓冲区,如果上载/下载未使用到最大值。
但我建议的选项是:自动分割文件或使用tempfile机制,它可以处理传输时的中断(比如jdownloader)

你已经问了基本相同的问题:-你从来没有回答过你在那里得到的答案和评论。@MartinPrikryl我知道追加有时会有点小**,所以应该避免大量的转移。我还知道,使用不同大小的缓冲区可以为不同的平均文件大小提供更好的性能。这些优化的缓冲区大小可以使速度翻倍。@MartinPrikryl,你怎么能不那么粗鲁呢?如果你认为我犯了错误,请告诉我为什么你认为我一无所知。SFTP是一种基于数据包的协议。因此,它实际上已经在部分传输文件。在传输之前将其进一步拆分为部分只是更多的工作,没有实际效果。数据包和部分不是一回事。如果零件出现故障,则可能会完全重新传输。如果您使用拆分大文件,那么重新传输的时间会少很多,如果传输因会话超时(如问题中所述)或其他原因(sh***internet连接)而中断,那么使用拆分或自己的托管缓冲拆分传输可能是更好的解决方案,因为这可能是唯一的方式,传输将在所有工作,如果连接是那么糟糕。你可以恢复传输与SFTP。没有必要为此而分开转让。此外,也没有办法将上传的部分与大多数SFTP服务器合并。