Spark 網頁式開發(一)

眾所周知,spark作為大數據計算引擎,在大數據領域有著不可或缺的地位。

本人也已經在大數據領域中從事了5年,因此在學習spark2源碼的過程中 發現了codegen。也就是動態編碼,越往深處看去,發現 一切的關鍵就是 Janino .

因為涉及到太多到編碼,我這邊先給大家看下成品的樣子。


Spark 網頁式開發(一)


Spark 網頁式開發(一)

我先簡單介紹下 總體的脈絡。

後臺:python中的bottle

前臺:html

存儲:oracle

spark的任務是以打成jar包的形式的 提交到yarn上運行。

而jar包中內容就是

<code>import com.oasis.spark.util.job_BaseRunClass


/** * mainClass=com.oasis.spark.job_CodeGenGenerate */
object job_CodeGenGenerate extends job_BaseRunClass {

}/<code>

,內部的實現邏輯 就是 讀取存儲成文本的代碼,通過 Janino 進行動態編譯,實現做到更改job的邏輯而不需要更改jar包的過程,實現 最快的代碼更新操作,整個過程不需要打包、重新編譯、生成jar包、替換jar包等操作。


分享到:


相關文章: