ITPub博客

首页 > Linux操作系统 > Linux操作系统 > SQL优化说明文档(1)

SQL优化说明文档(1)

原创 Linux操作系统 作者:xz43 时间:2010-11-22 13:45:04 0 删除 编辑

1.Sql执行三个主要阶段

Ø  Parse (分析阶段)

-    在内存(shared pool) 中寻找语句

-    检查语法,检查语义,权限

-    合并View,SubQuery

-    生成执行计划

Ø  Execute (执行)

-    应用Parse阶段生成的执行计划

-    如果数据在内存中则完成逻辑读,否则物理读

-    对于UPDATE、DELETE语句先锁住有关的行

Ø  Fetch (结果返回)

-    如果是select 语句,还要返回执行结果

-    根据需要完成排序

每个阶段都消耗系统资源。

2.常见的数据访问路径

Ø 表的访问

-    Table Access Full(Multi-blocks I/O,可并行)

-    Table Access By Rowid (先索引访问,得到Rowid)

Ø 索引的访问

-    Index Unique Scan (Single Block I/O,不可并行)

§  返回单个值;唯一索引,等于查询

-    Index Range Scan (Single Block I/O,不可并行)

§  返回多行记录;范围查询

-    Index Full Scan

§  对Index做全部的扫描,返回所有Index的值

-    Index Fast Full Scan(Multi-blocks I/O,可并行)

§   可以并行的访问整个Index

-    Index skip Scan

§   跳过复合索引中的领先列,适用于领先列选择性低的情况

    如,(fee_type,finist_time)

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9399028/viewspace-678635/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
鱼儿的学习空间

注册时间:2010-11-16

  • 博文量
    433
  • 访问量
    1863733