在 pyspark RDD 上显示分区
Posted
技术标签:
【中文标题】在 pyspark RDD 上显示分区【英文标题】:Show partitions on a pyspark RDD 【发布时间】:2015-03-15 00:58:12 【问题描述】:pyspark RDD 文档
http://spark.apache.org/docs/1.2.1/api/python/pyspark.html#pyspark.RDD
不显示任何方法来显示 RDD 的分区信息。
有什么方法可以在不执行额外步骤的情况下获取该信息,例如:
myrdd.mapPartitions(lambda x: iter[1]).sum()
上述方法确实有效..但似乎需要额外的努力。
【问题讨论】:
【参考方案1】:我错过了:很简单:
rdd.getNumPartitions()
不习惯 java-ish getFooMethod() 了;)
更新:添加来自@dnlbrky 的评论:
dataFrame.rdd.getNumPartitions()
【讨论】:
DataFrames 是在 Spark 1.3 中引入的,通常用于代替 RDD。对于那些阅读此答案并试图获取 DataFrame 的分区数的人,您必须先将其转换为 RDD:myDataFrame.rdd.getNumPartitions()
。【参考方案2】:
OP 没有指定他想为分区获取哪些信息(但似乎对分区的数量很满意)。
如果您要查找的是每个分区中的元素数(如此处所示),则以下解决方案可以正常工作: https://gist.github.com/venuktan/bd3a6b6b83bd6bc39c9ce5810607a798
【讨论】:
以上是关于在 pyspark RDD 上显示分区的主要内容,如果未能解决你的问题,请参考以下文章