Spark入门:实现WordCount的3种方式
WordCount作为Spark的入门任务,可以很简单,也可以做到比较复杂。 本文从实现功能的角度提出了3种实现方式,至于性能影响,会在后文继续讨论。 注意: 本文使用的Spark版本还是1.6.1.如果读者您已经切换到2.0+版本,请参考GitHub spark的官方例子进行学习。 因为2.0版本的API与1.X 并不能完全兼容,特别是2.0开始使用了SparkSession的概念,而不是SparkContext! 第一种方式:mapToPair + reduceByKey 这是官方提供的实现方式,应该也是网上能找到的最多的例子。 官网地址:http://spark.apache.org/examples.html 核心代码: JavaRDD<String>textFile=sc.textFile("hdfs://..."); JavaRDD<String>words=textFile.flatMap(newFlatMapFunction<String,String>(){ publicIterable<String>call(St...