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

SQL Server 2008 資料倉庫擴展性新功能 (二):資源管理器與平行查詢優化

     編輯:關於SqlServer

續接第一部分,本文深入解析 資源管理器、分區表平行查詢、星狀聯結優化 等核心擴展性功能。

資源管理器:三大核心概念

概念說明
工作負載群組請求分類容器,共享同一組資源原則(CPU 上限、記憶體授予、並行度、查詢逾時)。
資源集區實體資源切片(CPU%、記憶體上下限)。集區可固定大小或共享剩餘資源。
分類器函數使用者定義的純量函數,依連線屬性(APP_NAME、LOGIN、TIME 等)回傳群組名稱,決定請求歸屬。

資源管理器架構:請求→分類→群組→集區

資源管理器三大目標

  1. 監控:DMV sys.dm_resource_governor_workload_groups 即時觀測每群組 CPU、讀寫、記憶體授予。
  2. 可預測性:集區硬性上限防止失控查詢擠佔核心工作負載資源。
  3. 優先級:群組重要性設定 (LOW/MEDIUM/HIGH) 決定 CPU 排程權重與記憶體授予優先序。

分區表平行查詢增強

  • SQL 2005 僅支援單執行緒掃描單一分割區;2008 引入 跨分割區平行掃描,查詢最佳化器可為多個分割區配置多執行緒,大幅縮短大表彙總時間。
  • 配合 分割區對齊索引,消除資料移動開銷。

星狀聯結查詢優化

  • 針對事實表 + 多維度表的星狀結構,最佳化器自動偵測並套用 星狀聯結邏輯:先篩選維度表、建立位圖濾波器、再探查事實表,避免龐大事實表全掃描。
  • 啟用條件:維度表有主鍵、事實表有外鍵索引、查詢含等值聯結與篩選條件。

GROUPING SETS:單一查詢產生多層彙總

SELECT
    Region, Product, SUM(Sales) AS TotalSales
FROM SalesFact
GROUP BY GROUPING SETS ((Region), (Product), (Region, Product), ())
-- 等同四組 GROUP BY 的 UNION ALL,但單次掃描、單一結果集
  • 支援 ROLLUP、CUBE 簡寫,報表彙總開發效率大增。

結語

資源管理器賦予工作負載級 SLA 保障,平行查詢與星狀聯結優化釋放多核效能,GROUPING SETS 簡化多維彙總開發,三者合力構建可線性擴展的企業級資料倉庫平台。

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