SQL Server體系結(jié)構(gòu) |
內(nèi)容一:典型數(shù)據(jù)庫的運(yùn)行原理 |
數(shù)據(jù)庫思維與程序開發(fā)思維的差異
SQL Server 整體架構(gòu)
內(nèi)存分配與管理
日志管理
事務(wù)管理
緩存與頁面切換
SQL查詢執(zhí)行原理
相關(guān)配置參數(shù)
? |
內(nèi)容二:IO管理 |
I/O基礎(chǔ)
什么是I/O子系統(tǒng)
理解SQL Server I/O模式
存儲(chǔ)類型
? |
內(nèi)容三:索引的原理與維護(hù) |
索引的定義
索引的結(jié)構(gòu)、填充因子
聚集索引和非聚集索引
唯一索引和包含列索引
過濾索引
索引視圖
索引碎片整理以及索引重建
刪除從未使用過的索引
創(chuàng)建更合適的索引
? |
數(shù)據(jù)庫設(shè)計(jì) |
內(nèi)容四:數(shù)據(jù)庫設(shè)計(jì)方法與原則 |
需求分析
模塊化設(shè)計(jì)
什么是三范式
對象命名規(guī)范
設(shè)計(jì)出數(shù)據(jù)庫、表、視圖和其他數(shù)據(jù)庫對象
數(shù)據(jù)的一致性原則
使用數(shù)據(jù)庫設(shè)計(jì)工具
設(shè)計(jì)之前考慮性能問題
? |
內(nèi)容五:如何設(shè)計(jì)優(yōu)秀的數(shù)據(jù)庫 |
數(shù)據(jù)類型的選擇
數(shù)據(jù)庫邏輯設(shè)計(jì)和物理設(shè)計(jì)的規(guī)范化
合理的冗余
主鍵的設(shè)計(jì)
外鍵的設(shè)計(jì)
字段的設(shè)計(jì)
數(shù)據(jù)庫物理存儲(chǔ)和環(huán)境的設(shè)計(jì)
系統(tǒng)設(shè)計(jì)
索引的設(shè)計(jì)
? |
SQL Server性能調(diào)優(yōu) |
內(nèi)容六:讀懂執(zhí)行計(jì)劃 |
執(zhí)行計(jì)劃的捕捉
讀懂執(zhí)行計(jì)劃
邏輯執(zhí)行計(jì)劃與物理執(zhí)行計(jì)劃
執(zhí)行計(jì)劃的分類
掃描和查找類操作
連接類操作
Spools類操作
? |
內(nèi)容七:SQL語句的改進(jìn) |
只返回需要的數(shù)據(jù)
盡量少做重復(fù)的工作
注意事務(wù)和鎖
注意臨時(shí)表和表變量的用法
子查詢的用法
慎用游標(biāo)
盡量使用索引
注意連接條件的寫法
其他需要注意的地方
? |
內(nèi)容八:系統(tǒng)調(diào)優(yōu) |
TempDB的角色以及調(diào)優(yōu)
定期轉(zhuǎn)移不需要的歷史數(shù)據(jù)
解決死鎖和阻塞
多表JOIN考慮臨時(shí)表
? |
內(nèi)容九:事務(wù)和鎖的基本概念 |
隔離等級(jí)的概念
高峰的并發(fā)訪問
大數(shù)據(jù)量的聯(lián)合查詢和統(tǒng)計(jì)
長事務(wù)處理
大數(shù)據(jù)容量的數(shù)據(jù)操作(查詢,更新,修改,刪除)性能
? |