zoukankan      html  css  js  c++  java
  • Spark中关于粗粒度细粒度

    一、粗粒度

    1.工作原理:

    (1)Spark Streaming接收到实时数据流(data stream)

    (2)Spark Streaming把数据按照指定的时间段切成一片片小的数据块(小批次)

    (3)然后Spark Streaming把小的数据块传给Spark Engine处理

    (4)Spark Engine处理后,输出处理后的数据(processed result)

           每个应用程序的运行环境由一个Driver和若干个Executor组成,其中,每个Executor占用若干个资源,内部可运行多个Task,应用程序的各个任务正式运行之前,需要将运行环境中的资源全部申请好,且运行过程中要一直占用这些资源(即使不用),最后程序运行结束之后,回收这些资源

           Spark是一个典型粗粒度资源调度。

    二、细粒度

    1.工作原理:

    (1)driver:启动spark应用程序,构建StreamingContext

    (2)executor:启动receiver接收器,接收数据

    (3)executor:接收input Stream,然后拆分不同block(小块)

    (4)executor:receiver将block存储信息发送给StreamingContext

    (5)driver:启动job,然后将task提交到对应executor上执行

            与粗粒度模式一样,应用程序启动时,辉县启动executor,但每个executor占用的资源仅仅是自己运行所需的资源,不需要考虑将来要运行的任务,之后,cluster manager会为每个task根据自身需要动态分配资源。单个task运行完后就马上释放对应的资源。每个Task完全独立,优点是便于资源控制和隔离,但缺点也很明显,作业运行延迟大(重新分配task的资源是比较耗时的)

          MapReduce是一个典型细粒度资源调度。

  • 相关阅读:
    Pycharm的快捷键
    【Python】笔记1:Spyder常用快捷键
    npm常用命令整理
    MVC4 IIS7.5 403.14错误的解决办法
    AO 获取系统自带的工具条
    CentOS 7.3下安装Redis
    CentOS 7.3下安装MySql
    安装sql server 2005时出现“安装汇编”错误的解决办法
    解决IIS下localhost访问需要输入用户名和密码的问题
    不断沟通,反复确认
  • 原文地址:https://www.cnblogs.com/yangfanfan/p/11385400.html
Copyright © 2011-2022 走看看