2014-09-30 58 views
0

我正在尝试编写Spark应用程序,该应用程序可以找到在map函数中创建的键的数量。我找不到可以让我这样做的功能。如何找到在地图部分创建的键的数量?

我想过的一种方法是使用累加器,我会在reduce函数中将累加器变量加1。我的想法是基于累加器变量作为计数器在节点间共享的假设。

请指导。

回答

0

如果您看起来像Spark中的Hadoop计数器,最准确的近似值是您可以在每个任务中增加的累加器,但是您没有任何关于Spark迄今为止处理的数据量的信息。

如果您只想知道您的rdd中有多少个不同的密钥,那么您可以执行类似于不同映射密钥的计数(rdd.map(t => t_1))。distinct.count)

希望这会对你有用

相关问题