國營聯招 統計資訊統計學、巨量資料概論105 年第 45 題單選題考點:RDD transformation 鏈考點:flatMap 展平操作
Spark 的 Word Count程式片段範例如下所示,下列敘述何者有誤?
text_file = sc.textFile("hdfs://...")
counts = text_file.flatMap(lambda line: line.split(" ")) \
.map(lambda word: (word, 1)) \
.reduceByKey(lambda a, b: a + b)
counts.saveAsTextFile("hdfs://...")
Acounts 從頭到尾就是單一個 RDD正確答案
BflatMap() 是依照分隔符號 (" ") 將文字檔分成一個一個的字
Cmap() 將每個字計算一次
DreduceByKey() 將相同字的值相加
A正確答案
Spark Word Count 中,counts 並非單一 RDD,而是由多個 RDD 轉換(transformation)鏈結而成的 DAG 結果。
逐選項解析
Acounts 從頭到尾就是單一個 RDDRDD transformation 鏈✓ 正確
錯誤敘述。counts 是由 text_file 經 flatMap、map、reduceByKey 三次 transformation 所產生的一系列不同 RDD(Resilient Distributed Dataset)所鏈結的結果,每次 transformation 都會產生一個新的 RDD,並非從頭到尾都是同一個單一 RDD。
BflatMap() 是依照分隔符號 (" ") 將文字檔分成一個一個的字flatMap 展平操作✕ 錯誤
正確敘述。flatMap(lambda line: line.split(' ')) 會先對每一行套用 split(' '),依空白分隔成多個字,再將所有結果展平(flatten)成單一序列的字詞 RDD。
DreduceByKey() 將相同字的值相加✕ 錯誤
立即註冊,看完整詳解
這題的完整詳解,註冊就能看 · 每天 2 題免費
精選詳解- 完整逐選項解析
- 秒殺解題技巧與破題關鍵
- 關鍵知識表整理
- 陷阱與易錯提醒
- 同考點歷屆題庫連續刷題與錯題本