我正在尝试编写Spark应用程序,它会找到map
函数中创建的密钥数。我找不到任何可以让我这样做的功能。
我想到的一种方法是使用累加器,我在reduce
函数中将累加器变量加1。我的想法是基于累加器变量在节点之间作为计数器共享的假设。
请指导。
答案 0 :(得分:0)
如果你看起来像火花中的Hadoop计数器一样,最准确的近似是你可以在每个任务中增加的累加器,但是你没有任何关于Spark到目前为止处理的数据量的信息。 / p>
如果你只想知道你的rdd中有多少个不同的键,你可以做一些像不同映射键的计数(rdd.map(t =&gt; t_1))。distinct.count)< / p>
希望这对你有用