Spark运行的时候,采用的是主从结构,有一个节点负责中央协调, 调度各个分布式工作节点。这个中央协调节点被称为驱动器( Driver) 节点。与之对应的工作节点被称为执行器( executor) 节点

所有的 Spark 程序都遵循同样的结构:程序从输入数据创建一系列 RDD, 再使用转化操作派生出新的 RDD,最后使用行动操作收集或存储结果 RDD 中的数据。

1.驱动器节点:

Spark 驱动器是执行你的程序中的 main() 方法的进程。它执行用户编写的用来创建 SparkContext、创建 RDD,以及进行 RDD 的转化操作和行动操作的代码。其实,当你启动 Spark shell 时,你就启动了一个 Spark 驱动器程序

驱动器程序在 Spark 应用中有下述两个职责:1.把用户程序转为任务 2.为执行器节点调度任务

2.执行器节点:

Spark 执行器节点是一种工作进程,负责在 Spark 作业中运行任务,任务间相互独立。 Spark 应用启动时, 执行器节点就被同时启动,并且始终伴随着整个 Spark 应用的生命周期而存在。

执行器进程有两大作用: 第一,它们负责运行组成 Spark 应用的任务,并将结果返回给驱动器进程; 第二,它们通过自身的块管理器(Block Manager)为用户程序中要求缓存的 RDD 提供内存式存储。

3.集群管理器:

驱动器节点和执行器节点是如何启动的呢? Spark 依赖于集群管理器来启动执行器节点,而在某些特殊情况下,也依赖集群管理器来启动驱动器节点。

使用spark-submit部署应用

一般是在shell脚本中写好,然后运行shell脚本就行了

spark-submit的详细参数参考 spark-submit使用及说明

在spark任务中认证

import org.apache.hadoop.security.UserGroupInformation
import org.apache.hadoop.conf.Configuration
System.setProperty("java.security.krb5.conf", "/etc/krb5.conf")
val configuration = new Configuration()
configuration.set("hadoop.security.authentication", "Kerberos")
UserGroupInformation.setConfiguration(configuration)
UserGroupInformation.loginUserFromKeytab("xxx@XXXX", "xxx.keytab")

最新文章

  1. 有趣的 CSS 像素艺术
  2. 强大的DOM变化观察者MutationObserver
  3. WebView加载HTML图片大小自适应与文章自动换行
  4. Level shifting a +/- 2.5V signal to 0 - 5V
  5. [转] jQuery对象与DOM对象之间的转换
  6. dedecms程序给栏目增加缩略图的方法
  7. xampp改到phpmyadmin的root密碼無法登錄
  8. BZOJ 1828: [Usaco2010 Mar]balloc 农场分配
  9. mysql批量上传数据
  10. 重启mysql主从同步mongodb(tungsten-replicator)
  11. Redis高可用方案----Redis主从+Sentinel+Haproxy
  12. 使用python脚本实现iOS图片资源压缩
  13. 如何使用Ajax从FastReport Web API获取报表
  14. 思维导图软件 xMind 基本用法
  15. 利用Django构建web应用及其部署
  16. 感谢大家对《Cocos2d-JS开发之旅》的支持
  17. 《Agile Web Development With Rails》读后感--rails基于web设计的best Practices
  18. PC和FPGA间的串口通信实现
  19. 【LeetCode】103. Binary Tree Zigzag Level Order Traversal
  20. eclipse egit(分支管理 上)

热门文章

  1. bootstrap中的对话框-dialog-2
  2. April Fools Contest 2017 题解
  3. Python和Mysql、Nginx
  4. Spark MLlib 之 大规模数据集的相似度计算原理探索
  5. 增益 Gain 分贝 dB
  6. CSS网页布局垂直居中整理
  7. Autonomous driving - Car detection YOLO
  8. ESLint 配置说明
  9. 最佳实战Docker持续集成图文详解
  10. error C2039: 'SetWindowTextA' : is not a member of 'CString'