AnalyticDB for MySQL企業版及湖倉版推出Spark應用診斷功能,若您提交的Spark應用存在效能問題,您可以根據診斷資訊快速定位和分析效能瓶頸問題,最佳化Spark應用,提高問題解決效率。本文主要介紹如何進行Spark應用效能診斷以及效能診斷的樣本。
前提條件
已建立AnalyticDB MySQL企業版及湖倉版叢集。具體操作,請參見建立叢集。
已建立Job型資源群組,且計算預留資源需大於等於8 ACU。具體操作,請參見建立資源群組。
已為RAM使用者授予AliyunADBDeveloperAccess許可權。具體操作,請參見RAM子帳號和許可權。
已建立企業版及湖倉版叢集的資料庫帳號。
如果是通過阿里雲帳號訪問,只需建立高許可權帳號。具體操作,請參見建立高許可權帳號。
如果是通過RAM使用者訪問,需要建立高許可權帳號和普通帳號並且將RAM使用者綁定到普通帳號上。具體操作,請參見建立資料庫帳號和綁定或解除綁定RAM使用者與資料庫帳號。
已授權AnalyticDB for MySQL扮演AliyunADBSparkProcessingDataRole角色來訪問其他雲資源。具體操作,請參見帳號授權。
應用情境
Spark應用效能診斷主要適用於以下情境:
資料集效能分析:使用Spark處理大規模資料時,需要對資料集進行效能分析。使用效能診斷工具可以快速定位效能瓶頸(例如:記憶體峰值、Spill等),提高資料處理效率。
大規模應用負載平衡:Spark應用在高並發負載運行時,可能會出現效能問題,例如:資料扭曲、長尾任務、負載不均衡。對Spark應用進行效能診斷,可以快速定位問題,便於您最佳化Spark應用。
使用限制
僅支援診斷14天以內且執行成功的Spark應用。
僅支援診斷Batch和Streaming類型的應用。
操作步驟
登入雲原生資料倉儲AnalyticDB MySQL控制台,在左上方選擇叢集所在地區。在左側導覽列,單擊集群清單,在湖倉版頁簽下,單擊目的地組群ID。
在左側導覽列,單擊作業開發>Spark Jar 開發。
在應用列表地區,單擊目標任務所在操作列的更多>歷史。
在執行歷史地區,單擊目標任務操作列的診斷。
說明診斷完成後,會自動彈出診斷最佳化詳情面板,若您提交的Spark應用存在效能問題,可以根據診斷資訊最佳化Spark應用。