• oracle 多块度参数DB_FILE_MULTIBLOCK_READ_COUNT


    DB_FILE_MULTIBLOCK_READ_COUNT

    PropertyDescription
    Parameter type Integer
    Default value The default value corresponds to the maximum I/O size that can be efficiently performed and is platform-dependent
    Modifiable ALTER SESSIONALTER SYSTEM
    Range of values Operating system-dependent
    Basic No
    DB_FILE_MULTIBLOCK_READ_COUNT is one of the parameters you can use to minimize I/O during table scans. It specifies the maximum number of blocks read in one I/O operation during a sequential scan. The total number of I/Os needed to perform a full table scan depends on such factors as the size of the table, the multiblock read count, and whether parallel execution is being utilized for the operation.

    As of Oracle Database 10g release 2, the default value of this parameter is a value that corresponds to the maximum I/O size that can be performed efficiently. This value is platform-dependent and is 1MB for most platforms.Because the parameter is expressed in blocks, it will be set to a value that is equal to the maximum I/O size that can be performed efficiently divided by the standard block size. Note that if the number of sessions is extremely large the multiblock read count value is decreased to avoid the buffer cache getting flooded with too many table scan buffers.

    Even though the default value may be a large value, the optimizer will not favor large plans if you do not set this parameter. It would do so only if you explicitly set this parameter to a large value.

    Online transaction processing (OLTP) and batch environments typically have values in the range of 4 to 16 for this parameter. DSS and data warehouse environments tend to benefit most from maximizing the value of this parameter. The optimizer is more likely to choose a full table scan over an index if the value of this parameter is high.

    The maximum value is the operating system's maximum I/O size expressed as Oracle blocks ((max I/O size)/DB_BLOCK_SIZE). If you set this parameter to a value greater than the maximum, Oracle uses the maximum.

     
    这个参数是oracle在做全表扫描或全索引快速扫描时一次IO能从磁盘顺序扫描读取的最大数据块数。总的io次数受表的大小,此参数的设置,以及是否使用并行操作的影响。
    此参数的默认值跟I/O size 或platform有关,大多数平台支持每次读取1M的数据。1024K/8k=128 此参数最大值可以设置为128,如果设置的值超过128,Oracle还是会使用128.
     
    注意连接数也会极大的限制多块读的最大值,因为太多session使用全表扫描的话会导致buffer cache迅速爆满。
     
     
     
     
     
     
  • 相关阅读:
    vmware workstation 10.0
    成为嵌入式程序员应知道的0x10个基本问题
    Linux嵌入式系统与硬件平台的关系
    vasprintf的实现
    GIT常用命令
    ip地址转化代码实例
    Linux网络编程实例解析
    openwrt的交叉编译
    appium初学者,使用之检查appium环境报错Could not detect Mac OS X Version from sw_vers output: '10.12.1’,
    第二章 mac上运行第一个appium实例
  • 原文地址:https://www.cnblogs.com/JennyYu/p/15930600.html
Copyright © 2020-2023  润新知