1. 程式人生 > >spark筆記2之spark粗略執行流程

spark筆記2之spark粗略執行流程

目錄

一、Spark粗略的執行流程

二、程式碼流程

1、建立一個SparkConf

2、建立一個上下文物件SparkContext

3、建立一個RDD

4、使用transformations類運算元進行各種各樣的資料轉換

5、使用Action類運算元觸發執行

6、關閉上下文物件

分散式檔案系統(File system)--載入RDD

transformations延遲執行--針對RDD的操作

Action觸發執行

 


一、Spark粗略的執行流程

如下圖:

Driver:程序   ;Worker:程序;RAM:執行記憶體;Input Data:要計算的資料

每個task處理128M的資料量

 

二、程式碼流程

1、建立一個SparkConf

val sparkConf = new SparkConf().setAppName("DirectKafkaWordCount").setMaster("local[2]")

1、設定Application名稱(在web ui顯示)

2、可設定Application執行所需要的資源情況

3、設定Spark的執行模式 local standalone yarn mesos

2、建立一個上下文物件SparkContext

val sc = new SparkContext(conf)

建立SparkContext需要用到spark的配置物件

SparkContext是通往叢集的唯一通道

3、建立一個RDD

4、使用transformations類運算元進行各種各樣的資料轉換

5、使用Action類運算元觸發執行

6、關閉上下文物件

分散式檔案系統(File system)--載入RDD

transformations延遲執行--針對RDD的操作

——返回值是RDD

——transformations是某一類運算元(函式)

Action觸發執行

——action也是一類運算元(函式)

——返回值都不是RDD型別

如果你的運算元的返回值是RDD型別,那麼這個運算元就是transformations運算元,否則就是Action類運算元