• spark streaming原理


    Spark Streaming 是基于spark的流式批处理引擎,其基本原理是把输入数据以某一时间间隔批量的处理,当批处理间隔缩短到秒级时,便可以用于处理实时数据流。

    本节描述了Spark Streaming作业的执行流程。

    图1 Spark Streaming作业的执行流程

    具体流程:

    1. 客户端提交作业后启动Driver,Driver是spark作业的Master
    2. 每个作业包含多个Executor,每个Executor以线程的方式运行task,Spark Streaming至少包含一个receiver task
    3. Receiver接收数据后生成Block,并把BlockId汇报给Driver,然后备份到另外一个Executor上。
    4. ReceiverTracker维护Reciver汇报的BlockId。
    5. Driver定时启动JobGenerator,根据Dstream的关系生成逻辑RDD,然后创建Jobset,交给JobScheduler。
    6. JobScheduler负责调度Jobset,交给DAGScheduler,DAGScheduler根据逻辑RDD,生成相应的Stages,每个stage包含一到多个task。
    7. TaskScheduler负责把task调度到Executor上,并维护task的运行状态。
    8. 当tasks,stages,jobset完成后,单个batch才算完成。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    mysql两种重要的引擎
    mysql常用代码
    ubuntu常用基本命令
    redis缓存服务器
    memcached缓存服务器
    glusterfs分布式文件服务器
    keepalived双机热备(nginx+mysql)
    nginx负载均衡mysql数据库
    heartbeat双机热备(haproxy或glbd+mysql)
    haproxy负载均衡mysql
  • 原文地址:https://www.cnblogs.com/stark-summer/p/4829770.html
Copyright © 2020-2023  润新知