当前位置:首页 > 工业技术
PostgreSQL查询引擎源码技术探析
PostgreSQL查询引擎源码技术探析

PostgreSQL查询引擎源码技术探析PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:李浩编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2016
  • ISBN:9787121294815
  • 页数:329 页
图书介绍:PostgreSQL作为当今最先进的开源关系型数据库,本书揭示PostgreSQL查询引擎运行原理和实现技术细节,其中包括:基础数据结构;SQL词法语法分析及查询语法树;查询分析及查询重写;子连接及子查询处理;查询访问路径创建;查询计划生成,等等。以深入浅出的方式讨论每个主题并结合基础数据结构、图表、源码等对所讨论的主题进行详细分析,以使读者对PostgreSQL查询引擎的运行机制及实现细节能有全面且深入的认识。
《PostgreSQL查询引擎源码技术探析》目录

第1章 PostgreSQL概述 1

1.1 概述 1

1.2 查询语句优化 3

1.2.1 工具类语句 4

1.2.2 查询类语句的处理 5

1.3 创建查询计划 8

1.4 小结 8

第2章 基表数据结构 10

2.1 概述 10

2.2 数据结构 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/RangeTb1Ref 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 小结 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 小结 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 小结 55

3.8 思考 56

第4章 查询逻辑优化 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 查询优化中的数据结构 61

4.3.1 数据结构 62

4.3.2 小结 80

4.3.3 思考 81

4.4 查询优化分析 81

4.4.1 逻辑优化——整体架构介绍 82

4.4.2 子查询优化——subquery_planner 88

4.4.3 创建分组等语句查询计划grouping_planner 142

4.4.4 创建查询访问路径——query_planner 150

4.4.5 小结 195

4.4.6 思考 196

第5章 查询物理优化 198

5.1 概述 198

5.2 所有可行查询访问路径构成函数make_one_rel 200

5.2.1 设置基表的物理参数 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 构建两个基表之间连接关系——make_join_rel 267

5.2.7 构建连接关系——build_join_rel 277

5.3 小结 291

5.4 思考 291

第6章 查询计划的生成 293

6.1 查询计划的产生 293

6.2 生成查询计划create_plan/create_plan_recurse 293

6.2.1 构建Scan类型查询计划——create_scan_plan 295

6.2.2 构建Join类型查询计划——create_join_plan 300

6.3 查询计划的阅读 305

6.4 小结 308

6.5 思考 308

第7章 其他函数与知识点 310

7.1 AND/OR规范化 310

7.2 常量表达式的处理eval_const_expressions 314

7.3 Relids的相关函数 316

7.4 List的相关函数 319

7.5 元数据表Meta Table 320

7.6 查询引擎相关参数配置 324

结束语 328

相关图书
作者其它书籍
返回顶部