一.spark學習初體驗之SparkContext

     我是初級菜鳥一枚,寫博客也是爲了自己複習鞏固一下,同時記錄一下自己學習spark的過程,希望和大家一起交流成長(希望大家千萬別噴我,不然我會喪失繼續寫下去的勇氣的哭)。

    首先寫一下我個人對spark運行架構原理的理解。

    首先最重要的一步在driver上構建我們的SparkContext。在這一步主要做了四件事:

    (1)創建了DAGScheduler

             DAG是基於用戶的transformation操作和stage階段劃分算法,將一個spark任務分解成若干個stage(stage階段劃分 算法在後面的文章中我會詳細的說一下),然後爲每一個stage構建一個taskset,並交由TaskScheduler(其實質上就是在邏輯上將spark任務進行拆分,用戶分佈式計算)

    (2)創建TaskScheduler

            其實TaskScheduler是在DAGScheduler之前進行創建的。其主要用戶接收DAGScheduler分配的taskset,通過網絡傳遞給對應的executor(這樣描述其實是有一定問題的,缺少了中間一個重要的組件)

    (3)SchedulerBackend

            其實這個東西是在TaskScheduler內進行初始化的,但是我感覺他太重要了,所以就單獨將其列出來。在後續的的文章中也會對其進行詳細的說明。

    (4)SparkUI

            這個組件就是爲了能讓我們對正在運行的spark任務能夠在頁面中進行一個直觀的監測。

    好了,第一篇就寫這麼多把,感覺這四件事每一個單獨拿出來都能寫太多了,還是在以後的文章中慢慢的說明吧,哈哈哈哈

    有寫的不對的地方,希望讀者能指出來,共同進步大笑

        

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章