讓Oracle跑得更快2:基於海量數據的資料庫設計與最佳化

讓Oracle跑得更快2:基於海量數據的資料庫設計與最佳化

《讓Oracle跑得更快2:基於海量數據的資料庫設計與最佳化》是2011年出版的書籍,作者是譚懷遠。

基本信息

出版信息

讓Oracle跑得更快2:基於海量數據的資料庫設計與最佳化讓Oracle跑得更快2:基於海量數據的資料庫設計與最佳化
叢書名 :ITPUB技術叢書

作 者:譚懷遠

出版時間:2011-07

千 字 數:721

版 次:01-01

頁 數:452

開 本:16(185*235)

I S B N :9787121139215

內容簡介

資料庫設計,是最近幾年才出現的技術領域,再早的時候,資料庫是以一個黑盒的方式,附屬到某個系統當中的,開發人員對它的關注非常少。 近年來,由於很多系統數據量呈幾何級數激增,各種性能問題日益凸顯出來,而這種性能問題絕大多數都落在了數據的載體——資料庫身上,因此,人們越來越關注資料庫的性能。而一個資料庫性能的好壞,通常是在系統設計階段就決定了的,於是,將資料庫從系統設計中拿出來單獨進行設計,變得越來越主流了。 這是一本以討論海量數據環境下Oracle資料庫設計與最佳化的書籍,也是作者10年來從事Oracle資料庫工作的心得體會,是作者工作經驗的結晶,這樣的書籍並不多見。 本書通篇圍繞著在海量數據環境下,如何構造一個高效的Oracle資料庫這一核心,將許多相關技術融匯到這個核心話題當中,這些技術包括:分區、索引、資料庫對象屬性、並行技術、唯讀表空間、初始化參數、幾種常見的資料庫架構,以及在特定資料庫架構下資料庫的備份和恢復等相關技術。

目 錄

開篇的話 1

第一篇 分 區

第1章 分區的淵源 8

1.1 DELETE與系統資源 9

1.2 DELETE與釋放空間 17

第2章 分區在海量資料庫中的套用 22

2.1 分區的種類 23

2.1.1 範圍分區 23

2.1.3 列表分區 51

2.1.4 組合分區 53

2.2 三種分區的比較 56

2.2.1 範圍分區的適用情況 57

2.2.2 哈希分區的效率 57

2.2.3 列表分區與範圍分區各自的優勢 65

2.3 小結 72

第二篇 索 引

第3章 B樹索引 74

3.1 B樹索引概述 75

3.2 B數索引的效率 76

3.2.1 主鍵或者唯一性約束 76

3.2.2 鍵值重複率低的欄位比較適合使用B樹索引 88

第4章點陣圖索引97

4.1 點陣圖索引概述 98

4.2 什麼時候使用點陣圖索引 110

第5章 全文索引 123

5.1 全文索引概述 123

5.1.1 全文索引和普通索引的對比 124

5.1.2 全文索引的對象 128

5.1.3 全文索引在海量資料庫中的套用 138

5.2 全文索引的空間 154

5.3 全文索引和DML操作 161

5.3.1 INSERT操作 161

5.3.2 DELETE操作 165

5.3.3 UPDATE操作 167

5.4 CTX_REPORT工具包 171

5.4.1 CTX_REPORT.DESCRIBE_INDEX 175

5.4.2 DESCRIBE_POLICY函式 178

5.4.3 CREATE_INDEX_SCRIPT函式 179

5.4.4 CREATE_POLICY_SCRIPT函式 181

5.4.5 INDEX_SIZE函式 182

5.4.6 INDEX_STATS存儲過程 185

5.4.7 QUERY_LOG_SUMMARY存儲過程 187

5.5 小結 194

第三篇 對 象 屬 性

第6章 對象屬性概述 196

6.1 Oracle資料庫中的對象屬性 196

6.2 對象屬性和系統的關係 201

第7章並行度204

7.1 對象屬性上的並行 205

7.2 使用Hint方式並行執行 209

7.3索引上的並行度 212

第8章 數據壓縮 218

8.1 數據壓縮技術的套用 219

8.2 分區索引的壓縮 223

8.3 數據壓縮的優越性 226

8.3.1 節省空間 226

8.3.2 性能的提高 233

8.4 DML操作和數據壓縮 241

第9章 唯讀表空間 248

9.1 唯讀表空間與數據備份和恢復的關係 249

9.2 唯讀表空間對於資料庫的啟動和關閉的影響 253

9.3 唯讀表空間可以防止數據被意外刪除和修改 258

9.4 唯讀表空間使表空間的管理更加方便 262

第10章 資料庫對象的分析 268

10.1 CBO和rBO269

10.2 分析和動態採樣 274

10.3 對象分析的頻度 278

10.3.1 數據入庫後不再改變 278

10.3.2 數據存在表中且經常改變 295

第四篇 海量數據的資料庫架構設計

第11章 RAC架構 310

11.1 RAC在海量資料庫中的套用 318

11.2 RAC架構之業務分割 320

11.3 RAC架構之負載均衡 333

11.3.1 客戶端的負載均衡 333

11.3.2 伺服器端的負載均衡 339

11.4 RAC架構之failover341

第12章 分散式資料庫 344

12.1 分散式資料庫的優越性 344

12.2 分散式資料庫的數據處理 346

12.3 分散式資料庫的字元集 348

第13章 Data Guard 350

13.1 Data Guard概述 351

13.2 Data Guard的保護模式 354

13.2.1 最高數據保護模式 354

13.2.2 最高性能模式 354

13.2.3 最高可用性模式 355

13.3 Data Guard和RAC 356

13.4 Data Guard中Standby資料庫的類型 357

13.4.1 物理Standby資料庫 357

13.4.2 邏輯Standby資料庫 358

第14章 存儲架構的設計(ASM+SAN) 360

14.1 ASM 361

14.1.1 方便存儲管理 362

14.1.2 ASM的一個管理工具—asmcmd 370

14.1.3 存儲的高可用性 373

14.1.4 提升存儲性能 376

14.2 SAN 377

第15章 海量數據的備份和恢復 380

15.1 傳統的數據備份方案 380

15.1.1 通過數據導出方式備份數據 381

15.1.2 資料庫冷備份381

15.1.3資料庫熱備份382

15.2 海量數據的資料庫備份和恢複方案 383

15.2.1 使用分散式資料庫 383

15.2.2 以傳遞表空間的方式對表空間進行備份和恢復 384

15.2.3 對載入數據進行備份 395

第五篇 初始化參數

第16章 記憶體相關的參數 400

16.1 SGA_TARGET 400

16.2 PGA_AGGREGATE_TARGET 406

第17章 I/O相關的參數 409

17.1 DB_FILE_MULTIBLOCK_READ_COUNT 410

17.2 和資料庫I/O及數據檔案相關的其他4個參數 415

17.2.1 DB_WRITER_PROCESSES 415

17.2.2 DISK_ASYNCH_IO 416

17.2.3 DBWR_IO_SLAVES 417

17.2.4 DB_FILES 417

第18章 最佳化器相關的參數 418

18.1 CURSOR_SHARING 418

18.2 OPTIMIZER_DYNAMIC_SAMPLING 422

18.3 OPTIMIZER_MODE 425

18.3.1 ALL_ROWS 425

18.3.2 FIRST_ROWS_n 425

18.3.3 FIRST_ROWS 426

第19章 其他的參數 428

19.1 並行相關的參數 428

19.1.1 在對象的屬性中設定並行 429

19.1.2 Hint中使用並行 429

19.2 分散式資料庫相關的參數 432

附錄A Oracle字元集 434

附錄B SHOW_SPACE存儲過程 443

附錄C 一個典型的OLAP系統資料庫的設計方案 447

C.1 架構 448

C.2 對象設計 449

C.3 初始化參數 460

相關詞條

相關搜尋

熱門詞條

聯絡我們