相关疑难解决方法(0)

HashPartitioner如何运作?

我读了一下文档HashPartitioner.不幸的是,除了API调用之外没有解释太多.我假设HashPartitioner根据键的哈希对分布式集进行分区.例如,如果我的数据是这样的

(1,1), (1,2), (1,3), (2,1), (2,2), (2,3)
Run Code Online (Sandbox Code Playgroud)

因此,分区器会将其放入不同的分区,同一个键落在同一个分区中.但是我不明白构造函数参数的意义

new HashPartitoner(numPartitions) //What does numPartitions do?
Run Code Online (Sandbox Code Playgroud)

对于上述数据集,如果我这样做,结果会有何不同

new HashPartitoner(1)
new HashPartitoner(2)
new HashPartitoner(10)
Run Code Online (Sandbox Code Playgroud)

那么HashPartitioner工作怎么样呢?

scala partitioning apache-spark rdd

77
推荐指数
2
解决办法
3万
查看次数

RDD中的分区数和Spark中的性能

在Pyspark中,我可以从列表中创建RDD并确定要有多少分区:

sc = SparkContext()
sc.parallelize(xrange(0, 10), 4)
Run Code Online (Sandbox Code Playgroud)

我决定对RDD进行分区的分区数量如何影响性能?这取决于我的机器核心数量如何?

performance apache-spark rdd pyspark

31
推荐指数
2
解决办法
3万
查看次数

标签 统计

apache-spark ×2

rdd ×2

partitioning ×1

performance ×1

pyspark ×1

scala ×1