天天看點

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

作者:DataWorks産品經理 張華蕊

一、運維中心簡介

DataWorks運維中心是對任務進行測試和監控的子產品,使用者在DataStudio中進行代碼開發和調試,将調試的任務經過送出釋出操作後,就可以讓任務按照排程配置來定時運作。也就是這個時候,任務就從開發環境進入到了生産環境。

對于生産環境中任務的測試、運維、監控等都是在運維中心完成的。運維中心包括三部分:運維大屏、任務運維和智能監控;根據任務運維的觸發方式不同,又可以分為:實時任務運維、周期任務運維和手動任務運維。

(一)運維大屏

運維大屏展示目前需要重點關注的運維名額,包括失敗執行個體、運作慢的執行個體、等資源執行個體、孤立節點、暫停節點和過期節點。可以點選大屏上的相應名額做進一步操作。

下圖展示了執行個體運作狀态分布,包括成功的、失敗的或是等資源的等等。右側是任務完成情況的折線圖。最下面的曲線圖展示的是排程資源的變化趨勢。使用者可以結合自己各個時間段的任務情況,來動态調整任務的運作時間,以達到合理使用資源的目的。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

(二)任務運維

運維中心提供清單和DAG兩種運維模式,清單模式下,上方是篩選區,下方是任務清單。使用者可以友善的通過勾選進行批量操作。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

在DAG模式下,使用者不僅可以看到單個節點的運作情況,還可以通過展開上下遊的

操作看到上下遊節點的運作情況,友善使用者排錯。DAG提供了一種圖形化的任務管理,千萬級任務依賴圖可以逐級展現。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

執行個體是運維中心中非常重要的概念。上文所述,任務通過送出釋出操作,從開發環境進入到生産環境,執行個體就是任務在生産環境被排程時生成的執行記錄。

運維中心支援運作診斷、檢視運作日志、重跑等操作,下面簡單介紹一下。

(三)補資料

使用者9月20日送出釋出了一個任務,那麼任務最早會從當日開始定時運作,資料也會從這天開始産出。如果使用者想要拿到20日之前的資料該怎麼操作呢。這就用到了補資料功能。

補資料功能入口在“周期任務”菜單中,清單模式下會看到補資料選項,或是在DAG圖模式中對某個節點進行右鍵選擇找到補資料選項。然後選擇補資料的節點範圍,是隻針對目前節點補資料,還是對目前節點和下遊補資料,或是海量節點模式補資料。在海量節點模式下使用者可以選擇多個工作空間下面的多個節點進行補資料操作。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

如果想把9月的資料都補完,那麼就可以設定9月1日-19日的範圍。當補資料範圍比較大或是節點數量比較多時,可以設定一下并行,這樣可以提高補資料運作的速度。

是以補資料功能可以幫助使用者獲得過去某個特定時間段的資料。

(四)運作診斷

任務在定時運作中最理想的狀态是運作不出錯,任務産出的時間有保障。但事實是任務運作中總會遇到一些問題:定時時間到了任務不跑;任務突然運作慢了或者出錯了。這時候就可以用到運維中心的運作診斷功能。

我們可以點選任務運作狀态圖示來發起診斷,也可以在DAG圖裡某個任務上右鍵選擇運作診斷。

任務診斷包括4個部分,上遊依賴、定時檢查、排程資源和任務執行。

首先運作診斷展示了上遊節點的運作情況,可以讓使用者迅速定位是哪個節點阻塞了,因為任務運作前提條件是上遊節點都運作成功了。然後它會做一個定時檢查,檢查任務定時時間有沒有到。排程資源部分展示了資源組水位情況(使用情況),下圖折線部分是水位變化趨勢,黃色色塊表示任務在等資源,綠色色塊表示任務在運作。同時曆史執行個體菜單欄處還能檢視同一任務曆史15次的執行個體運作情況。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

最後,MaxCompute還可以對運作日志進行聚類分析,鎖定錯誤原因并智能提供診斷建議。

二、智能監控

DataWorks同時提供全局規則、自定義規則和基線三種監控方式。

(一)自定義規則:正常監測方法

如下圖這個簡單的業務流程,它是由6個節點組成。為了在任務出錯時能夠收到報警,使用者可以建立一個自定義規則。設定這個規則可以通過三步,首先選擇某個節點作為監控對象,其次設定觸發條件,比如 “出錯”,再詳細設定報警次數、最小報警間隔、免打擾時間、報警方式、報警接收人,可支援的方式有短信、郵件、電話和釘釘。如果使用者想針對多個節點都進行出錯監控,可以直接在設定面闆增加多個監控對象。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

使用者除了關注任務運作是否成功,也會關心任務完成的時間,因為任務的定時完成意味着資料的按時産出,這樣才能保證其他消費這些資料的應用能正常運作。但是可能發生的上遊阻塞或資源緊張的情況,該如何檢測呢?

這裡可以把報警觸發條件設定為未完成,并設定一個觸發時刻,舉個例子,如果是9點的時候任務還沒有完成,就會收到報警。這是單節點的情況,如果是多節點,需要給每個節點設定一個完成時間,比較麻煩,且這個時間隻能通過使用者的經驗值來設定,參考意義比較有限。

(二)正常檢測方法的問題

任務執行是依賴上遊任務正常完成的,針對單個節點的配置無法感覺上遊任務的風險,是以當使用者收到報警時,往往問題已經發生了。這就是自定義規則即正常監控方案的劣勢:由于任務的檢測配置各不相同,很難做到提前預知風險。而且當業務流程變得複雜,上述問題都會變得更加嚴重。對于多節點任務,更是很難梳理出哪些任務需要監控,這就會導緻大量的任務産生大量的報警,而使用者無法從這些報警資訊中快速定位故障原因。

(三)基線

阿裡内部每天有百萬級執行個體在同時運作,阿裡是怎麼做到對這麼大體量的任務進行高效監控呢?答案就是基線。

運維中心智能監控中,智能兩個字就展現在基線上。使用者隻需要将重要節點添加到基線上,這個節點的上遊就會自動納入基線的監控範圍,系統也會自動推斷節點啟動時間和完成時間,上遊任務一旦出現異常,就會産生報警。報警的内容包括了出錯和變慢,同時提供甘特圖幫助使用者快速鎖定整個業務流程中的瓶頸節點。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

(四)基線原理

下圖的業務流程中包含12個節點,其中K代表關鍵産出節點,可以消費資料産出報表,上司每天9點半要看這個報表。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

這個背景下如果使用基線功能來保障上司每天9點半都能看到正确的報表,首先需要将K節點設定一條基線,并把這個基線的承諾時間設定為9點半,同時給它30分鐘的一個預警空間。

以上就是設定基線的全部操作,這個操作會引發系統一些列的動作。首先系統會把影響到産出的幾個節點(即藍色節點)都納入基線的監控範圍,而其它灰色節點不會被納入監控範圍。是以當藍色節點出現問題,也會産出一條報警。

下面根據基線的承諾時間及各個任務曆史運作時長,倒推出各個任務需要開始運作的時間。以K節點為例,承諾時間是9點半,預警buffer 30分鐘,是以K需要在9點的時候運作完成。K的平均運作時間是30分鐘,是以K需要在8點半的時候就開始運作。而“I”這個節點平均運作時間是2小時,是以它在6點半的時候就需要開始運作了。以此類推,A節點需要在4點半的時候開始運作。這樣,可以找到一條關鍵鍊路,即執行時間最長的鍊路,如下圖所示ABFIK這5個節點的鍊路。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

關鍵鍊路不是一成不變的,根據任務的運作情況,它是随時變化的。系統會動态地調整關鍵鍊路。舉個例子,如果E節點運作時間從10分鐘變成40分鐘,關鍵路徑就會變成ABEIK,如果關鍵路徑上的節點出現了變慢的情況,使用者就會收到報警。同時,系統會一直計算這條基線的預計完成時間,如果預計完成時間晚于承諾時間減去預警buffer的時長,也會收到基線的報警。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

是以如果把K節點放在一條基線上,那麼K這個節點本身及任何影響這個節點産出的異常情況,都會被監測到。這樣使用者就能通過這種簡單的配置基線的操作洞察所有影響這個重要節點的異常了。

(五)智能監控的使用

基線是在運維中心一級菜單“智能監控”裡面的,可以通過“基線管理”建立基線,基線類型包括天基線和小時基線分别針對天任務和小時任務,然後再把任務添加到基線,再設定優先級。優先級越高,在搶占資源時就會優先配置設定。最後再設定一個承諾時間和預警buffer就完成了。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

三、移動版DataWorks使用

(一)使用場景

當DataWorks使用者下班回家或者出差旅行途中接收到任務報警、權限審批或産品到期提醒的情況時,可以使用移動版DataWorks。

(二)使用方法

移動版DataWorks使用方法有三種:阿裡雲App、手機浏覽器和釘釘小程式。

第一種方法通過阿裡雲App。在手機端安裝阿裡雲App,在頂部搜尋欄輸入DataWorks,點選前往控制台。

第二種通過浏覽器。在浏覽器位址欄輸入workbench.data.aliyun.com,即可打開控制台,也可以将網頁儲存為書簽,友善下次使用。

第三種通過釘釘小程式。登入手機釘釘App,單擊釘釘下方菜單欄中的工作,點選頁面左上方切換至“大資料+AI”組織,然後單擊資料應用,找到DataWorks來操作。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

(三)亮點功能

首先是與報警短信結合,任務運維快人一步。使用者可以通過報警短信中的連結,直接在手機浏覽器中打開移動運維功能,可以對任務進行一些重跑操作。

第二是使用基線前提下,可以提供非常清晰的甘特圖,橫豎屏切換自如。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

第三是使用者檢視日志時可以一鍵到底,或一鍵到頂。

最後是移動審批功能,使用者可以在手機上直接處理表權限的審批,這個功能也支援批量操作。如果使用者打開阿裡雲App消息通知權限,當有人申請表權限時,審批人就會收到一條阿裡雲App的推送消息,點選這個消息可以一鍵直達移動審批來進行審批操作。

DataWorks運維中心與移動版介紹 | 《一站式大資料開發治理DataWorks使用寶典》一、運維中心簡介二、智能監控三、移動版DataWorks使用

運維中心介紹及實踐請參考:

https://developer.aliyun.com/learning/course/81/detail/1231

DataWorks官網:

https://www.aliyun.com/product/bigdata/ide

大資料&AI體驗館:

https://workbench.data.aliyun.com/experience.htm

繼續閱讀