首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

DB2 效能調優路線圖:Q-Replication 主動/主動 (A/A) 實作完整指南

     編輯:Java 綜合教學

DB2 效能調優路線圖:Q-Replication 主動/主動 (A/A) 實作完整指南

現今 IDC 大行其道,同城/異地雙活甚至多活概念日益普及。本文介紹 IBM Q-Replication 架構與實作,最後專章分析 Q Latency,關係 RPO/RTO 指標至關重要,系統運維人員必須掌握。

為何選擇 Active/Active?業務需求

技術選型權衡:

  • 恢復範圍:應用資料 vs DBMS vs 整個系統
  • 恢復時間目標 (RTO):數小時 vs 秒級
  • 恢復點目標 (RPO):零資料損失 vs 秒級資料損失
  • 站點距離:數十公里 vs 數百公里
  • 硬體利用率:備援 vs 主動
  • 應用影響:同步技術直接開銷 vs 非同步技術無影響
  • CPU 開銷:硬體複寫 (PPRC) 可忽略 vs 交易重播技術與負載成正比

雙節點 Q-Replication 情境

WebSphere MQ 所需物件

Q 物件架構

物件定義對照表:主機名、IP、DB2 版本、子系統、位置、資料庫埠、MQ 管理器、MQ 埠、重啟佇列、管理佇列、發送佇列、複寫結構描述等。

準備動作

  1. 綁定複寫程式
  2. APF 授權 Q 相關程式
  3. 啟用 Q 表資料捕獲:ALTER TABLE QTABLE DATA CAPTURE CHANGES;
  4. 配置 CDB 表:遠端 DB2 連接用 DRDA 協定,CDB 為 Q Apply 連接 Q Capture 的屬性配置。

NODE1/2 CDB 配置 SQL 範例請參考原文。

MQ 物件定義

DEFINE QLOCAL(MQ1.ADMINQ) DESC('ADMINQ OF MQ2 IN SITEA') PUT(ENABLED) GET(ENABLED) SHARE DEFSOPT(SHARED) MAXDEPTH(1000) DEFPSIST(YES)
DEFINE QLOCAL(MQ1.RESTARQ) DESC('RESTARTQ OF MQ2 IN SITEA') PUT(ENABLE) GET(ENABLE) SHARE DEFSOPT(SHARED) MAXDEPTH(1) INDEXTYPE(MSGID) DEFPSIS(YES)
DEFINE QLOCAL(MQ1.SENDFQ.Q1) REPLACE DESC('LOCAL SEND Q FOR FX Q') PUT(ENABLED) GET(ENABLED) SHARE DEFSOPT(SHARED) DEFPSIS(YES) MAXDEPTH(99999) INDEXTYPE(MSGID)
DEFINE QMODEL('IBMQREP.SPILL,QMODELQ') REPLACE DEFSOPT(SHARED) MAXDEPTH(99999999) MSGDLVSQ(FIFO) DEFTYPE(PERMDYN)
DEFINE CHANNEL('MQ1.TO.MQ2') REPLACE CHLTYPE(SDR) TRPTYPE(TCP) DISCINT(0) DESC('SENDER CHANNEL TO MQ2') XMITQ(XMQ1) CONNAME('10.2.1.1(9001)')

DEFPSIST YES 表示除非另有指示,佇列管理器記錄交易至佇列,故障或重啟可恢復訊息。

Q 控制表與參數表

同一節點所有控制表需相同結構描述。使用 ASNCLP 腳本配置 (支援互動/批次)。範例:建立控制表、Q Map、Q Subscription。

Q 維護作業

通道動作

START CHANNEL(MQ1A.TO.MQ1B)
DISPLAY CHSTATUS(MQ1BA.TO.MQ1B)
START CHANNEL(MQ1B.TO.MQ1A)
DISPLAY CHSTATUS(MQ1B.TO.MQ1A)

MQ 佇列動作

CLEAR QLOCAL(MQ2.SENDQ.Q1)
DISPLAY QLOCAL(MQ2.SENDQ.Q1) CURDEPTH

延遲分析

延遲總覽

控制表:IBMQREP_CAPMON、IBMQREP_CAPQMON、IBMQREP_APPLYMON。端到端延遲 = T5 - T1 (目標端與源端 commit 時間差)。影響因素 10 項分佈圖請參考原文。

捕獲延遲分析

關鍵指標:LOGREAD_API_TIME、NUM_END_OF_LOGS、LOGRDR_SLEEPTIME、MQPUT_TIME、MQCMIT_TIME、XMITQDEPTH、TRAN_BATCH_SIZE 計算方式。

Q Apply 延遲

關鍵指標:WORKQ_WAIT_TIME、RETRY_TIME (RI/UI/Timeout/Deadlock)、DBMS_TIME。

Q-Replication 恢復

STARTLRSN:安全開始讀取 DB2 日誌的 LSN 值。
commit lsn:安全跳過已發布交易的 LSN 值。

本文內容整理自網路,僅供參考學習,如涉版權請自行刪除。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved