zoukankan      html  css  js  c++  java
  • /*+parallel(t,4)*/在SQL调优中的重要作用!

    谈谈HINT /*+parallel(t,4)*/在SQL调优中的重要作用!

    /*+parallel(t,4)*/在大表查询等操作中能够起到良好的效果,
    基于并行查询要启动并行进程、分配任务与系统资源、合并结果集,这些都是比较消耗资源,
    但我们为能够减少执行事务的时间使用parallel HINT还是值得的,尤其在ODS系统中报表统计等方面更有使用意义.
    一般而言主要在如下情况使用parallel HINT
    1.表的数据量很大,超过一千万; 
    2.数据库主机是多个CPU;
    3.系统的当前负载较低;
    简单的测试如下,效果很明显的:
    [sql] view plain copy
     
    1. SQL> select /*+parallel(t,4)*/count(*) from   t;  
    2.   
    3.   COUNT(*)  
    4. ----------  
    5.   30245882  
    6.   
    7. 已用时间:  00: 01: 32.04  
    8.   
    9. Execution Plan  
    10. ----------------------------------------------------------  
    11.    0      SELECT STATEMENT Optimizer=CHOOSE (Cost=5411 Card=1)  
    12.    1    0   SORT (AGGREGATE)  
    13.    2    1     SORT* (AGGREGATE)                                        :Q351880  
    14.                                                                        00  
    15.   
    16.    3    2       TABLE ACCESS* (FULL) OF 't' (Cost=5411 Car :Q351880  
    17.           d=2822493)                                                   00  
    18.   
    19.   
    20.   
    21.    2 PARALLEL_TO_SERIAL            SELECT /*+ PIV_SSF */ SYS_OP_MSR(COUNT(*)) F  
    22.                                    ROM (SELECT /*+ NO_EXPAND ROWID(A2)  
    23.   
    24.    3 PARALLEL_COMBINED_WITH_PARENT  
    25.   
    26. SQL> select count(*) from t;  
    27.   
    28.   COUNT(*)  
    29. ----------  
    30.   30245882  
    31.   
    32. 已用时间:  00: 04: 34.02  
    33.   
    34. Execution Plan  
    35. ----------------------------------------------------------  
    36.    0      SELECT STATEMENT Optimizer=CHOOSE  
    37.    1    0   SORT (AGGREGATE)  
    38.    2    1     TABLE ACCESS (FULL) OF 't'  
    39.   
    40.   
    41.   
    42. SQL>  


     
    http://blog.csdn.net/u012354280/article/details/16369149
     
    http://blog.csdn.net/fycghy0803/article/details/8082172
  • 相关阅读:
    如何分析redis中的慢查询
    redis订阅关闭异常解决
    异常解决:Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
    linux下postgres的安装
    springboot tomcat配置参数列表
    如何把web.xml中的context-param、Servlet、Listener和Filter定义添加到SpringBoot中
    electron-builder 由于网络原因无法下载问题解决
    Handshake failed due to invalid Upgrade header: null 解决方案
    Linux-006-执行Shell脚本报错 $' ':command not found
    VUE-013-为elementUI 设置 tootip 宽度
  • 原文地址:https://www.cnblogs.com/diyunpeng/p/6970598.html
Copyright © 2011-2022 走看看