5
我最近傾注了火花,對火車信息和行動操作感到困惑。我閱讀了spark文檔和一些關於spark的書,並且我知道action會在集羣中執行spark jon,而轉換不會。但是在spark的api文檔中列出的rdd的操作並沒有說明它是一個轉化還是一個動作操作。如何區分spark中的操作是一種轉換還是一種操作?
例如,reduce是一個動作,另一方面reduceByKey是一個轉換!爲什麼會這樣。
我最近傾注了火花,對火車信息和行動操作感到困惑。我閱讀了spark文檔和一些關於spark的書,並且我知道action會在集羣中執行spark jon,而轉換不會。但是在spark的api文檔中列出的rdd的操作並沒有說明它是一個轉化還是一個動作操作。如何區分spark中的操作是一種轉換還是一種操作?
例如,reduce是一個動作,另一方面reduceByKey是一個轉換!爲什麼會這樣。
您可以通過查看返回類型來判斷。一個動作將返回一個非RDD類型(通常是您存儲的值類型),而一個轉換將返回一個RDD[Type]
,因爲它仍然只是您計算的表示。