
當達夢sql monitor輸出結果太多時800行不方便查看可以考慮大力加工一下思路是創建一個表將結果輸入進去然后方便用sql進行排序和分析。et知道某個步驟最耗時但是不知道對象。大力加工創建一個表-- 達夢執行計劃采樣明細存儲表CREATETABLEDM_SQL_PLAN_SAMPLE(IDINTNOTNULLCOMMENT執行計劃步驟ID,OPERATIONVARCHAR(64)NOTNULLCOMMENT操作類型CSCN2/INSERT2/SLCT2/UPDATE2等,OBJ_NAMEVARCHAR(128)COMMENT數據庫對象名表/系統表/視圖,ROWS_ESTIMBIGINTCOMMENT優化器預估行數,COSTBIGINTCOMMENT執行計劃成本值,TIME_ACTIVE_SECNUMERIC(20,10)COMMENT步驟活躍耗時(秒),START_ACTIVENUMERIC(20,10)COMMENT步驟啟動相對時間戳,EXECSINTCOMMENT當前步驟執行次數,ROWS_ACTUALBIGINTCOMMENT實際處理/返回行數,ACTIVITY_PCTNUMERIC(8,4)COMMENT活動時間占比(%),SAMPLE_COUNTBIGINTCOMMENTActivity Detail 采樣樣本數,-- 擴展業務字段可選用于區分SQL、會話、采集時間SQL_IDVARCHAR(32)COMMENT對應SQL唯一標識,COLLECT_TIMEDATETIMEDEFAULTSYSDATECOMMENT數據采集入庫時間,SESSION_IDINTCOMMENT會話ID);-- 建立索引按SQL_ID采集時間快速檢索CREATEINDEXIDX_DM_PLAN_SAMPLE_SQLTIMEONDM_SQL_PLAN_SAMPLE(SQL_ID,COLLECT_TIME);-- 按對象名過濾索引CREATEINDEXIDX_DM_PLAN_SAMPLE_OBJONDM_SQL_PLAN_SAMPLE(OBJ_NAME);用ai工具將這些sql monitor信息整理為insert語句到測試庫里執行插入。然后就可以在manager中執行各種排序哦原來是對SYSCOLUMNS進行了刪除比較耗時。top對象都是數據字典表。插入動作最耗時。對列和對象的插入刪除占大頭。數據字典是性能突破的瓶頸。