只是想知道星火計劃工作如何?簡單來說,我已經閱讀了很多關於它是如何實現的描述,但它們太複雜了,無法理解。 謝謝, 馬克簡而言之,星火計劃工作如何?
回答
我認爲spark工作是FIFO(先進先出)。
Spark的調度程序以FIFO方式運行作業。
也可以在作業之間配置公平共享。
要啓用公平調度,配置SparkContext時只需將spark.scheduler.mode
屬性FAIR:
> val conf = new SparkConf().setMaster(...).setAppName(...)
> conf.set("spark.scheduler.mode", "FAIR") val sc = new
> SparkContext(conf)
有關詳細信息,請查看https://spark.apache.org/docs/1.2.0/job-scheduling.html
取決於你在呼喚什麼樣的工作 - 如果你正在談論獨立提交,這實際上並不是由spark而是由主機環境來處理(mesos或Hadoop YARN)
單個spark-context中的不同作業會,b除非將其配置爲使用FAIR調度程序,否則使用FIFO
在高級別,在RDD上調用任何操作時,Spark會創建DAG並提交給DAG調度程序。
DAG調度程序將操作員劃分爲多個任務階段。一個階段由基於輸入數據分區的任務組成。 DAG調度程序一起管理運營商。對於例如許多地圖運營商可以安排在單一階段。 DAG調度程序的最終結果是一系列階段。
階段傳遞到任務計劃程序。任務計劃程序通過集羣管理器啓動任務(Spark Standalone/Yarn/Mesos)。任務調度程序不知道階段的依賴關係。
工作人員執行從站上的任務。
看看this answer瞭解更多信息
好問題。這些術語在不同的地方以不同的方式使用,並且可能具有挑戰性。 Spark最令人困惑的事情是,應用程序的一次運行可以產生多個作業,每個作業都被分解爲多個任務!例如,如果應用程序是多線程的,則每個線程都可以生成一個Spark作業。但是,在正常情況下,應用程序與工作是一對一的。應用程序的一次運行會生成一份作業。
現在,Spark是以一種靈活的方式製作的,所以它將調度片斷開並使其可插拔。可以插入許多不同的調度程序。最受歡迎的3個是來自Hadoop,Mesos和Spark自帶的調度程序的YARN。所以,調度有各種各樣的行爲。
下一個令人困惑的事情是,作業和任務都安排好了。工作被分配資源。這可以靜態完成,因此,例如將一組服務器分配給一個作業,然後該作業是唯一可以使用這些服務器的作業。或者,資源可以在作業中共享。一旦分配了資源,作業就會指向一個任務調度程序。然後作業生成任務並將其提供給任務調度程序,該任務調度程序將任務分配給特定資源。爲作業分配資源的同一實體還提供任務調度程序(IE,YARN,Mesos或Spark內置)。因此,任務調度程序的工作方式也存在差異。
通常情況下,調度程序試圖跟蹤數據的位置,然後將任務分配到數據已駐留的位置,或者有足夠的可用網絡容量來移動數據。
複雜的因素是任務之間有依賴關係。執行這些依賴關係實際上是計劃過程的一部分,但Spark術語在這一點上會變得混亂。在Spark中,只有處理器的最終任務分配被稱爲「調度」。
我給你舉個例子,
假如你有一個做如下操作的應用,
- 閱讀來自HDFS數據 上COLUMN_1
- 過濾運算
- 過濾器op on column_2
- column_3上的過濾器操作
- 寫RDD到HDFS
- 斯巴克的DAGScheduler分析應用程序動作的過程中,設計最好的辦法來實現任務
- 我的意思是,它的而不是每個過濾器的不同的階段操作,它會將所有三個過濾器視爲一個階段。因此,不需要三次過濾數據集,它只會掃描一次。這當然是最佳的做法。
希望這會有所幫助。
- 1. 星火HashingTF如何工作
- 2. 多個工會 - 如何星火生成計劃
- 3. Akka簡而言之
- 4. Hadoop的容量計劃和星火
- 5. 爲星火工作
- 6. 開始星星之火從(或工人)
- 7. 工作如何被分佈在星火
- 8. 紗線上的火花:如何防止計劃多個火花工作
- 9. Seam 3簡而言之?
- 10. 沒有簡而言之IOBlockStorageDevice
- 11. 調整星火工作
- 12. 如何星火
- 13. <簡而言之>作爲文本而不是HTML標籤
- 14. Firebase的火焰計劃是否有火花計劃配額?
- 15. EMR星火工作,而不是在一個Java函數
- 16. 運行星火計劃與當地的IntelliJ
- 17. 如何在星火
- 18. 簡而言之多態現象
- 19. 「簡而言之」是什麼意思
- 20. java.lang.ArrayIndexOutOfBoundsException:1例是Java中簡而言之
- 21. 處理多個文件分別在星星之火,提交工作
- 22. 馬拉松跑步星火工作
- 23. 星火產生java.io.IOException:在工作
- 24. Databricks星火紅移:SORTKEYS不工作
- 25. 工作在星火沒有數據流
- 26. 問題運行星火工作
- 27. 單擊安裝程序如何工作?工作計劃建議
- 28. xcodebuild工作區和計劃
- 29. 工作計劃模板?
- 30. Heroku上的計劃工作
假設我在客戶端模式下運行Spark Client程序,在獨立模式下運行Spark Cluster。誰創建了一個DAG? Spark客戶創建DAG還是Spark Master創建DAG? Spark客戶端程序是否指導工作人員進行哪些轉換? – user1870400