首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

DB2 聚集目標表深度解析:基本聚集 vs 更改聚集,CD 表關鍵角色

     編輯:DB2 教學

什麼是聚集目標表?

  • **唯讀表**,以 SQL 欄位函數(SUM、AVG 等)統計來源表全量或追蹤變更。
  • 資料**實際儲存於 DB2**,非 View 虛擬表,歷史快照不隨來源表變更而改寫。
  • 類似 View 的彙總功能,但保留**時間序列穩定性**。

前置知識:CD 表(Change Data Table)

  • 每個註冊「變更擷取」的來源表對應一張 CD 表。
  • 記錄來源表的 INSERT/UPDATE/DELETE 異動明細(含前後像)。
  • 應用程式讀取 CD 表已提交列,複寫至目標表。

兩類聚集目標表差異對照

維度基本聚集表更改聚集表
統計來源來源基礎表CD 表(變更資料表)
反映內容特定時間點的彙總值(如月有效客戶數)期間內的增減變化(如月新增/流失客戶數)
典型用途趨勢分析、KPI 儀表板流失率監控、行銷成效評估
結構層級兩層:來源表 → 聚集表三層:來源表 → CD 表 → 聚集表
缺陷無法區分「增減抵銷」情況(如 +5/-5 仍顯示不變)依賴 CD 表完整性,額外儲存/維護成本

實務案例:客戶主檔

  • 基本聚集:每月統計 `AVG(有效客戶數)` → 繪製成長曲線。
  • 更改聚集:讀取 CD 表,統計 `SUM(CASE WHEN OP='I' THEN 1 END) AS 新增`、`SUM(CASE WHEN OP='D' THEN 1 END) AS 流失` → 計算淨增率、流失率。
  • 企業決策常**同時需要**兩者:基本聚集看大勢,更改聚集找問題。

架構視角總結

基本聚集 = **靜態快照**;更改聚集 = **動態差分**。CD 表充當「過濾器」,只讓異動流向更改聚集。兩者互補,非互斥。

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