一次調整arraysize減少邏輯讀
該引數只能在當前會話設定。不是oracle端設定的,而是sqlplus設定的,所以我們不能使用設定初始化引數alter system set來改變它,
而是使用set命令,該引數的含義就是sqlplus裡預抓取的行數,預設值是15行,也就是伺服器程式每次從buffer cache中複製15行到PGA中,從PGA
在傳送給客戶端。與之相關的另一個引數就是SDU(session data unit),預抓取在PGA所佔的記憶體大小和SDU大小相關,預設是8K.
SQL> show arraysize
arraysize 15
SQL> create table jason as select * from dba_objects;
Table created.
SQL>
SQL>
SQL> select count(1) from dba_objects;
COUNT(1)
———-
50042
SQL>
SQL>
SQL> set autot trace
SQL>
SQL>
SQL>
SQL> select * from jason;
50042 rows selected.
Execution Plan
———————————————————-
Plan hash value: 1258222954
—————————————————————————
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
—————————————————————————
| 0 | SELECT STATEMENT | | 44426 | 7679K| 155 (2)| 00:00:02 |
| 1 | TABLE ACCESS FULL| JASON | 44426 | 7679K| 155 (2)| 00:00:02 |
—————————————————————————
Note
—–
– dynamic sampling used for this statement
Statistics
———————————————————-
0 recursive calls
0 db block gets
3992 consistent gets
0 physical reads
0 redo size
2544199 bytes sent via SQL*Net to client
37188 bytes received via SQL*Net from client
3338 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
50042 rows processed
SQL> set arraysize 400
SQL>
SQL>
SQL>
SQL> /
SQL> /
50042 rows selected.
Execution Plan
———————————————————-
Plan hash value: 1258222954
—————————————————————————
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
—————————————————————————
| 0 | SELECT STATEMENT | | 44426 | 7679K| 155 (2)| 00:00:02 |
| 1 | TABLE ACCESS FULL| JASON | 44426 | 7679K| 155 (2)| 00:00:02 |
—————————————————————————
Note
—–
– dynamic sampling used for this statement
Statistics
———————————————————-
0 recursive calls
0 db block gets
817 consistent gets
0 physical reads
0 redo size
1956586 bytes sent via SQL*Net to client
1867 bytes received via SQL*Net from client
127 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
50042 rows processed
可以看到當我們把arraysize從預設的15調整到400後consistent gets邏輯讀從原來的3992下降到817,bytes received via SQL*Net from client相關的值也有明顯的下降。
arraysize引數的設定對大資料的範圍比如全表掃效能提高還是比較大的,所以在網路頻寬允許的情況下適當調大arraysize和估算SDU的值,對減少
邏輯讀,減少網路互動性,從而介紹CPU的消耗幫助還是比較大的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23732248/viewspace-2285222/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 適當調大arraysize減少邏輯讀
- 8-01. 邏輯調整及補充內容
- MySQL調優篇 | 邏輯架構解讀(1)MySql架構
- oracle邏輯讀過程Oracle
- 《底層邏輯》讀後感
- sql生成可讀性邏輯圖SQL
- 在Oracle中,什麼是物理讀和邏輯讀?Oracle
- 記一次北京某大學邏輯漏洞挖掘
- [20231124]奇怪的高邏輯讀4.txt
- [20230216]奇怪的高邏輯讀3.txt
- [20210224]fetch r=0算邏輯讀嗎.txt
- [20210220]gdb跟蹤邏輯讀2.txt
- 微信支付如何提高安全係數?花一分鐘調整4個設定,減少安全隱患
- MediaRadar:2020年以來程式化廣告整體支出減少9%
- 邏輯是調起輸入法和設定初始
- 深度解讀GaussDB邏輯解碼技術原理
- [20210301]為什麼邏輯讀這麼多.txt
- [20210219]全表掃描邏輯讀問題.txt
- 路透調查:亞洲企業資本支出或平均減少4%
- 記一次 edu 證書站失敗的邏輯漏洞
- 邏輯題
- 透過一次GC調整使Python速度提高20%GCPython
- Yann LeCun、吳恩達的新年AI預測:強調“少樣本學習”,AI恐慌在減少Yann LeCun吳恩達AI
- 如何減少攻擊面
- laravel欄位減少增加Laravel
- 讀人工智慧全傳06邏輯程式設計人工智慧程式設計
- [20180425]為什麼走索引邏輯讀反而高.txt索引
- 記一次 對 xfs格式 邏輯捲進行擴縮容
- 中國的首要任務:能源結構調整和碳減排
- 邏輯運算子
- 邏輯推理20201028
- 量子邏輯閘
- 邏輯迴歸邏輯迴歸
- java邏輯控制Java
- [20180410]為什麼2個邏輯讀不一樣.txt
- Lvm邏輯卷管理、建立、使用、擴充套件、縮減、遷移、快照、恢復LVM套件
- 減少Android APK的大小99.99%AndroidAPK
- face 31減少http請求HTTP