• 商品
  • 详情
  • 评价
  • 联系
  • 推荐
立即购买 分享好友 商城首页 商城分类 切换频道 秒杀活动 购物车
1/5
数据库查询优化器的艺术:原理解析与SQL性能优化(MySQL开发团队专家撰写)图1

数据库查询优化器的艺术:原理解析与SQL性能优化(MySQL开发团队专家撰写)

10广东
价格 89.00
发货 广东东莞市
数量
-+
库存 100
商品详情

内容简介

本书是数据库查询优化领域的里程碑之作,由Oracle公司MySQL开发团队、专家撰写,作者有10余年数据库内核和查询优化器研究经验。数据库领域泰斗王珊教授亲自作序,PostgreSQL中国社区和中国用户会发起人以及来自Oracle、新浪、网易、华为等企业的数位数据库专家联袂。从原理角度深度解读和展示数据库查询优化器的技术细节和全貌;从源码实现角度深入分析MySQL和PostgreSQL两大主流开源数据库查询优化器的实现原理;从工程实践的角度对比了两大数据库的查询优化器的功能异同和实现异同。它是所有数据开发工程师、内核工程师、DBA以及其他数据库相关工作人员值得反复研读的一本书。
全书一共19章,分为四个部分:第一篇(第1~4章)对数据库查询优化技术的范围、逻辑查询优化、物理查询优化,以及查询优化器与其他模块的关系做了细致、深入的讲解;第二篇(第5~10章)先从源码角度对PostgreSQL查询优化器的架构、层次、设计思想、相关数据结构和实现原理进行了深入、系统的分析,然后从功能角度对PostgreSQL的逻辑查询优化、物理查询优化、查询优化器的关键算法,以及PostgreSQL查询优化器与其他模块的关系做了深入的讲解;第三篇(第11~16章)先从源码角度对MySQL查询优化器的架构、层次、设计思想、相关数据结构和实现原理进行了深入、系统的分析,然后从功能角度对MySQL的逻辑查询优化、物理查询优化、查询优化器的关键算法,以及MySQL查询优化器与其他模块的关系做了深入的讲解;第四篇(第17~19章)对PostgreSQL与MySQL的逻辑查询优化技术、物理查询优化技术、设计思想和编码规范等各方面进行了深度的比较。

目录

目  录
序一
序二
前 言
第一篇 查询优化技术
第1章 数据管理系统的查询优化 2
1.1 数据库调优 3
1.2 查询优化技术 5
1.2.1 查询重用 5
1.2.2 查询重写规则 6
1.2.3 查询算法优化 6
1.2.4 并行查询优化 8
1.2.5 分布式查询优化 9
1.2.6 其他优化 9
1.3 本章小结 9
第2章 逻辑查询优化 10
2.1 查询优化技术的理论基础 10
2.1.1 关系代数 11
2.1.2 关系代数等价变换规则对优化的指导意义 13
2.2 查询重写规则 17
2.2.1 子查询的优化 18
2.2.2 视图重写 28
2.2.3 等价谓词重写 29
2.2.4 条件化简 32
2.2.5 外连接消除 33
2.2.6 嵌套连接消除 37
2.2.7 连接消除 38
2.2.8 语义优化 40
2.2.9 针对非SPJ的优化 41
2.3 启发式规则在逻辑优化阶段的应用 42
2.4 本章小结 43
第3章 物理查询优化 44
3.1 查询代价估算 44
3.1.1 代价模型 44
3.1.2 选择率计算的常用方法 45
3.2 单表扫描算法 45
3.2.1 常用的单表扫描算法 45
3.2.2 单表扫描代价计算 47
3.3 索引 47
3.3.1 如何利用索引 47
3.3.2 索引列的位置对使用索引的影响 50
3.3.3 联合索引对索引使用的影响 56
3.3.4 多个索引对索引使用的影响 57
3.4 两表连接算法 59
3.4.1 基本的两表连接算法 59
3.4.2 进一步认识两表连接算法 61
3.4.3 连接操作代价计算 61
3.5 多表连接算法 62
3.5.1 多表连接顺序 62
3.5.2 常用的多表连接算法 63
3.5.3 多表连接算法的比较 68
3.6 本章小结 68
第4章 查询优化器与其他模块的关系 70
4.1 查询优化器整体介绍 70
4.2 查询优化器与其他模块的关系 73
4.3 本章小结 74
第二篇 PostgreSQL查询优化器原理解析
第5章 PostgreSQL查询优化器概述 76
5.1 PostgreSQL查询执行过程 76
5.2 PostgreSQL查询优化器的架构和设计思想 78
5.2.1 PostgreSQL查询优化器架构 79
5.2.2 PostgreSQL查询优化器的层次 81
5.2.3 PostgreSQL查询优化器设计思想 81
5.3 主要概念 81
5.4 代码层次结构 85
5.5 本章小结 86
第6章 PostgreSQL查询优化器相关数据结构 88
6.1 主要数据结构 88
6.1.1 基本数据结构 88
6.1.2 查询树 91
6.1.3 各种对象的结构 95
6.1.4 连接操作相关的结构 99
6.1.5 查询执行计划相关的结构 104
6.2 各个结构之间的关系 108
6.3 各个阶段间和主要结构体间的关系 109
6.4 本章小结 110
第7章 PostgreSQL查询优化器实现原理解析 111
7.1 查询优化整体流程 111
7.2 查询优化器实现原理解析 115
7.2.1 planner——主入口函数 115
7.2.2 standard_planner——标准的查询优化器函数 116
7.2.3 subquery_planner——生成(子)查询执行计划函数 117
7.2.4 grouping_planner——生成查询执行计划并对非SPJ优化 139
7.2.5 build_minmax_path——聚集函数MIN/MAX的优化函数 141
7.2.6 query_planner——生成的查询路径函数 142
7.2.7 make_one_rel——构造多表连接路径并选出路径函数 148
7.2.8 make_rel_from_joinlist——生成多表连接路径函数 153
7.2.9 optimize_minmax_aggregates——聚集操作MIN/MAX优化函数 163
7.2.10 cre

摘要与插图

第一篇
查询优化技术
本篇介绍了数据库的查询优化技术,从数据库的理论出发界定查询优化技术的范围,讨论了包括逻辑查询优化、物理查询优化两个方面的查询优化技术。全篇立足于数据库的基本理论——关系代数,在第1章先界定了本书讨论的查询优化的技术范围;在第2章运用关系代数理论和关系法则,对逻辑查询优化进行全面而深入的探讨,对各种逻辑查询优化技术进行全面介绍,指出关系代数对于查询优化技术的指导意义,通过示例巩固对查询优化技术的理解和认识;在第3章,通过对代价估算模型、索引和表扫描、表连接算法的介绍,对各种物理查询优化技术进行全面描绘,构造了清晰、完整的物理查询优化技术图谱;在第4章,对实现查询优化技术的数据库查询优化器的相关模块进行了介绍,意在使读者了解查询优化技术的相关上下文内容。
第1章
数据管理系统的查询优化
数据库管理系统(Database Management System,DBMS,简称数据库)是位于用户与操作系统之间的一层数据管理软件,主要功能包括:数据定义、数据操纵、数据库的运行管理、数据库的建立和维护等。
数据操纵是数据库管理系统中一种本的操作,这种操作包括查询、插入、删除和修改等,其中,查询操作称为查询处理。
查询的执行,就是查询处理的过程,即数据库按用户指定的SQL语句中的语义,执行语义所限定的操作。但SQL语句的执行效率对数据库的效率影响较大。为了提高查询语句的执行效率,对查询语句进行优化是必不可少的。
对查询语句进行优化的技术就是查询优化技术,运用查询技术实现数据操纵功能的过程是确定给定查询的执行计划的过程。所谓执行计划就是查询树,它由一系列内部的操作符组成,这些操作符按一定的运算关系构成查询的一个执行方案。查询优化的追求目标,就是在数据库查询优化引擎生成一个执行策略的过程中,尽量使查询的总开销(总开销通常包括IO、CPU、网络传输等)达到。
数据库查询优化技术主要包括查询重用技术、查询重写规则、查询算法优化技术、并行查询优化技术、分布式查询优化技术及其他方面(如框架结构)的优化技术,这6项技术构成了一个“广义的数据库查询优化”的概念。
点赞 0
举报
收藏 0
分享 0
买家评价
正在加载评价详情...
联系方式
加关注0

新图书资料发布

VIP会员第2年
资料通过认证
保证金未缴纳

0成交¥45.00

新图书资料发布吕不韦传奇

0成交¥52.00

新图书资料发布中国历代张天师评传:卷三

0成交¥68.00

新图书资料发布中国历代张天师评传:卷四

0成交¥52.00

新图书资料发布中国历代张天师评传:卷五

0成交¥78.00

新图书资料发布检察实践的理论思考

0成交¥49.80

新图书资料发布地狱小子:4:毁灭的右手

0成交¥42.00

新图书资料发布新时期大学生思想政治教育改革与创新探究

0成交¥36.00

新图书资料发布机电一体化系统设计与应用

0成交¥39.80

新图书资料发布王大绩精讲高考语文 检索加工

0成交¥28.00

新图书资料发布国老师讲堂:手把手教你写作文 议论文 (高考语文阅卷组名师、新东方席语文名师国家玮,专为考生“量身打造”,抢占语文备考制高点!俞敏洪、孔庆东、李亮联合!)
客服 商铺 购物车