Spark设计理念和基本架构

Spark 特点
减少Disk IO

Spark 将资源文件(jar 等),缓存在driver 本地文件服务的内存里,当Executor执行任务时直接从 Driver 的内存中读取

增加并行度

多个stage 之间允许串行也可以并行

避免重新计算

当stage 中某个分区的task 失败,会重新对此stage 调度,但重新调度时会过滤掉已经成功执行的分区task

较为灵活的内存管理策略

四个部分

  • onheap 存储内存
  • onheap 执行内存
  • offheap 存储内存
  • offheap 执行内存

执行内存和存储内存之间可以互相借用

Spark 模块设计
SparkContext

Spark 应用程序的提交和执行都离不开 SparkContext,
SparkSession的底层实现依赖于 SparkContext

  • SparkSession、SQLContext、 HiveContext等都对SparkContext
    进行了封装,并提供了DataFrame、 SQL、Hive 接口
  • 用户可以SparkContext 提供的接口编写 Driver 应用程序
SparkEnv

SparkEnv 是 Spark 中 task 允许时所必须的组件

Spark 基本架构

Cluster Manager
  • Yarn 模式下,为 ResourceManager
  • StandAlone 模式下, 为master
worker
  • Yarn 模式下,为 NodeManager
spark的数据本地性(data locality)

参考链接: https://www.cnblogs.com/lillcol/p/14838348.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值