Spark应用程序剖析

Spark应用程序剖析

每个Spark应用程序都从创建SparkContext开始。

若没有SparkContext,则不能启动计算(如Spark作业)。

Spark应用程序由(applicationId, application attempt-id)唯一标识。

Spark应用程序是SparkContext的一个实例。 或者换句话说,SparkContext构成了一个Spark应用程序。

举例如下:

import org.apache.spark.{SparkContext, SparkConf}

object SampleApp {
  def main(args: Array[String]) {

    val masterURL = "local[*]"  // (1)

    val conf = new SparkConf()  //(2)
      .setAppName("SparkMe Application")
      .setMaster(masterURL)

    val sc = new SparkContext(conf) //(3)

    val fileName = "/tmp/test.xt"

    val lines = sc.textFile(fileName).cache() //(4)

    val c = lines.count() //(5)
    println(s"There are $c lines in $fileName")
  }
}
  1. Master URL
  2. 创建 Spark configuration
  3. 创建 Spark context
  4. 创建 lines RDD
  5. 执行 count 操作

Spark shell会在启动时为你创建一个Spark context 和SQL context。

Spark应用程序启动时,它将按照MasterURL所述连接到Spark Master。 这是Spark context初始化的一部分。

Spark应用程序可以在本地运行,也可以在定义了集群管理器和部署模式(--deploy-mode)的集群上运行。

然后,你可以创建RDD,将其转换为其他RDD并最终执行操作。 你也可以缓存临时RDD来加速数据处理。完成所有数据处理后,Spark应用程序可以通过终止Spark context来结束(sc.stop)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容