1、查询优化的基本概念

1.1 查询处理

查询处理是指从数据库中提取数据的一系列活动。主要包括:将高级数据库查询语句翻译成文件系统这一物理 层次的表达式,为优化查询进行各种转换以及查询的实际执行。

1.2 查询处理的代价

查询处理的代价通常由磁盘的访问,因为磁盘访问比内存访问速度慢很多。磁盘的访问次数对查询策略的好坏影响很大,有时候甚至会差几个数量级。

1.3 查询优化

查询优化是为了查询能够选择最有效的查询计划。查询优化涉及关系代数级优化(尽可能找到与给定表达式等价、执行效率更高的表达式)、查询语句处理的详细策略的选择。

查询优化的关键是找到一个与之等价的且操作时间又少的表达式。

2、关系代数表达式中的查询优化

优化准则

1.尽早执行选取运算:对于有选择运算的表达式,应优化成先执行选择运算的等价表达式,从而取得较小的中间结果,减少运算量和从外存读块的次数。

2.合并乘积与其后的选择运算为连接运算:避免乘积运算后,再扫描一个大的乘积关系进行选择运算。

3.将投影运算和后面的其他运算同时进行,避免重复扫描关系

4.将投影运算和其前后的二目运算结合起来。避免一些没必要的字段再扫描一遍关系。

5.在执行连接前对关系适当地预处理,就可以快速找到要连接的元素。方法:索引连接法、排序合并连接法。

6.存储公共表达式。对于有公共表达式的结果应存于外存。可以节约操作时间。

IT技术分享社区

个人博客网站:https://programmerblog.xyz

文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识

数据库技术基础:查询优化相关知识笔记相关推荐

  1. 数据库设计基础:数据字典相关知识笔记

    1.数据字典的定义  数据字典(Data Dictionary ,DD)是各类数据描述的集合,它是关于数据库中数据的描述,即元数据,而不是数据本身. 2.数据字典的组成 数据字典主要包括数据项.数据结 ...

  2. oracle数据库的基本教程 pdf,Oracle数据库技术基础教程 PDF 下载

    相关截图: 资料简介: 本书主要介绍Oracle数据库的基本概念.知识和技术,注重培养Oracle数据库技术的基本操作技能.本书内容体系完整,覆盖了Oracle数据库技术的主要组成部分,设置有Orac ...

  3. 《C#语言和数据库技术基础》单词必备

    <C#语言和数据库技术基础> 第一章 1..NET Framework   框架 2.sharp            尖锐,强烈的 3.application      应用程序 4.d ...

  4. 软考之软件设计师——数据库技术基础

    数据库技术基础 1.数据库管理系统(DBMS) 主要实现对共享数据有效地组织.管理和存取. DBMS的六大功能: 数据定义数据库操作:提供数据操纵语言(DML)来实现对数据的基本操作.DML分为两类: ...

  5. 独立于计算机系统的是 用户模式,第6章 数据库技术基础习题

    一.判断题(该题若正确,则在括号内画Ö,若错误,则在括号内画´.) 1. 任何一个二维表就是一个关系.( ) 2. 在关系中元组的顺序是无关紧要的.( ) 3. 关系模型的完整性规则是对关系的约束条件 ...

  6. django基础到高手知识笔记总结,50页笔记,共10大模块(第一期).md

    django基础到高手知识笔记总结,50页笔记,共10大模块(第一期).md 完整笔记在这: Django基础到高手完整笔记 完整笔记目录: 第一期笔记内容 Python Web 框架要点 1. We ...

  7. 7. 数据库技术基础

    7. 数据库技术基础 数据库技术是研究数据库的结构.存储.设计.管理和应用的一门软件学科. 数据库系统本质上是一个用计算机存储信息的系统.数据库管理系统是位于用户与操作系统之间的一层数据库管理软件,其 ...

  8. 软件设计师(五)数据库技术基础+数据结构

    数据库技术基础 1.数据库系统:数据库,硬件,软件,人员 2.DBMS(数据库管理系统)的功能:数据定义,数据库操作,数据库运行管理,数据组织.存储和管理,数据库的建立和维护,与其他软件系统的通信功能 ...

  9. 事务管理基础:数据库的并发控制相关知识笔记

    1.并发操作的概念介绍 并发操作主要是指在多用户共享的系统当中,可能存在很多用户同时对同一个数据进行操作.并发操作会造成丢失更新.不可重复读.读脏数据.主要原因是事务的并发操作破坏了事务的隔离性. 2 ...

最新文章

  1. 数组第一个值_Excel公式技巧69:查找第一个非空值
  2. 共享经济网络营销外包下的怪兽充电冲向纳斯达克“充电宝要上市”!
  3. 怎么merge分支_实战 Git 分支策略
  4. Java集合(五):Set集
  5. 数据结构课上笔记14
  6. python-day3
  7. JAVA-求整数序列中出现次数最多的数
  8. malloc和calloc之间的区别?
  9. SqlServer中查询某数据库所有表及其数据总条数和占用空间
  10. cad标注样式快捷键_CAD快速入门(二十三):标注样式
  11. ios系统gps测试软件,GPS工具箱
  12. python对文件去重_python对文件夹内文件去重
  13. 基础篇必看,史上最全的iOS开发教程集锦,没有之一
  14. AECC2019免费下载After Effects CC 2019中文完整破解版免费下载与安装教程...
  15. 大忽悠:神州行单向收费
  16. 新西兰的中国新移民现状:缺乏安全感和归属感
  17. 代挂php源码,[PHP源码]开心QQ等级代挂源码,无后门任意搭建分站
  18. 合工大机器人足球仿真考试题56题(底层uva)
  19. Whitelabel Error Page 的原因
  20. 普通socket服务端

热门文章

  1. 读取exchange邮件的未读数(转载)
  2. 选择什么样的时机将IT运维服务外包
  3. .Net开发环境配置[OS/IIS/VS...]
  4. MATLAB图像增强程序举例
  5. Halcon例程(基于GMM模型的分类)详解 —— classify_citrus_fruits.hdev
  6. oracle在线sql数据库设计,一款在线ER模型设计工具,支持MySQL、SQLServer、Oracle、Postgresql...
  7. amazons3 检查连接是否_钢筋机械连接接头如何检查是否合格?抽检数量、合格率是多少?...
  8. cuda、cudnn相关问题链接
  9. 计算机函数公式一等奖怎么算,信息技术应用 用计算机画函数图象教案设计(一等奖)...
  10. spring mvc使用html页面,使用Spring MVC的纯HTML页面应用程序