我有一个场景,其中一定数量的操作(包括group )必须应用于多个小文件(每个文件约300 on )。手术看起来是这样..。
df.groupBy(....).agg(....)
现在,要在多个文件上处理它,我可以使用通配符“/**/*..csv”来创建单个RDD,并将其划分为操作。但是,从操作上看,它是一个组,涉及大量的洗牌,如果文件是相互排斥的,这是不必要的。
我正在看的是,我可以在文件上创建独立的RDD并独立地操作它们的方法。
发布于 2015-08-10 08:00:29
如果您有许多文件,而且每个文件都很小(在此之前,我将将300 as视为Spark的小文件),您可以尝试使用SparkContext.wholeTextFiles创建一个RDD,其中每个记录都是一个完整的文件。
https://stackoverflow.com/questions/31912858
复制相似问题