当前位置:  数据库>oracle

Oracle是如何进行全表扫描实验

    来源: 互联网  发布时间:2017-05-10

    本文导语: 从下列实验可以看出全表扫描是根据extent/block顺序去取数据, 第一次实验有'db file scattered read'等待事件,第二次实验已经把数据加载到databuffer中,所以没有等待实验。 SQL> create table test as select * from dba_objects;SQL> select extent_id, file_...

从下列实验可以看出全表扫描是根据extent/block顺序去取数据, 第一次实验有'db file scattered read'等待事件,第二次实验已经把数据加载到databuffer中,所以没有等待实验。

SQL> create table test as select * from dba_objects;
SQL> select extent_id, file_id, block_id, blocks
  2    from dba_extents
  3  where segment_name = 'TEST'
  4  order by 1;
 EXTENT_ID    FILE_ID  BLOCK_ID    BLOCKS
---------- ---------- ---------- ----------
        0          6      83849          8
        1          6      83857          8
        2          6      83865          8
        3          6      83873          8
        4          6      83881          8
        5          6      83889          8
        6          6      83897          8
        7          6      83905          8
        8          6      83913          8
        9          6      83921          8
        10          6      83929          8
        11          6      83937          8
        12          6      83945          8
        13          6    100409          8
        14          6    100417          8
        15          6    117121          8
        16          6      83977        128
        17          6      84105        128
        18          6      84233        128
        19          6      84361        128
        20          6      84489        128
SQL> show parameter db_file_multiblock_read_count
 
NAME                                TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_file_multiblock_read_count        integer    16
 
SQL> alter session set events 'immediate trace name flush_cache level 1';
SQL> alter session set events '10046 trace name context forever,level 12';

第一次实验:
SQL> select count(1) from test;
  COUNT(1)
----------
    51255
 
第一次实验查看10046文件:

ARSING IN CURSOR #5 len=27 dep=0 uid=61 oct=3 lid=61 tim=3414138868 hv=1143379599 ad='302eb520'
select count(1) from test
END OF STMT
PARSE #5:c=46875,e=236549,p=330,cr=59,cu=0,mis=1,r=0,dep=0,og=1,tim=3414138867
BINDS #5:
EXEC #5:c=0,e=45,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=3414139031
WAIT #5: nam='SQL*Net message to client' ela= 2 driver id=1413697536 #bytes=1 p3=0 obj#=95737 tim=3414139067
WAIT #5: nam='SQL*Net message from client' ela= 211 driver id=1413697536 #bytes=1 p3=0 obj#=95737 tim=3414139327
WAIT #5: nam='db file scattered read' ela= 4594 file#=6 block#=83852 blocks=5 obj#=95737 tim=3414143992
WAIT #5: nam='db file scattered read' ela= 424 file#=6 block#=83857blocks=4 obj#=95737 tim=3414144545
WAIT #5: nam='db file scattered read' ela= 161 file#=6 block#=83862 blocks=3 obj#=95737 tim=3414144820
WAIT #5: nam='db file scattered read' ela= 288 file#=6 block#=83866 blocks=7 obj#=95737 tim=3414145211
WAIT #5: nam='db file scattered read' ela= 314 file#=6 block#=83873 blocks=8 obj#=95737 tim=3414145670
WAIT #5: nam='db file scattered read' ela= 404 file#=6 block#=83882 blocks=7 obj#=95737 tim=3414146232
WAIT #5: nam='db file scattered read' ela= 156 file#=6 block#=83889 blocks=3 obj#=95737 tim=3414146536
WAIT #5: nam='db file scattered read' ela= 195 file#=6 block#=83893 blocks=4 obj#=95737 tim=3414146840
WAIT #5: nam='db file scattered read' ela= 280 file#=6 block#=83898 blocks=7 obj#=95737 tim=3414147226
WAIT #5: nam='db file scattered read' ela= 1438 file#=6 block#=83905 blocks=8 obj#=95737 tim=3414148811
WAIT #5: nam='db file scattered read' ela= 340 file#=6 block#=83914 blocks=7 obj#=95737 tim=3414149308
WAIT #5: nam='db file scattered read' ela= 365 file#=6 block#=83921 blocks=8 obj#=95737 tim=3414149813
WAIT #5: nam='db file scattered read' ela= 285 file#=6 block#=83930 blocks=6 obj#=95737 tim=3414150250
WAIT #5: nam='db file scattered read' ela= 128 file#=6 block#=83937 blocks=2 obj#=95737 tim=3414150515
WAIT #5: nam='db file scattered read' ela= 219 file#=6 block#=83940 blocks=5 obj#=95737 tim=3414150826
WAIT #5: nam='db file scattered read' ela= 343 file#=6 block#=83946 blocks=7 obj#=95737 tim=3414151317
WAIT #5: nam='db file scattered read' ela= 382 file#=6 block#=100409 blocks=5 obj#=95737 tim=3414151838
WAIT #5: nam='db file scattered read' ela= 187 file#=6 block#=100415 blocks=2 obj#=95737 tim=3414152147
WAIT #5: nam='db file scattered read' ela= 190 file#=6 block#=100418 blocks=2 obj#=95737 tim=3414152418
WAIT #5: nam='db file scattered read' ela= 249 file#=6 block#=100421 blocks=4 obj#=95737 tim=3414152745

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
WAIT #5: nam='db file scattered read' ela= 2597 file#=6 block#=84562 blocks=10 obj#=95737 tim=3414213296
WAIT #5: nam='SQL*Net message to client' ela= 2 driver id=1413697536 #bytes=1 p3=0 obj#=95737 tim=3414213458


    
 
 

您可能感兴趣的文章:

  • 用Oracle 9i全索引扫描快速访问数据
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • oracle10g装在redhat linux es3 下进行pro*cc++进行编程的问题
  • 紧急求救:jsp对Oracle数据库中long 型数据进行模糊查询 如何查?
  • Oracle针对数据库某一行进行操作的时候,如何将这一行加行锁
  • Oracle 中文字段进行排序的sql语句
  • 紧急求救:对Oracle数据库中long 型数据进行模糊查询 如何查?
  • 请问:ORACLE中的数据取出来后,需不需要进行一定的转换才能变为C语言的数据类型啊?
  • 如何能在网上找到一个可以提供ORACLE进行JSP设计的主机展示我的作品啊,付费也行
  • 使用Oracle Text进行全文检索
  • 在命令行下进行Oracle用户解锁的语句
  • 对Oracle执行计划进行监控
  • Oracle ASM环境下怎么进行数据库冷备
  • 在Oracle库存模块中进行帐龄分析
  • 使用Oracle的Decode函数进行多值判断
  • RH7.1下安装Oracle8.1.7,安装到Configuration Tools时,不能进行下去。请教高手指点。
  • 大侠解决一下java 如何和 oracle 进行连接??(高分—)
  • DBA_Oracle Startup / Shutdown启动和关闭过程详解(概念)(对数据库进行各种维护操作)
  • 使用Oracle Partition Table对日志表进行分区
  • Oracle设置系统参数进行性能优化
  • 在Oracle中手工对任务进行分区的方法
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,