注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫SQL優(yōu)化核心思想

SQL優(yōu)化核心思想

SQL優(yōu)化核心思想

定 價:¥79.00

作 者: 羅炳森,黃超,鐘僥 著
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: SQL 計(jì)算機(jī)/網(wǎng)絡(luò) 數(shù)據(jù)庫

ISBN: 9787115478498 出版時間: 2018-04-01 包裝: 平裝
開本: 16開 頁數(shù): 307 字?jǐn)?shù):  

內(nèi)容簡介

  結(jié)構(gòu)化查詢語言(Structured Query Language,SQL)是一種功能強(qiáng)大的數(shù)據(jù)庫語言。它基于關(guān)系代數(shù)運(yùn)算,功能豐富、語言簡潔、使用方便靈活,已成為關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言。本書旨在引導(dǎo)讀者掌握SQL優(yōu)化技能,以更好地提升數(shù)據(jù)庫性能。本書共分10章,從SQL基礎(chǔ)知識、統(tǒng)計(jì)信息、執(zhí)行計(jì)劃、訪問路徑、表連接方式、成本計(jì)算、查詢變換、調(diào)優(yōu)技巧、經(jīng)典案例、全自動SQL審核等角度介紹了有關(guān)SQL優(yōu)化的方方面面。本書基于Oracle進(jìn)行編寫,內(nèi)容講解由淺入深,適合各個層次的讀者學(xué)習(xí)。本書面向一線工程師、運(yùn)維工程師、數(shù)據(jù)庫管理員以及系統(tǒng)設(shè)計(jì)與開發(fā)人員,無論是初學(xué)者還是有一定基礎(chǔ)的讀者,都將從中獲益。

作者簡介

  羅炳森網(wǎng)名“落落”,2010年畢業(yè)于西南大學(xué)軟件工程專業(yè),2015年與他人聯(lián)合出版了《Oracle查詢優(yōu)化改寫技巧與案例》一書。先后在惠普、用友等大型公司擔(dān)任DBA、性能優(yōu)化工程師等崗位,長期致力于SQL優(yōu)化技術(shù)的研究和培訓(xùn),現(xiàn)階段開始涉及大數(shù)據(jù)、深度學(xué)習(xí)和人工智能等領(lǐng)域。黃超網(wǎng)名“道道”,2007年畢業(yè)于華中科技大學(xué)數(shù)學(xué)系,擅長SQL、PLSQL優(yōu)化技術(shù),擁有8年多的數(shù)據(jù)倉庫架構(gòu)管理經(jīng)驗(yàn),曾參與過大量移動通信、銀行、保險(xiǎn)等行業(yè)的系統(tǒng)優(yōu)化升級工作。鐘僥網(wǎng)名“七年” ,2009年畢業(yè)于武漢理工大學(xué)軟件工程專業(yè),擁有8年的數(shù)據(jù)庫開發(fā)運(yùn)維經(jīng)驗(yàn), 期間主要負(fù)責(zé)Oracle、MySQL的管理和優(yōu)化工作,熟悉數(shù)據(jù)倉庫體系以及大數(shù)據(jù)等領(lǐng)域。

圖書目錄

第 1章 SQL優(yōu)化必懂概念 1
1.1 基數(shù)(CARDINALITY) 1
1.2 選擇性(SELECTIVITY) 3
1.3 直方圖(HISTOGRAM) 7
1.4 回表(TABLE ACCESS BY INDEXROWID) 13
1.5 集群因子(CLUSTERING FACTOR) 15
1.6 表與表之間關(guān)系 19
第 2章 統(tǒng)計(jì)信息 21
2.1 什么是統(tǒng)計(jì)信息 21
2.2 統(tǒng)計(jì)信息重要參數(shù)設(shè)置 24
2.3 檢查統(tǒng)計(jì)信息是否過期 32
2.4 擴(kuò)展統(tǒng)計(jì)信息 37
2.5 動態(tài)采樣 42
2.6 定制統(tǒng)計(jì)信息收集策略 47
第3章 執(zhí)行計(jì)劃 49
3.1 獲取執(zhí)行計(jì)劃常用方法 49
3.1.1 使用AUTOTRACE查看執(zhí)行計(jì)劃 49
3.1.2 使用EXPLAIN PLAN FOR查看執(zhí)行計(jì)劃 52
3.1.3 查看帶有A-TIME的執(zhí)行計(jì)劃 54
3.1.4 查看正在執(zhí)行的SQL的執(zhí)行計(jì)劃 56
3.2 定制執(zhí)行計(jì)劃 57
3.3 怎么通過查看執(zhí)行計(jì)劃建立索引 59
3.4 運(yùn)用光標(biāo)移動大法閱讀執(zhí)行計(jì)劃 63
第4章 訪問路徑(ACCESS PATH) 67
4.1 常見訪問路徑 67
4.1.1 TABLE ACCESS FULL 67
4.1.2 TABLE ACCESS BY USER ROWID 71
4.1.3 TABLE ACCESS BY ROWID RANGE 71
4.1.4 TABLE ACCESS BY INDEX ROWID 72
4.1.5 INDEX UNIQUE SCAN 72
4.1.6 INDEX RANGE SCAN 73
4.1.7 INDEX SKIP SCAN 74
4.1.8 INDEX FULL SCAN 75
4.1.9 INDEX FAST FULL SCAN 77
4.1.10 INDEX FULL SCAN (MIN/MAX) 80
4.1.11 MAT_VIEW REWRITE ACCESS FULL 83
4.2 單塊讀與多塊讀 83
4.3 為什么有時候索引掃描比全表掃描更慢 84
4.4 DML對于索引維護(hù)的影響 84
第5章 表連接方式 86
5.1 嵌套循環(huán)(NESTED LOOPS) 86
5.2 HASH連接(HASH JOIN) 90
5.3 排序合并連接(SORT MERGE JOIN) 93
5.4 笛卡兒連接(CARTESIAN JOIN) 95
5.5 標(biāo)量子查詢(SCALAR SUBQUERY) 98
5.6 半連接(SEMI JOIN) 100
5.6.1 半連接等價改寫 100
5.6.2 控制半連接執(zhí)行計(jì)劃 101
5.6.3 讀者思考 103
5.7 反連接(ANTI JOIN) 104
5.7.1 反連接等價改寫 104
5.7.2 控制反連接執(zhí)行計(jì)劃 105
5.7.3 讀者思考 108
5.8 FILTER 108
5.9 IN與EXISTS誰快誰慢 111
5.10 SQL語句的本質(zhì) 111
第6章 成本計(jì)算 112
6.1 優(yōu)化SQL需要看COST嗎 112
6.2 全表掃描成本計(jì)算 112
6.3 索引范圍掃描成本計(jì)算 116
6.4 SQL優(yōu)化核心思想 119
第7章 必須掌握的查詢變換 120
7.1 子查詢非嵌套 120
7.2 視圖合并 125
7.3 謂詞推入 129
第8章 調(diào)優(yōu)技巧 133
8.1 查看真實(shí)的基數(shù)(Rows) 133
8.2 使用UNION代替OR 134
8.3 分頁語句優(yōu)化思路 135
8.3.1 單表分頁優(yōu)化思路 135
8.3.2 多表關(guān)聯(lián)分頁優(yōu)化思路 150
8.4 使用分析函數(shù)優(yōu)化自連接 153
8.5 超大表與超小表關(guān)聯(lián)優(yōu)化方法 154
8.6 超大表與超大表關(guān)聯(lián)優(yōu)化方法 155
8.7 LIKE語句優(yōu)化方法 159
8.8 DBLINK優(yōu)化 161
8.9 對表進(jìn)行ROWID切片 167
8.10 SQL三段分拆法 169
第9章 SQL優(yōu)化案例賞析 170
9.1 組合索引優(yōu)化案例 170
9.2 直方圖優(yōu)化案例 173
9.3 NL被驅(qū)動表不能走INDEX SKIP SCAN 177
9.4 優(yōu)化SQL需要注意表與表之間關(guān)系 178
9.5 INDEX FAST FULL SCAN優(yōu)化案例 179
9.6 分頁語句優(yōu)化案例 181
9.7 ORDER BY取別名列優(yōu)化案例 183
9.8 半連接反向驅(qū)動主表案例一 185
9.9 半連接反向驅(qū)動主表案例二 187
9.10 連接列數(shù)據(jù)分布不均衡導(dǎo)致性能問題 192
9.11 Filter優(yōu)化經(jīng)典案例 198
9.12 樹形查詢優(yōu)化案例 202
9.13 本地索引優(yōu)化案例 204
9.14 標(biāo)量子查詢優(yōu)化案例 206
9.14.1 案例一 206
9.14.2 案例二 207
9.15 關(guān)聯(lián)更新優(yōu)化案例 211
9.16 外連接有OR關(guān)聯(lián)條件只能走NL 213
9.17 把你腦袋當(dāng)CBO 217
9.18 擴(kuò)展統(tǒng)計(jì)信息優(yōu)化案例 221
9.19 使用LISGAGG分析函數(shù)優(yōu)化WMSYS.WM_CONCAT 227
9.20 INSTR非等值關(guān)聯(lián)優(yōu)化案例 230
9.21 REGEXP_LIKE非等值關(guān)聯(lián)優(yōu)化案例 233
9.22 ROW LEVEL SECURITY優(yōu)化案例 237
9.23 子查詢非嵌套優(yōu)化案例一 240
9.24 子查詢非嵌套優(yōu)化案例二 247
9.25 爛用外連接導(dǎo)致無法謂詞推入 252
9.26 謂詞推入優(yōu)化案例 262
9.27 使用CARDINALITY優(yōu)化SQL 268
9.28 利用等待事件優(yōu)化SQL 272
第 10章 全自動SQL審核 281
10.1 抓出外鍵沒創(chuàng)建索引的表 281
10.2 抓出需要收集直方圖的列 282
10.3 抓出必須創(chuàng)建索引的列 283
10.4 抓出SELECT * 的SQL 284
10.5 抓出有標(biāo)量子查詢的SQL 285
10.6 抓出帶有自定義函數(shù)的SQL 286
10.7 抓出表被多次反復(fù)調(diào)用SQL 287
10.8 抓出走了FILTER的SQL 288
10.9 抓出返回行數(shù)較多的嵌套循環(huán)SQL 290
10.10 抓出NL被驅(qū)動表走了全表掃描的SQL 292
10.11 抓出走了TABLE ACCESS FULL的SQL 293
10.12 抓出走了INDEX FULL SCAN的SQL 294
10.13 抓出走了INDEX SKIP SCAN的SQL 295
10.14 抓出索引被哪些SQL引用 297
10.15 抓出走了笛卡兒積的SQL 298
10.16 抓出走了錯誤的排序合并連接的SQL 299
10.17 抓出LOOP套LOOP的PSQL 301
10.18 抓出走了低選擇性索引的SQL 302
10.19 抓出可以創(chuàng)建組合索引的SQL(回表再過濾選擇性高的列) 304
10.20 抓出可以創(chuàng)建組合索引的SQL(回表只訪問少數(shù)字段) 306

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號