Spark开发代码优化点

案例1:

大量终端号码去重统计

采用方式

val arr = Array((1,Set(1,2)),(2,Set(2,3)),(2,Set(3,4)))
    sc.parallelize(arr)
      .reduceByKey(_++_)
      .foreach(println(_))

将终端号放入set中,然后分段去重统计

测试:对比全局变量   sc.collectionAccumulator[String]

效率较低,优点,在拉取数据时可以节省空间,另外有多个key值时,可以灵活应用

猜你喜欢

转载自blog.csdn.net/jin6872115/article/details/81352069