有人可以解释一下RDD countApprox()与count()之间的区别,如果可以的话,还可以回答最快的吗?这对我们有很大的帮助,我们的要求是count()非常慢,需要大约30分钟的**。 30分钟...
这是我们使用的方式,不确定是否是最佳使用方式
rdd.countApprox(timeout=800, confidence=0.5)
最佳答案
Count()-返回RDD中的元素数。
CountApprox-计数()的近似版本,即使不是所有任务都已完成,它也会在超时内返回可能不完整的结果。countApprox(timeout: Long, confidence: Double)
默认值:置信度= 0.95
注意:根据spark源代码,对countApprox的支持标记为“实验性”。
如果timeout = 800,您应该会在不到1分钟的时间内看到一个近似计数。
您确定没有其他因素导致这种30分钟的减速吗?
共享您的代码/代码片段,以获取其他成员的更准确的输入。