Python Spark WordCount

1.map与flatMap 的区别;

  使用map产生的 list 是分层的,第一层是 List 文件文本的第一行,第二层是 List 每一行内英文单词,

而  flatMap 有平铺的意思,产生的 List 会去掉分层,

文件读取

textFile = sc.textFile('dir/目录')

Word 分散,偏平化

stringRDD= textFile.flatMap(lambda line: line.split(" "))

使用map 创建 Key - value 形式对

words = stringRDD.map(lambda word:(word,1))

使用reduceByKey()统计每个单词出现次数

words.reduceByKey(lambda x,y:x + y).collect()

map、flatMap、reduceByKey  都是tranfromations 懒惰操作

 

你可能感兴趣的:(Python Spark WordCount)