大小:83.37M
更新时间:23-09-03
系统:Pc
第1章 概述 关于SQL性能的另一本书 不合适的索引 误区和误解 误区1:索引层级不要超过5层 误区2:单表的索引数不要超过6个 误区3:不应该索引不稳定的列 示例 磁盘驱动器使用率 系统化的索引设计 第2章 表和索引结构 介绍 索引页和表页 索引行 索引结构 表行 缓冲池和磁盘I/O 从DBMS缓冲池进行的读取 从磁盘驱动器进行的随机I/O 从磁盘服务器缓存进行的读取 从磁盘驱动器进行的顺序读取 辅助式随机读 辅助式顺序读 同步I/O和异步I/O 硬件特性 DBMS特性 页 表聚簇 索引行 表行 索引组织表 页邻接 B树索引的替代品 聚簇的许多含义 第3章 SQL处理过程 简介 谓词 评注 优化器及访问路径 索引片及匹配列 索引过滤及过滤列 访问路径术语 监控优化器 帮助优化器(统计信息) 帮助优化器(FETCH调用的次数) 何时确定访问路径 过滤因子 组合谓词的过滤因子 过滤因子对索引设计的影响 物化结果集 游标回顾 方式1:一次FETCH调用物化一条记录 方式2:提前物化 数据库设计人员必须牢记 练习 第4章 为SELETE语句创建理想的索引 简介 磁盘及CPU时间的基础假设 不合适的索引 三星索引--查询语句的理想索引 星级是如何给定的 范围谓词和三星索引 为查询语句设计zui佳索引的算法 候选A 候选B 现今排序速度很快--为什么我们还需要候选B 需要为所有查询语句都设计理想索引吗 完全多余的索引 近乎多余的索引 可能多余的索引 新增一个索引的代价 响应时间 磁盘负载 磁盘空间 一些建议 练习 第5章 前瞻性的索引设计 发现不合适的索引 基本问题法(BQ) 注意 快速上限估算法(QUBE) 服务时间 排队时间 基本概念:访问 计算访问次数 FETCH处理 主要访问路径的QUBE示例 使用满足需求的成本zui低的索引还是所能达到的zui优索引:示例1 该事务的基本问题 对该事务上限的快速估算 使用满足需求的成本zui低的索引还是所能达到的zui优索引 该事务的zui佳索引 半宽索引(zui大化索引过滤) 宽索引(只需访问索引) 使用满足需求的成本zui低的索引还是所能达到的zui优索引:示例2 范围事务的BQ及QUBE 该事务的zui佳索引 半宽索引(zui大化索引过滤) 宽索引(只需访问索引) 何时使用QUBE 第6章 影响索引设计过程的因素 I/O时间估算的验证 多个窄索引片 简单就是美(和安全) 困难谓词 LIKE谓词 OR操作符和布尔谓词 IN谓词 过滤因子隐患 过滤因子隐患的例子 zui佳索引 半宽索引(zui大化索引过滤) 宽索引(只需访问索引) 总结 练习 第7章 被动式索引设计 简介 EXPLAIN描述了所选择的访问路径 全表扫描或全索引扫描 对结果集排序 成本估算 数据库管理系统特定的EXPLAIN选项及限制 监视揭示现实 性能监视器的演进 LRT级别的异常监视 程序粒度的均值是不够的 异常报告举例:每个尖刺一行 问题制造者和受害者 有优化空间的问题制造者和无优化空间的问题制造者 有优化空间的问题制造者 调优的潜在空间 无优化空间的问题制造者 受害者 查找慢的SQL调用 调用级别的异常监视 Oracle举例 SQL Server举例 结论 数据库管理系统特定的监视问题 尖刺报告 练习 第8章 为表连接设计索引 简介 两个简单的表连接 例8.1:CUST表作为外层表 例8.2:INVOICE表作为外层表 表访问顺序对索引设计的影响 案例研究 现有索引 理想索引 理想索引,每事务物化一屏结果集 理想索引,每事务物化一屏结果集且遇到FF缺陷 基本连接的问题(BJQ) 结论:嵌套循环连接 预测表的访问顺序 合并扫描连接和哈希连接 合并扫描连接 例8.3:合并扫描连接 哈希连接 程序C:由优化器选择MS/HJ(在现有索引条件下) 理想索引 嵌套循环连接VS. MS/HJ及理想索引 嵌套循环连接VS. MS/HJ 嵌套循环连接VS.理想索引 连接两张以上的表 为什么连接的性能表现较差 模糊的索引设计 优化器可能选择错误的表访问路径 乐观的表设计 为子查询设计索引 为UNION语句设计索引 对于表设计的思考 冗余数据 无意识的表设计 练习 第9章 星型连接 介绍 维度表的索引设计 表访问顺序的影响 事实表的索引 汇总表 第10章 多索引访问 简介 索引与 与查询表一同使用索引与 多索引访问和事实数据表 用位图索引进行多索引访问 索引或 索引连接 练习 第11章 索引和索引重组 B树索引的物理结构 DBMS如何查找索引行 插入一行时会发生什么 叶子页的分裂严重吗 什么时候应该对索引进行重组 插入模式 索引列的稳定性 长索引行 举例:对顺序敏感的批处理任务 表乱序(存在聚簇索引) 表乱序(没有以CNO开头的聚簇索引) 存储在叶子页中的表行 SQL Server Oracle 索引重组的代价 分裂的监控 总结 第12章 数据库管理系统相关的索引限制 简介 索引列的数量 索引列的总长度 变长列 单表索引数量上限 索引大小上限 索引锁定 索引行压缩 数据库管理系统索引创建举例 第13章 数据库索引选项 简介 索引行压缩 索引键以外的其他索引列 唯1约束 从不同的方向扫描数据库索引 索引键截断 基于函数的索引 索引跳跃式扫描 块索引 数据分区的二级索引 练习 第14章 优化器不是完美的 简介 优化器并不总能看见zui佳方案 匹配及过滤问题 非BT谓词 无法避免的排序 不必要的表访问 优化器的成本估算可能错得离谱 使用绑定变量的范围谓词 偏斜分布 相关列 部分索引键的警示故事 成本估算公式 估算I/O时间 估算CPU时间 协助优化器处理估算相关的问题 优化器的问题是否会影响索引设计 练习 第15章 其他评估事项 QUBE公式背后的假设条件 内存中的非叶子索引页 例子 磁盘服务器读缓存的影响 缓冲子池 长记录 慢速顺序读 实际的响应时间可能比QUBE评估值短得多 叶子页和表页缓存在缓冲池中 识别低成本的随机访问 辅助式随机读取 辅助式顺序读 评估CPU时间(CQUBE) 单次顺序访问的CPU时间 单次随机访问的CPU时间 单次FETCH调用的CPU时间 每排序一行的平均CPU时间 CPU评估举例 宽索引还是理想索引 嵌套循环(及反范式化)还是MS/HJ 合并扫描与哈希连接的比较 跳跃式顺序扫描 CPU时间仍然不可忽视 第16章 组织索引设计过程 简介 计算机辅助式索引设计 设计出色索引的9个步骤 参考文献 术语表 索引
同类热门
类似软件
三级数据库无纸化考试模拟软件33M325人在用三级数据库无纸化考试模拟软件是由未来教育推出的一款界面简洁,功能全面的三级数据库电脑模拟软件,该系统专门针对三级数据库考试开发,收集了大量历届数据库考试专题,提供考试题库、错题重做、模拟考场等多种功能,资料全,功能多,操作方便,是一款非常全面,评价很高的
查看Microsoft SQL Server 2005精简版57.16M3702人在用 SQL 2005精简版是一款免费、易用的轻量版数据库软件,具有快速且易于掌握的特点,可用于快速开发和部署动态数据驱动的应用程序。它是由Microsoft公司推出的一款功能强大的关系型数据库管理系统。平台使用集成的商业智能 (BI)工具提供了企业级的
查看热门标签
网友评论0人参与,0条评论
最新排行
07s906给水排水构筑物设计选用图34.83Mpdf高清电子版07s906给水排水构筑物设计选用图简称为07s906图集,能够适用于民用建筑与一般工业建筑及城镇的给水排水工程,由中国建筑标准设计研究院编写,中华人民共和国建设部批准发布,针对水池、水塔、化粪池、小型排水建筑物有效,在已编制出版的给水排水构筑物国家标准
查看自己动手写操作系统pdf高清版30.91M于渊无水印影印版自己动手写操作系统是于渊编写的一本编程爱好者编写的别具一格、颇有特色的操作系统原理与实现的图书,本书在详细分析操作系统原理的基础上,用丰富的实例代码,一步一步地指导读者用C语言和汇编语言编写出一个具备操作系统基本功能的操作系统框架。作者对系统初启、保护模
查看C#项目开发实战密码146.78M扶松柏pdf扫描版 C#项目开发实战密码是一本C#语言的实战指导学习书籍,由扶松柏编著。本书内容十分丰富,每一章都采用了一个实例,并用这些实例的具体实现流程来教学。在具体讲解每个实例时,都遵循项目的进度来展开,从接到项目到具体开发,直到最后的调试和发布。内容循序渐进,
查看人人都是架构师:分布式系统架构落地与瓶颈突破39.95M高翔龙 pdf扫描版 人人都是架构师:分布式系统架构落地与瓶颈突破是一本货真价实的互联网场景下大型网站架构演变过程中核心技术难题的解决方案,由高翔龙编著。本书全部来源于作者真实经历的生产案例,大型网站应对高并发、大流量的应急宝典,全书毫无保留地阐述了作者多年在互联网企业
查看Adobe Flash CS5动画设计与制作技能基础教程181.65M王海翔pdf扫描版 Adobe Flash CS5动画设计与制作技能基础教程是一本针对Flash cs5软件而开发的动画设计教程,由王海翔,孙秀娟,张少斌共同编著。本书内容丰富翔实,所有案例均来源于真实产品,可操作性极强,并且每一章都采用“知识点+综合案例”的写作结构
查看C/C++软件工程师就业求职手册49.34M胡凌云pdf扫描版 C/C++软件工程师就业求职手册是一本C和C++语言的工程师就业求职指南,由胡凌云编著。本书涵盖C/C++面试中出现的各个知识点,包括C语言编程基础、C++面向对象、算法、数据结构、STL等。所有知识点都结合例题进行说明,每道例题都取材于各大公司的
查看深度探索linux操作系统pdf125.28M扫描版 深度探索linux操作系统pdf是一本深度阐释Linux操作系统原理的里程碑之作,由资深linux专家王柏生编著。本书以从零开始构建一个完整的Linux操作系统的过程为依托,宏观上全面厘清了构成Linux操作系统的各个组件以及它们之间的关系,微观上
查看neo4j实战pdf完整版11.82M高清扫描版neo4j实战是一本介绍Neo4j图形数据库的实战手册,由英国数据库管理员阿列克萨·武科蒂奇编著。本书以实例为依托,详细地对实例做建模分析,并给出经过测试的源代码,主要介绍了Neo4j数据库概述、Neo4j的数据模型 、Neo4j开发入门、Neo4j的查
查看