国产精品色无码视频,国产av毛片影院精品资源,亚洲人成网站77777·c0m,囯产av无码片毛片一级,夜夜操www99视频,美女白嫩胸交在线观看,亚洲a毛片性生活

薈聚奇文、博采眾長、見賢思齊
當(dāng)前位置:公文素材庫 > 計(jì)劃總結(jié) > 工作總結(jié) > oracle index學(xué)習(xí)總結(jié)

oracle index學(xué)習(xí)總結(jié)

網(wǎng)站:公文素材庫 | 時(shí)間:2019-05-29 22:25:48 | 移動(dòng)端:oracle index學(xué)習(xí)總結(jié)

oracle index學(xué)習(xí)總結(jié)

oracleindex

1.index需要儲存空間和I/O操作。2.index的目的是加快select的速度的。

3.insert,update,delete數(shù)據(jù)oracle會同時(shí)對索引進(jìn)行相應(yīng)的調(diào)整,因此會增加一定的消耗。4.使用index一定能加快select速度嗎?不是的,數(shù)據(jù)少和巨大時(shí)index會影響select的速度,因此如果查詢速度可以滿足,就不要建index。5.Index對null無效。

分類:

一、從物理角度

1.partitionedornonpartitioned:分區(qū)或不分區(qū)索引。分區(qū)索引用于分區(qū)表。

2.B-tree(平衡樹):normalorreversekey正常和倒序索引。

oracle默認(rèn)索引方式,平衡樹形索引,在葉子節(jié)點(diǎn)上有雙向鏈表,加快索引定位速度,oracle有一定的優(yōu)化,可以根據(jù)鏈表直接定位記錄,而不走樹,綜合使用提高速度。見圖1和圖2。

圖1

3.bitmap(位圖):用二進(jìn)制的0、1來構(gòu)建索引,在進(jìn)行or操作時(shí)非?,但要注意bitmap對于并發(fā)操作時(shí),改一條會鎖了很多記錄,因?yàn)樗械挠涗浽谝粋(gè)索引條目上,所以修改或增加時(shí)會一起鎖定,見圖3.

區(qū)別和使用場景B-tree索引Bitmap索引Suitableforhigh-cardinalitySuitableforlow-cardinalitycolumns(用在記錄相同的columns(記錄對應(yīng)的列重復(fù)值較多的列上,如果性別只有兩種值:男和女)。的值較少,如主鍵,姓名等)。UpdatesonkeysrelativelyUpdatestokeycolumnsveryexpensiveinexpensive(在做updated(在做updated時(shí),bitmap的消耗是昂貴的)。時(shí),b-tree只消耗很少的資源)。InefficientforqueriesusingEffcientforqueriesusingORpredicatesORpredicates(where子句中(where子句中or條件較多時(shí)速度非?欤﹐r條件較多時(shí)速度較慢)UsefulforOLTP(記錄頻繁的Usefulfordatawarehousing(OLIP)數(shù)據(jù)倉庫,查insert和update,查詢相對較少詢系統(tǒng)等較少做數(shù)據(jù)修改的系統(tǒng)。的系統(tǒng))。

二、邏輯角度:

1.singlecolumnorconcatenated單索引和組合索引。2.uniqueornonunique:唯一索引和非唯一索引。

3.function-based:基于函數(shù)的索引,把一些where條件作為函數(shù)。4.domain:數(shù)據(jù)庫以外的索引,如文件等。三、創(chuàng)建index時(shí)的注意事項(xiàng):

1.balancequeryandDMLneeds:索引的目的是為了提高查詢速度,但它會加重DML的負(fù)擔(dān)。2.placeinseparatetablespace:索引和表應(yīng)該放在不同的表空間,如果把索引和表放在同一個(gè)空間,會引起競爭,因?yàn)樵谧x取一個(gè)表時(shí),記錄和索引是同時(shí)讀取,修改也同步進(jìn)行的。3.useuniformextentsizes:Multipesoffiveblocksorminimumextentsizefortablespace.索引空間是extent是大小應(yīng)該是5blocks的倍數(shù),因?yàn)閛racle是一次讀出5個(gè)blocks,如果你的extends是6,就會造成2次I/O操作。

4.considernologgingforlargeindexes:在創(chuàng)建索引時(shí)可以關(guān)閉索引對應(yīng)的redo日志,提高速度,因?yàn)樗饕蛿?shù)據(jù)不同,如果索引創(chuàng)建時(shí)出意外,數(shù)據(jù)還在,就再創(chuàng)建一次好了。5.INITRANSshouldgenerallybehigheronindexesthanonthecorrespondingtables:INITRANS參數(shù)比對應(yīng)的表的值大些,因?yàn)樗饕彩且驯碛涗浀姆绞奖4娴,但索引大大小于表的記錄,所以一個(gè)block中存儲的索引記錄就大大多于表在一個(gè)block中的記錄,加大INITRANS可以增加在一個(gè)block中的事務(wù)的并發(fā)數(shù),就提高了效率。

6.rebuildingindexes:如果刪除一條記錄,對應(yīng)的索引僅僅是做了邏輯刪除,只有一個(gè)block中的全部索引都被標(biāo)識為邏輯刪除,orcle才會真正的回收block,這時(shí)這個(gè)block才能被再次利用,在表的記錄做update時(shí),index是先做了邏輯刪除,然后再為該記錄新建一個(gè)索引的,所以表在頻繁的增刪改后,就會造成index對應(yīng)的block不完整,和系統(tǒng)碎片的情況是一致的,造成空間浪費(fèi),加大index的I/O,影響性能。而rebuildingindexes就可以回收原來的,重新構(gòu)建一個(gè)高效的索引,但重構(gòu)時(shí)會鎖表。語法:alterindexindex_namerebuild;

7.coalescingindexes:整理索引碎片,效率高,不鎖表。

語法:Alterindexindex_namecoalesce;

四.管理索引

1.分析索引:

1)select*fromuser_objectswhereobject_type="INDEX"2)analyzeindexPK_T_TICKETvalidatestructure;

3)select*fromindex_stats;

HEIGHT(b-treeBLOCKS(索引NAME(索引LF_ROWS(記DEL_LF_ROWS的高度)有多少塊)名)錄數(shù))(刪除記錄數(shù))2256PK_T_TICKET82775792當(dāng)DEL_LF_ROWS/LF_ROWS>15%時(shí)應(yīng)進(jìn)行索引重建或索引碎片整理。

2.drop索引:當(dāng)屁量導(dǎo)入大量數(shù)據(jù)時(shí),索引會影響導(dǎo)入速度?梢袁F(xiàn)在drop掉,導(dǎo)入后再重建索引。

3.監(jiān)控索引:

1)設(shè)置監(jiān)控那個(gè)索引alterindexpk_t_ticketmonitoringusage;

2)查看該索引用沒有使用select*fromv$object_usage3)selectcount(1)frompk_t_ticket;

4)查看該索引用沒有使用select*fromv$object_usage5)關(guān)閉監(jiān)控alterindexpk_t_ticketnomonitoringusage;監(jiān)控一個(gè)月就大概可以知道那些是無用的索引了。6)查詢索引的詳細(xì)信息:select*fromall_ind_columnswhereindex_name="PK_T_TICKET".那個(gè)表的那個(gè)列上有索引及詳細(xì)信息。

擴(kuò)展閱讀:

友情提示:本文中關(guān)于《oracle index學(xué)習(xí)總結(jié)》給出的范例僅供您參考拓展思維使用,oracle index學(xué)習(xí)總結(jié):該篇文章建議您自主創(chuàng)作。

來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請聯(lián)系我們及時(shí)刪除。


oracle index學(xué)習(xí)總結(jié)》由互聯(lián)網(wǎng)用戶整理提供,轉(zhuǎn)載分享請保留原作者信息,謝謝!
鏈接地址:http://www.hmlawpc.com/gongwen/747174.html
相關(guān)文章