全部產品
Search
文件中心

MaxCompute:任務

更新時間:Jun 19, 2024

任務(Task)是MaxCompute的基本計算單元,使用者通過編寫SQL或者MapReduce程式來表達資料處理的邏輯,然後提交這些程式到MaxCompute服務上執行,MaxCompute會把這些程式轉換為一個或多個任務,並在分布式環境中並存執行。

對於您提交的大多數任務,特別是計算型任務,例如SQL DML語句MapReduce,MaxCompute會對其進行解析,得到任務的執行計畫。執行計畫由具有依賴關係的多個執行階段(Stage)構成。

目前,執行計畫在邏輯上可以被看作一個有向圖,圖中的點是執行階段,各個執行階段之間的依賴關係是圖的邊。MaxCompute會依照圖(執行計畫)中的依賴關係執行各個階段。在同一個執行階段內,會有多個進程,也稱之為Worker,共同完成該執行階段的計算工作。同一個執行階段的不同Worker只是處理的資料不同,執行邏輯完全相同。計算型任務在執行時,會被執行個體化,您可以對這個執行個體(Instance)進行操作,例如擷取執行個體狀態(Status Instance)終止執行個體運行(Kill Instance)等。

部分MaxCompute任務並不是計算型的任務,例如SQL中的DDL語句,這些任務本質上僅需要讀取、修改MaxCompute中的中繼資料資訊。因此,這些任務無法被解析出執行計畫。

說明

在MaxCompute中,並不是所有的請求都會被轉化為任務(Task),例如專案空間(Project)資源(Resource)自訂函數(UDF)執行個體(Instance)的操作均不需要通過MaxCompute的任務來完成。

相關文檔

查看MaxCompute SQL對應的DML語句的執行計畫結構,可使用explain語句,詳情請參見EXPLAIN