我上傳了一個客戶jar到S3,並且想要在EMR中運行作業。 所以在集羣配置中,我選擇了1個主,2個工作者,指定了jar路徑,輸入路徑和輸出路徑。一切都很好。爲什麼AWS EMR作業的作業任務按順序執行
一旦開始運行客戶jar,我發現我無法查看工作任務,因爲它告訴我「沒有可用的任務」,這非常奇怪。工作完成後,我發現emr總共創建了306個任務,但是當我查看每個任務的syslog時,我發現它們都是按順序執行的。例如,maptask260在19:40:35完成,而maptask261從19:40:40開始,並且在完成261之後啓動maptask262。
據我所知,EMR根據工作規模創建了一堆任務,我認爲所有任務都應該並行執行,這意味着一旦工作開始運行,就應該創建360任務,並且所有任務應該同時開始工作。
不知道我的理解是錯誤還是我錯誤配置了某些內容?
有人可以幫忙嗎?
我啓動了兩個m1.medium實例。這只是爲了測試目的,所以我沒有使用兩個很多的工作人員......但即使兩個實例不足以並行運行306個任務,至少它應該同時運行2或3個任務......(以我個人的理解)......爲什麼所有的任務都是按順序執行的?所以令人困惑... – user1453951
如果您有超過1個可用插槽,map/reduce作業中的mapper任務(或reducer任務)應該並行運行。 – SNeumann