在火花分析之前从FTP读取大文本文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在火花分析之前从FTP读取大文本文件相关的知识,希望对你有一定的参考价值。
我在独立模式下运行spark(将来会分发一个愿景)进入我的系统,分析一个超过5 GB的超大文件。首先,我需要将此文件从FTP复制到我的本地e.g c:sparkanalysisigfile.txt
,然后我将能够加载带有spark的文件进行分析。
我的问题是如何在不丢失内存的情况下有效地复制这样一个大文件?有可能在火花中做到吗?我应该使用像kafka这样的流媒体库吗?
完成火花分析后,我需要将一个大文件写入ftp服务器。
答案
您可以使用Bluezone
或连接终端仿真器的任何其他边缘节点使用简单的shell命令:
cat bigfile.txt | ssh yourUserName@yourServer 'hdfs dfs -put - /pathTo/hdfs'
虽然它会慢一点,但它适用于300GB文件。
注意:我这样做是因为我的文件位于未安装Hadoop的服务器中。如果您的服务器安装了Hadoop,那么您可以尝试使用hdfs dfs -put
另一答案
通过stdin管道:
大段引用
wget ftp://user:password@ftpserver/your_file | hadoop fs -put - path_in_hdfs
大段引用
单一 - 告诉HDFS从stdin读取。
以上是关于在火花分析之前从FTP读取大文本文件的主要内容,如果未能解决你的问题,请参考以下文章