Spark 2.0.0镶木地板的分区大小

时间:2016-08-06 20:02:15

标签: apache-spark spark-dataframe

我试图了解如何改进(或增加)针对特定火花作业运行的任务的并行性。 这是我的观察......

scala> spark.read.parquet("hdfs://somefile").toJavaRDD.partitions.size()
25
$ hadoop fs -ls hdfs://somefile | grep 'part-r' | wc -l
200
$ hadoop fs -du -h -s hdfs://somefile
2.2 G

我注意到,根据重新分区/合并的内容,在保存操作期间适当地创建了部件文件到HDFS的数量。这意味着可以根据此参数调整零件文件的数量。

但是,如何控制阅读' partitions.size()'?意思是,我希望将其设置为200(无需在读取操作期间对其进行重新分区,这样我就可以为此作业运行更多的任务) 这对于在此作业上执行查询操作所花费的时间具有重大影响。

另一方面,我知道上面2.2 G的200个镶木地板零件文件似乎超过128 MB的块大小。理想情况下应该是18份左右。

请建议。

0 个答案:

没有答案