假設有數據量T級名為data的RDD,需要做一些列動作,一般需要使用map-reduce,其中map階段可以使用def函數或者lambda形式,返回新的RDD,reduce可以起到累加作用,例:

1 from pyspark import SparkConf 2 conf = SparkConf().setAppName('test') 3 try: 4 sc.stop() 5 except: 6 pass 7 sc = SparkContext(conf = conf) 8 9 data = ["hello", "world", "hello", "world"] 10 11 rdd = sc.parallelize(data) 12 res_rdd = rdd.map(lambda word: (word, 1)).reduceByKey(lambda a, b: a + b) 13 14 res_rdd.first()
附常見操作API,map()對每一條rdd進行並行操作,reduce()、reduceByKey()計數,filter()過濾,join()、union()等