我有一个巨大的20gbcsv文件要复制到hadoop/hdfs中。当然,我需要管理任何错误情况(如果服务器或传输/加载应用程序崩溃)。在这种情况下,我需要重新启动处理(是否在另一个节点中)并继续传输,而不必从头开始启动csv文件。做这件事最好最简单的方法是什么?使用Flume?斯库普?本机java应用程序?Spark?谢谢。
deikduxw1#
如果该文件不在hdfs中托管,flume将无法并行化该文件(spark或其他基于hadoop的框架也存在同样的问题)。你能在nfs上挂载你的hdfs然后使用文件拷贝吗?使用flume读取的一个优点是读取文件并将每行作为单独的记录发布,然后发布这些记录,让flume一次将一条记录写入hdfs,如果出现问题,可以从该记录开始,而不是从头开始。
1条答案
按热度按时间deikduxw1#
如果该文件不在hdfs中托管,flume将无法并行化该文件(spark或其他基于hadoop的框架也存在同样的问题)。你能在nfs上挂载你的hdfs然后使用文件拷贝吗?
使用flume读取的一个优点是读取文件并将每行作为单独的记录发布,然后发布这些记录,让flume一次将一条记录写入hdfs,如果出现问题,可以从该记录开始,而不是从头开始。