注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡數(shù)據(jù)庫PostgreSQL查詢引擎源碼技術探析

PostgreSQL查詢引擎源碼技術探析

PostgreSQL查詢引擎源碼技術探析

定 價:¥79.00

作 者: 李浩
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787121294815 出版時間: 2016-08-01 包裝:
開本: 16開 頁數(shù): 340 字數(shù):  

內(nèi)容簡介

  PostgreSQL作為當今最先進的開源關系型數(shù)據(jù)庫,本書揭示PostgreSQL查詢引擎運行原理和實現(xiàn)技術細節(jié),其中包括:基礎數(shù)據(jù)結(jié)構(gòu);SQL詞法語法分析及查詢語法樹;查詢分析及查詢重寫;子連接及子查詢處理;查詢訪問路徑創(chuàng)建;查詢計劃生成,等等。以深入淺出的方式討論每個主題并結(jié)合基礎數(shù)據(jù)結(jié)構(gòu)、圖表、源碼等對所討論的主題進行詳細分析,以使讀者對PostgreSQL查詢引擎的運行機制及實現(xiàn)細節(jié)能有全面且深入的認識。

作者簡介

  李浩,具有多年軟件開發(fā)經(jīng)驗,現(xiàn)任職于北大方正信息產(chǎn)業(yè)集團基礎軟件中心(上海)擔任數(shù)據(jù)庫架構(gòu)師,主要負責查詢引擎查詢優(yōu)化方面工作。曾參與方正智睿系列數(shù)據(jù)庫研發(fā),主要負責查詢引擎模塊的設計和開發(fā),并擁有數(shù)十項發(fā)明專利。主要研究興趣包括:查詢引擎、大規(guī)模并行處理系統(tǒng)(MPP)及SQL on Hadoop相關系統(tǒng)。

圖書目錄

第1章 PostgreSQL概述 1
1.1 概述 1
1.2 查詢語句優(yōu)化 3
1.2.1 工具類語句 4
1.2.2 查詢類語句的處理 5
1.3 創(chuàng)建查詢計劃 8
1.4 小結(jié) 8
第2章 基表數(shù)據(jù)結(jié)構(gòu) 10
2.1 概述 10
2.2 數(shù)據(jù)結(jié)構(gòu) 10
2.2.1 查詢樹Query 11
2.2.2 Select型查詢語句SelectStmt 13
2.2.3 目標列項TargetEntry 15
2.2.4 From…Where…語句FromExpr 16
2.2.5 范圍表項RangeTblEntry/RangeTblRef 16
2.2.6 Join表達式JoinExpr 18
2.2.7 From語句中的子查詢RangeSubSelect 19
2.2.8 子鏈接SubLink 20
2.2.9 子查詢計劃SubPlan 22
2.2 小結(jié) 23
2.3 思考 24
第3章 查詢分析 25
3.1 概述 25
3.2 問題描述 25
3.3 詞法分析和語法分析(Lex&Yacc) 28
3.3.1 概述 28
3.3.2 詞法分析器Lex 28
3.3.3 語法分析器Yacc 30
3.3.4 小結(jié) 36
3.3.5 思考 36
3.4 抽象查詢語法樹AST 37
3.5 查詢分析 39
3.5.1 概述 39
3.5.2 查詢分析―parse_analyze 40
3.5.3 查詢語句分析―transformStmt 42
3.6 查詢重寫 54
3.6.1 概述 54
3.6.2 查詢重寫――pg_rewrite_query 54
3.7 小結(jié) 55
3.8 思考 56
第4章 查詢邏輯優(yōu)化 57
4.1 概述 57
4.2 預處理 57
4.2.1 xxx_xxx_walker/mutator的前世今生 59
4.2.3 對xxx_xxx_walker/mutator的思考 60
4.3 查詢優(yōu)化中的數(shù)據(jù)結(jié)構(gòu) 61
4.3.1 數(shù)據(jù)結(jié)構(gòu) 62
4.3.2 小結(jié) 80
4.3.3 思考 81
4.4 查詢優(yōu)化分析 81
4.4.1 邏輯優(yōu)化――整體架構(gòu)介紹 82
4.4.2 子查詢優(yōu)化――subquery_planner 88
4.4.3 創(chuàng)建分組等語句查詢計劃―grouping_planner 142
4.4.4 創(chuàng)建查詢訪問路徑―query_planner 150
4.4.5 小結(jié) 195
4.4.6 思考 196
第5章 查詢物理優(yōu)化 198
5.1 概述 198
5.2 所有可行查詢訪問路徑構(gòu)成函數(shù)make_one_rel 200
5.2.1 設置基表的物理參數(shù) 202
5.2.2 基表大小估計―set_rel_size 203
5.2.3 尋找查詢訪問路徑――set_base_rel_pathlists 214
5.2.4 添加查詢訪問路徑―add_path 247
5.2.5 求解Join查詢路徑―make_rel_from_joinlist 255
5.2.6 構(gòu)建兩個基表之間連接關系―make_join_rel 267
5.2.7 構(gòu)建連接關系―build_join_rel 277
5.3 小結(jié) 291
5.4 思考 291
第6章 查詢計劃的生成 293
6.1 查詢計劃的產(chǎn)生 293
6.2 生成查詢計劃―create_plan/create_plan_recurse 293
6.2.1 構(gòu)建Scan類型查詢計劃――create_scan_plan 295
6.2.2 構(gòu)建Join類型查詢計劃――create_join_plan 300
6.3 查詢計劃的閱讀 305
6.4 小結(jié) 308
6.5 思考 308
第7章 其他函數(shù)與知識點 310
7.1 AND/OR規(guī)范化 310
7.2 常量表達式的處理―eval_const_expressions 314
7.3 Relids的相關函數(shù) 316
7.4 List的相關函數(shù) 319
7.5 元數(shù)據(jù)表Meta Table 320
7.6 查詢引擎相關參數(shù)配置 324
結(jié)束語 328

本目錄推薦

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