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包等操作。


分享到:


相關文章: