select*fromv$versionwhererownum<" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

SQLplus 下行預取特性

系統 2406 0

?? 通常情況下數據庫引擎每訪問一個數據塊將產生至少一個邏輯讀。而行預取與邏輯讀息息相關。行預取是指當客戶端從數據庫獲取數據時
可以采用單行也可以采用多行方式返回數據。當采用多行方式時,則會預取多條記錄存儲在客戶端內存中以避免后續多次該數據的請求所致的
各種開銷(LIO,PIO,NET IO)。一般預取行數越大,則所產生的開銷越小,當達到臨界值時其變化不大。
一、演示


二、分析
? 假定使用select * from t發布查詢,此時表上每個數據塊為16行,且arraysize 的設置為15(缺省值),
? 則
??? 第一次fetch, 讀第一塊15行,此時產生第1次consistent gets
??? 第二次fetch, 讀第一塊1行,此時產生第2次consistent gets,讀第二塊14行,此時產生第3次consistent gets
??? 第三次fetch, 讀第二塊2行,此時產生第4次consistent gets,讀第三塊13行,此時產生第5次consistent gets
???? 依此內推
? 假定此時表上每個數據塊為10行,即數據塊上的行數小于arraysize的情形(10<15)
???? 第一次fetch,讀第一塊10行,此時產生第1次consistent gets
?????????? 讀第二塊5行,此時產生第2次consistent gets
???? 第二次fetch,讀第二塊5行,此時產生第3次consistent gets
?????????? 讀第三塊10行,此時產生第4次consistent gets
???? 第三次fetch,讀第四塊10行,此時產生第5次consistent gets
?????????? 讀第五塊5行,此時產生第6次consistent gets
??? 依此內推
???
? 當arraysize設置為n(15)時,則Oracle從buffer一次fetch n(15)行,然后將數據返回給客戶端.接下來Oracle會再次從buffer中fetch第二次
? ,返回下一個n(15)行?
? 由上可知,在fetch期間可能會產生多次consistent gets。
?
? 當設置了較大的arraysize,從演示中可以看出SQL*Net的sent與received也隨之減少。即請求時往返的次數明顯降低。??
三、總結
? 1、arraysize參數用于控制返回給客戶端預取的行數,缺省值為15
? 2、邏輯讀為consistent gets + db block gets,為簡化描述,下面直接使用邏輯讀
? 3、當行預取值設定為1時,對于全表掃描,每返回一個行需要產生一個邏輯讀,如果設定的行預取值大于單塊存儲的行數,則邏輯讀接近于塊數
? 4、邏輯讀的值隨arraysize的增大而減小,當達到臨界值(即略大于表上單塊存儲的行束)之后其變化趨勢不大
? 5、SQL*Net的sent與received的值會隨著arraysize的增大而減小
? 6、邏輯讀通常會多于一次,見第二點的分析
? 7、對于聚合運算的情形(無索引),SQL引擎內部使用行預取。即每次SQL引擎訪問一個塊的時候,抽取其中的所有行。其邏輯讀接近于塊數
? 8、在使用索引的情形下,consistent gets與arraysize無關
四、更多參考?

父游標、子游標及共享游標

綁定變量及其優缺點

dbms_xplan之display_cursor函數的使用

dbms_xplan之display函數的使用

執行計劃中各字段各模塊描述

使用 EXPLAIN PLAN 獲取SQL語句執行計劃

啟用 AUTOTRACE 功能

函數使得索引列失效

Oracle 綁定變量窺探

Oracle 自適應共享游標 ?

??

?

SQLplus 下行預取特性


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 临邑县| 梁河县| 墨脱县| 肥东县| 贵德县| 安远县| 太和县| 安图县| 金昌市| 县级市| 牡丹江市| 扎赉特旗| 兴义市| 二连浩特市| 商洛市| 莱州市| 平遥县| 泸溪县| 平山县| 江北区| 酉阳| 敦化市| 弥勒县| 扶风县| 陵川县| 搜索| 嘉善县| 济南市| 宜春市| 南平市| 北票市| 盱眙县| 侯马市| 安新县| 临潭县| 类乌齐县| 珠海市| 潞城市| 华亭县| 南城县| 保亭|