Spark應用性能診斷
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應用。