使用擴充的 Apache Spark 歷程記錄伺服器來偵錯和診斷 Apache Spark 應用程式
本文提供如何使用擴充 Apache Spark 歷程記錄伺服器來偵錯及診斷已完成和執行 Apache Spark 應用程式的指引。
存取 Apache Spark 歷程記錄伺服器
Apache Spark 記錄伺服器是已完成和執行 Spark 應用程式的 Web 使用者介面。 您可以從進度指示器筆記本或 Apache Spark 應用程式詳細數據頁面開啟 Apache Spark Web 使用者介面 (UI)。
從進度指示器筆記本開啟 Spark Web UI
觸發 Apache Spark 作業時,開啟 Spark Web UI 的按鈕位於 進度指標中的 [更多動作 ] 選項內。 選取 [Spark Web UI ],並等候幾秒鐘,然後[Spark UI] 頁面隨即出現。
從 Apache Spark 應用程式詳細數據頁面開啟 Spark Web UI
Spark Web UI 也可以透過 Apache Spark 應用程式詳細數據頁面開啟。 選取 頁面左側的 [監視中樞 ],然後選取 Apache Spark 應用程式。 應用程式的詳細數據頁面隨即出現。
對於狀態為執行中的 Apache Spark 應用程式,按鈕會顯示 Spark UI。 選取 [Spark UI ],並顯示 [Spark UI] 頁面。
對於狀態為結束的 Apache Spark 應用程式,結束狀態可以是 [已停止]、[失敗]、[已取消] 或 [已完成]。 按鈕會顯示 Spark 歷程記錄伺服器。 選取 [Spark 歷程記錄伺服器 ],並顯示 [Spark UI] 頁面。
Apache Spark 記錄伺服器中的 [圖形] 索引標籤
選取您要檢視之作業的作業標識碼。 然後,選取 工具功能表上的 [圖形 ],以取得作業圖形檢視。
概觀
您可以在產生的作業圖表中查看作業概觀。 根據預設,圖表會顯示所有作業。 您可以依 [作業識別碼] 篩選此檢視。
顯示器
預設會選取 [進度] 顯示。 您可以選擇 [顯示] 下拉式清單中的 [讀取] 或 [寫入]來檢查數據流。
圖形節點會顯示熱度圖圖例中顯示的色彩。
播放
若要播放作業,請選取 [播放]。 您可以隨時選取 [ 停止 ] 來停止。 工作色彩會在播放時顯示不同的狀態:
Color | 意義 |
---|---|
綠 | 成功:作業已順利完成。 |
Orange | 重試:失敗但不會影響作業最終結果的工作實例。 這些工作具有稍後可能會成功的重複或重試執行個體。 |
藍色 | 執行中:工作正在執行。 |
白色 | 等候或略過:工作正在等候執行,或已略過階段。 |
紅 | 失敗:工作失敗。 |
下圖顯示綠色、橙色和藍色狀態色彩。
下圖顯示綠色和白色狀態色彩。
下圖顯示紅色和綠色狀態色彩。
注意
Apache Spark 歷程記錄伺服器允許播放每個已完成的作業(但不允許播放不完整的工作)。
Zoom
使用滑鼠捲動來放大和縮小作業圖形,或選取 [ 縮放] 以符合 螢幕大小。
工具提示
將滑鼠停留在圖形節點上,以查看有失敗的工作時的工具提示,然後選取階段以開啟其階段頁面。
在 [作業圖表] 索引標籤上,如果階段有符合下列條件的工作,則會顯示工具提示和小型圖示:
Condition | 描述 |
---|---|
資料扭曲 | 此階段內所有工作的數據讀取大小 > 平均數據讀取大小 * 2,數據讀取大小 > 為 10 MB。 |
時間扭曲 | 此階段內所有工作的運行時間平均運行時間 > * 2 和運行時間 > 2 分鐘。 |
圖形節點描述
作業圖表節點會顯示每個階段的下列資訊:
- 識別碼
- 名稱或描述
- 總計工作數
- 讀取的資料:輸入大小和隨機讀取大小的總和
- 數據寫入:輸出大小和隨機寫入大小的總和
- 執行時間:第一次嘗試的開始時間與最後一次嘗試的完成時間之間的時間
- 數據列計數:輸入記錄、輸出記錄、隨機讀取記錄和隨機寫入記錄的總和
- 進度
注意
根據預設,作業圖形節點會顯示每個階段最後一次嘗試的信息(階段運行時間除外)。 不過,在播放期間,圖形節點會顯示每次嘗試的資訊。
讀取和寫入的數據大小為 1MB = 1000 KB = 1000 * 1000 個字節。
提供意見反應
選取 [ 提供意見反應] 以傳送問題的意見反應。
探索 Apache Spark 歷程記錄伺服器中的 [診斷] 索引標籤
若要存取 [診斷] 索引卷標,請選取作業標識符。 然後選取工具功能表上的 [ 診斷 ],以取得作業診斷檢視。 [診斷] 索引標籤包括 [資料扭曲]、[時間扭曲] 和 [執行程式使用狀況分析]。
透過個別選取索引標籤,檢查 [資料扭曲]、[時間扭曲] 和 [執行程式使用狀況分析]。
資料扭曲
當您選取 [ 資料扭曲 ] 索引標籤時,會根據指定的參數顯示對應的扭曲工作。
指定參數 -第一個區段會顯示用來偵測資料扭曲的參數。 默認規則為:工作數據讀取大於平均工作數據讀取的三倍,而工作數據讀取超過 10 MB。 如果您想要為扭曲的工作定義自己的規則,您可以選擇參數。 扭曲階段和扭曲字元區段會據以重新整理。
扭曲階段 - 第二個區段會顯示階段,這些階段已扭曲的工作符合先前指定的準則。 如果某個階段中有多個扭曲的工作,扭曲的階段數據表只會顯示最扭曲的工作(例如,數據扭曲的最大數據)。
扭曲圖表 - 選取扭曲階段數據表中的數據列時,扭曲圖表會根據數據讀取和運行時間顯示更多工作分佈詳細數據。 扭曲的工作會以紅色標示,而一般工作則會以藍色標示。 圖表最多會顯示 100 個範例工作,而工作詳細數據會顯示在右下方面板。
時間扭曲
[時間扭曲] 索引標籤會根據工作執行時間顯示扭曲的工作。
指定參數 - 第一個區段會顯示用來偵測時間扭曲的參數。 偵測時間扭曲的預設準則是:工作執行時間大於平均執行時間的三倍,而工作執行時間大於 30 秒。 您可以根據您的需求變更參數。 扭曲階段和扭曲圖表會顯示對應的階段和工作資訊,就像先前所述的 [數據扭曲] 索引卷標一樣。
選取 [時間扭曲],然後根據 [指定參數] 區段中所設定的參數,在 [扭曲階段] 區段中顯示篩選的結果。 在 [扭曲階段 ] 區段中選取一個項目,然後在第 3 節中草擬對應的圖表,工作詳細數據會顯示在右下方面板中。
執行程式使用狀況分析
這項功能現已在 Fabric 中已被取代。 如果您仍想要將此作為因應措施,請在 URL 的路徑 “/diagnostic” 後面明確新增 “/executorusage” 來存取頁面,如下所示:
相關內容
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應