使用火花流保持非结构化数据到hadoop

时间:2015-04-27 19:43:06

标签: hadoop apache-spark hdfs spark-streaming

我有一个使用spark流创建的摄取管道,我想将haddop中的RDD存储为大型非结构化(JSONL)数据文件,以简化将来的分析。

将astream持久化为hadoop而不会导致大量小文件的最佳方法是什么? (因为hadoop不适合那些,并且它们使分析工作流程复杂化)

1 个答案:

答案 0 :(得分:1)

首先,我建议使用像Cassandra一样可以处理此问题的持久层。但是,如果您对HDFS不熟悉,那么the mailing list has an answer already

您可以使用FileUtil.copyMerge(来自hadoop fs)API并指定saveAsTextFiles保存零件文本文件的文件夹的路径。 假设您的目录是/ a / b / c / use

FileUtil.copyMerge(FileSystem of source, a/b/c, 
    FileSystem of destination, Path to the merged file say (a/b/c.txt), 
    true(to delete the original dir,null))