久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

oracle中使用索引與不使用索引的性能對比分析

163次閱讀
沒有評論

共計 948 個字符,預計需要花費 3 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

oracle 中使用索引與不使用索引的性能對比分析,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

前言

Oracle 存儲索引的數據結構是 B * 樹。位圖索引也是如此,僅僅只是是葉子節點不同 B * 數索引;

索引由根節點、分支節點和葉子節點組成。上級索引塊包括下級索引塊的索引數據,葉節點包括索引數據和確定行實際位置的 rowid。

使用索引的目的:

加快查詢速度

降低 I / O 操作

消除磁盤排序

何時使用索引:

查詢返回的記錄數

排序表 40%

非排序表 7%

表的碎片較多(頻繁添加、刪除)

索引的種類

非唯一索引(最經常使用)

唯一索引

位圖索引

局部有前綴分區索引

局部無前綴分區索引

全局有前綴分區索引

散列分區索引

基于函數的索引

oracle 使用索引與不使用的性能

首先準備一張百萬條數據的表,這樣分析數據差距更形象!

下面用分頁表數據對表進行分析,根據 EMP_ID 字段排序,使用索引和不使用索引性能差距!

sql 查詢語法準備,具體業務根據具體表書寫 sql 語法:

SELECT *
FROM (SELECT ROW_.*, ROWNUM ROWNUM_
FROM (SELECT *
FROM KQS_SQ_INFO i 
ORDER BY i.EMP_ID desc ) ROW_
WHERE ROWNUM  = 20)
WHERE ROWNUM_  = 10;

使用 explain plan for 可以分析 sql

如下:

explain plan for SELECT *
FROM (SELECT ROW_.*, ROWNUM ROWNUM_
FROM (SELECT *
FROM KQS_SQ_INFO i 
ORDER BY i.EMP_ID desc ) ROW_
WHERE ROWNUM  = 20)
WHERE ROWNUM_  = 10;

計算出 SQL 性能,使用

select * from TABLE(dbms_xplan.display); 打印出性能分析表 

如下圖:

使用索引前:

oracle 中使用索引與不使用索引的性能對比分析

關于 oracle 中使用索引與不使用索引的性能對比分析問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注丸趣 TV 行業資訊頻道了解更多相關知識。

向 AI 問一下細節

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-04發表,共計948字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 金昌市| 弥渡县| 万全县| 奎屯市| 千阳县| 大英县| 昭通市| 宁德市| 武汉市| 永顺县| 多伦县| 榆社县| 宁化县| 韶山市| 什邡市| 馆陶县| 板桥市| 吉木乃县| 海城市| 尤溪县| 海兴县| 进贤县| 柳州市| 八宿县| 灯塔市| 乐清市| 綦江县| 罗源县| 凤山市| 晋江市| 阿拉善左旗| 临海市| 南陵县| 屏边| 阳信县| 陆河县| 凤翔县| 洛宁县| 莱州市| 杂多县| 兴义市|