ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • spark-Driver
    computer/spark 2016. 10. 7. 12:20

    원문 : https://jaceklaskowski.gitbooks.io/mastering-apache-spark/content/spark-driver.html

    Dirver

    Spark Driver는 Spark application 위한 sparkContext를 관리하는 JVM process이다.

    Spark Driver는 DAGScheduler와 Task Scheduler를 이용하여 job들과 task들 실행을 조종(cockpit)한다. 또한, 환경설정을 위해서 Web UI를 관리한다.

    spark driver.png
    Figure 1. Driver with the services


    이것은 task들로 spark application을 분리한다. executor들 위에서 실행할 그것들을 스케쥴링한다.

    드라이버는 task 스케쥴러가 살아있는 곳이고 worker들이 가로지르는 task들을 낳는다.(spawn)

    Driver가 worker들과 전반적인 task들의 실행을 조정한다.


    Note. spark shell 은 spark application과 드라이버 이다. sc로 이용할 수 있는 SparkContext를 생성한다.


    Driver는 추가적인 서비스들을 필요로 한다. ( 게다가 ShuffleManager, MemoryManager, BlockTransferService, BroadcastManager, CacheManager 같은것 중에 하나 )

    * Listener Bus

    * RPC Environment

    * MapOutputTrackerMaster with the name MapOutputTracker

    * BlockManagerMaster with the name BlockManagerMaster

    * HttpFileServer

    * MetricsSystem with the name driver

    * OutputCommitCoordinator with the endpoint’s name OutputCommitCoordinator



    * work의 높은 레벨의 컨트러 flow

    * spark application은 spark driver가 동작하는 시간만큼 동작

    * 드라이버가 종료될때, spark application도 종료된다.

    * sparkContext, RDD를 생성하고, transformation과 action을 실행한다.

    * task들을 시작한다.


    Driver's Memory

    처음으로 셋팅할 수 있다. spark-submit 쉘의 --driver-memory 커맨드라인 옵션이나 spark.driver.memory 사용한다. 만약 쉽게 set이 안되면, SPARK_DRIVER_MEMORY로 돌릴수 있다.


    Driver's Cores

    'computer > spark' 카테고리의 다른 글

    spark-Executors  (0) 2016.10.07
    spark-stage  (0) 2016.10.06
    spark-Spark Architecture  (0) 2016.10.06
Designed by Tistory.