2011-11-30 173 views
1

我想減少SQL使用的緩衝區大小。 以下是解釋計劃。減少SQL使用的緩衝區大小(Oracle性能調整)

望着解釋計劃我傾向於把重點放在3線以下

3 NESTED LOOPS Cost: 1,407 Bytes: 11,902,228 Cardinality: 276,796  

因爲成本跳從55(第2行),以1407

​​

我身邊有幾個問題這個:

  1. 我上面的分析是專注於那些線是否正確?
  2. 在第2行,它告訴我所用的索引是S_PROD_LN_PROD_U1,但實際上我們在S_PROD_LN表中沒有S_PROD_LN_PROD_U1。儘管我們有S_PROD_LN_U1索引。解釋計劃使用某種「虛擬」索引的任何原因?
  3. 什麼是視圖中查看SYS.VW_NSO_1的含義4個

非常感謝提前。

Plan 
SELECT STATEMENT HINT: FIRST_ROWSCost: 2,101 Bytes: 2,563 Cardinality: 1             
    32 NESTED LOOPS Cost: 2,101 Bytes: 2,563 Cardinality: 1            
     29 NESTED LOOPS Cost: 2,097 Bytes: 2,518 Cardinality: 1           
      27 NESTED LOOPS Cost: 2,095 Bytes: 2,500 Cardinality: 1          
       24 HASH JOIN RIGHT ANTI Cost: 2,092 Bytes: 2,444 Cardinality: 1         
        4 VIEW VIEW SYS.VW_NSO_1 Cost: 1,407 Bytes: 8,857,472 Cardinality: 276,796        
         3 NESTED LOOPS Cost: 1,407 Bytes: 11,902,228 Cardinality: 276,796       
          1 TABLE ACCESS FULL TABLE SIEBEL.S_PROD_LN Cost: 83 Bytes: 528 Cardinality: 24      
          2 INDEX RANGE SCAN INDEX (UNIQUE) SIEBEL.S_PROD_LN_PROD_U1 Cost: 55 Bytes: 247,359 Cardinality: 11,779      
        23 NESTED LOOPS OUTER Cost: 104 Bytes: 39,200 Cardinality: 28        
         20 NESTED LOOPS OUTER Cost: 50 Bytes: 37,604 Cardinality: 28       
          17 NESTED LOOPS OUTER Cost: 50 Bytes: 36,540 Cardinality: 28      
           14 NESTED LOOPS OUTER Cost: 23 Bytes: 35,700 Cardinality: 28     
            11 NESTED LOOPS OUTER Cost: 23 Bytes: 34,300 Cardinality: 28    
             8 HASH JOIN RIGHT OUTER Cost: 23 Bytes: 32,900 Cardinality: 28  
              5 TABLE ACCESS FULL TABLE SIEBEL.S_PROD_INT_CRSE Cost: 2 Bytes: 32,718 Cardinality: 82  
              7 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_PROD_INT Cost: 20 Bytes: 11,252 Cardinality: 29  
               6 INDEX RANGE SCAN INDEX SIEBEL.S_PROD_INT_X2_X Cost: 3 
             10 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_LIT Cost: 0 Bytes: 50 Cardinality: 1   
              9 INDEX UNIQUE SCAN INDEX (UNIQUE) SIEBEL.S_LIT_P1 Cost: 0 Cardinality: 1  
            13 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_LIT Cost: 0 Bytes: 50 Cardinality: 1    
             12 INDEX UNIQUE SCAN INDEX (UNIQUE) SIEBEL.S_LIT_P1 Cost: 0 Cardinality: 1   
           16 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_PROD_LN Cost: 1 Bytes: 30 Cardinality: 1     
            15 INDEX UNIQUE SCAN INDEX (UNIQUE) SIEBEL.S_PROD_LN_P1 Cost: 0 Cardinality: 1    
          19 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_PROD_LN Cost: 0 Bytes: 38 Cardinality: 1      
           18 INDEX UNIQUE SCAN INDEX (UNIQUE) SIEBEL.S_PROD_LN_P1 Cost: 0 Cardinality: 1     
         22 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_PROD_INT Cost: 2 Bytes: 57 Cardinality: 1      
          21 INDEX UNIQUE SCAN INDEX (UNIQUE) SIEBEL.S_PROD_INT_P1 Cost: 1 Cardinality: 1      
       26 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_VOD Cost: 3 Bytes: 56 Cardinality: 1         
        25 INDEX RANGE SCAN INDEX (UNIQUE) SIEBEL.S_VOD_U2 Cost: 2 Cardinality: 1        
      28 INDEX RANGE SCAN INDEX SIEBEL.S_ISS_OBJ_DEF_M3 Cost: 2 Bytes: 36 Cardinality: 2          
     31 TABLE ACCESS BY INDEX ROWID TABLE SIEBEL.S_VOD_VER Cost: 4 Bytes: 45 Cardinality: 1           
      30 INDEX RANGE SCAN INDEX (UNIQUE) SIEBEL.S_VOD_VER_U1 Cost: 2 Cardinality: 1          

回答