開始使用免費開始

ReduceBykey 與 Collect

reduceByKey() 是最常用的成對 RDD 轉換之一。它會作用在鍵值(k,v)配對上,將每個鍵的值合併。這題中,你會先從一個 tuple 清單建立成對 RDD,接著把相同鍵的值合併,最後列印結果。

請記得,你的工作環境中已經有可用的 SparkContext sc

本練習屬於課程

使用 PySpark 的 Big Data 基礎

檢視課程

練習說明

  • 建立名為 Rdd 的成對 RDD,內容為 tuples (1,2)(3,4)(3,6)(4,5)
  • 使用 reduceByKey()Rdd 進行轉換,將相同鍵的值相加,得到成對 RDD Rdd_Reduced
  • 收集成對 RDD Rdd_Reduced 的內容,並以迭代方式印出輸出。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Create PairRDD Rdd with key value pairs
Rdd = sc.parallelize([____])

# Apply reduceByKey() operation on Rdd
Rdd_Reduced = Rdd.reduceByKey(lambda x, y: ____)

# Iterate over the result and print the output
for num in Rdd_Reduced.____: 
  print("Key {} has {} Counts".format(____, num[1]))
編輯並執行程式碼