內容介紹
內容提要本書主要介紹SybaseSQLServer的數據存儲技術、索引技術、查詢技
術、加鎖技術;並深入分析資料庫設計以及SQL語句套用對SQLServer性
能的影響。本書從Sybase系統的內部技術角度,詳細闡述數據存儲、索引、
查詢、加鎖、CPU資源等性能最佳化技術,以提高Sybase資料庫套用系統的性
能。本書內容新穎,技術實用先進,闡述深刻通俗,理論聯繫實際。適用於從
事資料庫套用、信息管理、計算機軟體等專業的軟體開發人員、高等院校師
生、科研工作者等使用與參考。
作者介紹
作者介紹凱倫?保爾塞爾是Sybase公司Server出版小組的專職技術寫作人員。她獲得鈕約大學交
互遠程通信碩士學位,舊金山州立大學廣播通信藝術學士學位。
她上班離家僅有七分鐘的路程,有一隻狗,三隻貓,二十條金魚,還有一個長400株花苗的
花園。當然,她緊密跟蹤Sybase資料庫。
作品目錄
目錄第1章 性能分析
1.1何謂“好性能”
1.2什麼是最佳化
1.3何時停止最佳化
1.4性能分析的步驟
第2章 資料庫設計和非範式化
2.1資料庫設計與其性能的關係
2.2規範化
2.3利用非規範化提高性能
2.4下一步:理解數據存儲和索引技術
第3章 數據存儲技術
3.1性能和對象存儲
3.2查詢處理和讀頁操作
3.3SQLServer的數據頁
3 4其他頁類型
3.5Sysindexes表和數據存取
3.6數據堆:無聚簇索引的表
3.7SQLServer對堆的I/O操作
3.8caches與對象的捆綁
3.9堆的正負作用
3.10維護堆
3.11事務日誌:特殊的堆表
3.12從堆到索引
第4章 索引技術基本原理
4.1性能和索引
4.2索引的類型
4.3聚簇索引
4.4非聚簇索引
4.5索引覆蓋
4.6索引和高速快取
4.7索引與資料庫對象的大小
第5章 表和索引大小的估算方法
5.1資料庫目標大小測試工具
5.2利用sp_spaceused顯示對象大小
5.3利用dbcc顯示對象大小
5 4利用sp―estspace估量對象大小
5.5利用公式估量對象大小
5.6有關說明
第6章 索引技術對性能的影響
6.1索引對性能的影響
6.2差索引的表現
6.3索引的限制和要求
6 4查詢分析和最佳化工具
6.5索引和I/O統計
6 6對I/O的估測
6.7索引和排序
6.8選擇索引
6.9選擇索引的技巧
6.10索引統計
6.11最佳化器怎樣使用統計信息
6.12索引維護
6.13索引技巧
6.14索引技巧
6.15為索引選擇填充因子
6.16準備面對最佳化器
第7章 SQLServer的查詢最佳化器
7.1何謂查詢最佳化
7.2SQLServer基於代價的最佳化器
7.3最佳化問題和問題的根源
7 4查詢最佳化的診斷工具
7.5最佳化器的策略
7 6搜尋參數和索引的使用
7.7Join的最佳化
7.8對or子句以及(Value―list)的最佳化
7.9最佳化合計
7.10子查詢的最佳化
7.11更新操作
7.12從觀察到診斷並治療
第8章 理解查詢策略
8.1查詢最佳化的診斷工具
8.2Showplan的作用
8.3基本的showplan訊息
8 4查詢子句的Showplan訊息
8.5描述訪問方法和高速快取的Showplan訊息
8.6子查詢的showplan訊息
8.7對標準的進一步改善
第9章 高級最佳化技術
9.1什麼是高級最佳化技術
9.2最佳化器的可選項
9.3指定連線表的順序
9 4增加最佳化器所考慮的表的數目
9.5指定查詢的索引
9.6指定查詢的I/O大小
9.7指定快取策略
9.8控制資料庫對象的預取和高速快取策略
9.9用dbcctraceon302進行最佳化
9.10從分析到技藝
第10章 Transact―SQL套用
10.1概述
10.2“大於”查詢
10.3notexist測試
10 4where子句內的變數和參數
10.5count與exists
10.6or子句與連線中的Unions
10.7聚集函式
10.8連線與數據類型
10.9參數和數據類型
10.10從查詢執行到可靠性
第11章SQLServer的加鎖技術
11.1介紹
11.2加鎖技術
11.3SQLServer中鎖的類型
11 4隔離級別對加鎖的影響
11.5隔離級別的控制
11.6鎖定與隔離級別舉例
11.7游標與鎖定
11.8SQLServer中的死鎖和並發性
11.9鎖定與SQLServer的性能
11.10鎖及其鎖定行為的報告
11.11鎖與鎖升級界限的配置
11.12行接行的處理使用游標
第12章 游標與性能
12.1游標如何影響性能
12.2各階段的資源需求
12.3游標的模式:唯讀和更新
12 4游標對索引的使用和要求
12.5使用和不使用游標的性能比較
12.6隻讀游標的鎖定
12.7更新游標的鎖定
12.8隔離級和游標
12.9游標的最佳化提示
12.10與硬體有關的調整
第13章 物理數據的存放控制
13.1對象的存放如何能提高性能
13.2術語和概念
13.3改善I/O性能指南
13 4在段上建立對象
13.5使用表分區提高插入性能
13.6分區表和未分區表
13.7表分區配置參數
13.8使用tempdb
第14章 tempdb性能
14.1什麼是tempdb
14.2tempdb如何能影響性能
14.3臨時表的類型和使用
14 4tmpdb的初始分配
14.5計算tempdb大小
14.6存放tempdb
14.7從tempdb段中卸下主設備
14.8把tempdb與其自己的高速快取綁定
14.9臨時表及其鎖定
14.10少tempdb中的日誌操作
14.11最佳化臨時表
14.12記憶體配置的使用
第15章 記憶體使用及其對性能的影響
15.1記憶體如何影響性能
15.2記憶體基本概念
15.3需配置多少記憶體
15.4SQLServer上的高速快取
15.5過程高速快取
15.6數據高速快取
15.7命名數據高速快取
15.8確定命名高速快取的大小
15.9配置不當和捆綁對象的開銷
15.10為大數據量I/O維護數據高速快取性能
15.11恢復速度
15.12審計與性能
15.13系統間互連:分析網路
第16章 網路和性能
16.1SQLServer如何使用網路
16.2為什麼要研究網路
16.3關於網路及其性能的基本問題
16.4改變網路包大小
16.5減少網路傳輸的方法
16.6其他伺服器操作的影響
16.7提高網路性能指南
16.8從網路到多CPU:分析處理效率
第17章 有效使用CPU資源
17.1CPU資源與性能
17.2SQLServer的任務管理
17.3測定CPU的使用率
17.4跨“引擎”的網路I/O分布
17.5允許引擎到CPU的親和
17.6內部管理任務如何提高CPU利用率
17.7多處理器應用程式設計指南
17.8現實世界環境:維護操作及其對性能的影響
第18章 維護工作及其對性能的影響
18.1影響性能的維護工作
18.2創建和修改資料庫
18.3創建索引
18.4備份與恢復
18.5批拷貝
18.6資料庫一致性檢查
18.7定期監視維護工作
第19章 用spsysmon監視SQLServer性能
19.1簡介
19.2激活sp一sysmon
19.3用sp-sysmon觀察性能信息
19.4樣本間隔與時間報告
19.5核心利用
19.6任務管理
19.7事務概貌
19.8事務管理
19.9索引管理
19.10加鎖管理
19.11數據高速快取管理
19.12過程高速快取管理
19.13記憶體管理
19.14恢復管理
19.15磁碟I/O管理
19.16網路I/O管理
19.17術語表