1. spark概述
    (1) 基于内存的计算框架
    (2) 与mapreduce并行计算
    (3) hadoop, Spark,Storm
    p排序
  2. SparkSession限制线程数量本地_spark

  3. DAG有向无环图拆分
    python致命缺陷,并发性不好。 函数编程利用并发cpu. 小规模使用。
  4. SparkSession限制线程数量本地_spark_02


  5. SparkSession限制线程数量本地_生产环境_03

  6. Spark生态系统
    (1) 应用场景
    批处理,(数十分钟,数小时)
    历史数据交互式查询 (数10秒)
    基于实时数据量的数据处理 (毫秒级别)
    (2)生态系统
    统一用YARN进行资源调度(spark, hive)
  7. SparkSession限制线程数量本地_应用程序_04

  8. (2) 数据流
  9. SparkSession限制线程数量本地_生产环境_05

  10. Spark运行框架
    (1)RDD 核心概念 (数据抽象)弹性分布式数据集
    高度受限的共享内存模型。
    RDD只能度
    (2)DAG 反映RDD之间依赖操作

    (3)Executor 运行管家分配的任务
    (4)应用程序 --若干作业–若干阶段–多个RDD
(5) 运行架构
![在这里插入图片描述]()

Cluster Manager : cpu 内存,带宽。

woker Node : 任务

SparkSession限制线程数量本地_应用程序_06


SparkSession限制线程数量本地_生产环境_07


应用执行流程工作具体流程

SparkSession限制线程数量本地_生产环境_08

  1. Spark部署
    集群/单机
    集群: YARN
    (1) 安装spark
    java, haddop 安装
    编译需要明确版本号。命令式安装。
    (2) 进入模式
  2. SparkSession限制线程数量本地_生产环境_09

  3. 替换:

单机单线程

SparkSession限制线程数量本地_应用程序_10


单机多线程, 或人为指定*的个数,1,2,3,4

SparkSession限制线程数量本地_spark_11


独立集群

SparkSession限制线程数量本地_生产环境_12


yarn-client: 当前客户端作为集群管理

调试程序,客户端不可关

yarn-cluster : 集群 中选择节点
生产环境

  1. 应用程序
  2. SparkSession限制线程数量本地_spark_13

  3. 打包工具: sbt, Maven
  4. 集群应用程序提交
    生产模式
  5. SparkSession限制线程数量本地_spark_14

  6. –class SparkPi 自带类
    –master : 设定 集群模式, 上图是standlone
    examples: 指定依赖包
  7. SparkSession限制线程数量本地_生产环境_15

  8. 进入交互式环境:
  9. SparkSession限制线程数量本地_spark_16


  10. SparkSession限制线程数量本地_spark_17

  11. 脚本代码: 必须使用new SparkContext对象
    交互式启动进入,自动生成变量SparkContext对象
    分布式sc.file
    分布式中的文件:9000分布式访问地址
    Readme生成Rdd ,生成string
    textFile.count() ,开始从头到尾操作,加载到内存。 统计元素个数。
  12. SparkSession限制线程数量本地_spark_18

  13. YARN下执行应用程序
    生产环境 YARN -CLUSTER
  14. SparkSession限制线程数量本地_生产环境_19

  15. 运行结果
  16. SparkSession限制线程数量本地_生产环境_20

  17. 交互式运行调试
  18. SparkSession限制线程数量本地_应用程序_21

  19. 没有指定clinte 和Cluster . 默认进入Clinte

SparkSession限制线程数量本地_spark_22


在浏览器中输入查询运行情况:

SparkSession限制线程数量本地_生产环境_23