伺服器整合趨勢下,單一 DB2 實例須同時服務 OLTP、報表、ETL、臨時查詢等異質負載。缺乏管制時,長跑查詢佔滿 CPU/I/O,導致核心交易逾時。DB2 Workload Manager (WLM) 提供「識別→分類→控制→監控」閉環,確保業務優先權在資源爭用時得到落實。
安裝 DB2 9.5 即建立 SYSDEFAULTUSERCLASS (超類) 及其預設子類。建議自建一超類 (如 POWER) 含三子類:
| 子類 | 優先權 | AGENT PRIORITY | PREFETCH PRIORITY | 典型負載 |
|---|---|---|---|---|
| HIGH_PRIO | High | -20 (最高) | HIGH | VIP 查詢、核心交易 |
| MED_PRIO | Medium | 0 (預設) | MEDIUM | 一般報表、OLTP |
| LOW_PRIO (Default) | Low | 20 (最低) | LOW | 大量 ETL、臨時分析 |

SYSDEFAULTSYSTEMCLASS)。AGENT PRIORITY -20 PREFETCH PRIORITY HIGH 確保系統作業優先。每個可能來源 (應用、用戶、部門、中介軟體) 建一 CREATE WORKLOAD,零效能負擔,利於未來擴充。關鍵連線屬性:
WLM_SET_CLIENT_INFO 注入)查詢現有連線屬性分布:
SELECT COUNT(*), SUBSTR(APPLICATION_NAME,1,10), SUBSTR(SYSTEM_AUTH_ID,1,10),
SUBSTR(CLIENT_USERID,1,10), SUBSTR(CLIENT_APPLNAME,1,10), ...
FROM TABLE(WLM_GET_SERVICE_CLASS_WORKLOAD_OCCURRENCES('', '', -2))
GROUP BY ...;
同一 Workload 內混合長短查詢時,用 WORK CLASS SET + WORK ACTION SET 依成本估計 (TIMERONCOST) 導向不同子類:
CREATE WORK CLASS SET control_cost (
WORK CLASS long WORK TYPE READ FOR TIMERONCOST FROM 2000001 TO UNBOUNDED,
WORK CLASS medium WORK TYPE READ FOR TIMERONCOST FROM 20001 TO 2000000,
WORK CLASS short WORK TYPE READ FOR TIMERONCOST FROM 0 TO 20000
);
CREATE WORK ACTION SET query_cost FOR SERVICE CLASS POWER
USING WORK CLASS SET control_cost (
WORK ACTION map_long ON WORK CLASS long MAP ACTIVITY TO LOW_PRIO,
WORK ACTION map_short ON WORK CLASS short MAP ACTIVITY TO HIGH_PRIO
);
亦可用於並發控制 (類 Query Patroller);並發閾值違背時 CONTINUE 只排隊不中止。
DB2 服務類透過 OUTBOUND CORRELATOR 映射至 AIX WLM 類/子類,DB2 內部 Agent Priority 失效,改由 AIX WLM 排程器依 Shares 或 Hard Max 分配 CPU:
ALTER SERVICE CLASS POWER OUTBOUND CORRELATOR 'Power';
ALTER SERVICE CLASS HIGH_PRIO UNDER POWER AGENT PRIORITY DEFAULT OUTBOUND CORRELATOR 'Power.HighPrio';
ALTER SERVICE CLASS LOW_PRIO UNDER POWER AGENT PRIORITY DEFAULT OUTBOUND CORRELATOR 'Power.LowPrio';
AIX 端建立對應類與規則檔 (application tag 對應 Correlator),wlmcntrl -d db2workload 啟用。兩種 CPU 管制策略:
chclass -c shares=90 db2Power.HighPrio; shares=10 db2Power.LowPrio,高負載時自動爭奪。chclass -c hardmax=10 db2Power.LowPrio,無論系統閒忙皆限制低優先權上限,保證高優先權響應。推薦 Hard Max。DPF 環境下,每台物理機需獨立配置同樣 AIX WLM,不像 DB2 WLM 可廣播。

WLM_GET_SERVICE_CLASS_WORKLOAD_OCCURRENCES 請求計數與行為統計。db2look -d PROD -wlm -o wlm.def.out 匯出完整定義備份/遷移。