将20GB CSV文件导入Hadoop的最佳方式



我有一个巨大的20GB CSV文件要复制到Hadoop/HDFS中。当然,我需要管理任何错误情况(如果服务器或传输/加载应用程序崩溃)。

在这种情况下,我需要重新启动处理(是否在另一个节点中),并在不从头开始CSV文件的情况下继续传输。

做到这一点最好、最简单的方法是什么?

使用Flume?Sqoop?本机Java应用程序?火花

非常感谢。

如果文件没有托管在HDFS中,flume将无法并行处理该文件(Spark或其他基于Hadoop的框架也有同样的问题)。您可以在NFS上装载HDFS,然后使用文件复制吗?

使用flume读取的一个优点是读取文件,并将每一行作为单独的记录发布,然后发布这些记录,并让flume一次向HDFS写入一条记录,如果出现问题,您可以从该记录开始,而不是从头开始。

最新更新