编写功能
如果我们使用 .reduce(max)
,那么我们将在整个RDD中获得最大的密钥。我知道这会减少将在所有分区上运行,然后减少每个分区发送的那些项目。但是,我们如何获得每个分区中最大的钥匙呢?为.mapPartitions()
?
您可以:
rdd.mapParitions(iter => Iterator(iter.reduce(Math.max)))
或
rdd.mapPartitions(lambda iter: [max(iter)])
在流中使用DStream.trasform
。