激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫 - Oracle - 深入oracle分區(qū)索引的詳解

深入oracle分區(qū)索引的詳解

2019-11-22 15:19oracle教程網(wǎng) Oracle

本篇文章是對oracle分區(qū)索引進行了詳細的分析介紹,需要的朋友參考下

表可以按range、hash、list分區(qū),表分區(qū)后,其上的索引和普通表上的索引有所不同,oracle對于分區(qū)表上的索引分為2類,即局部索引和全局索引,下面分別對這2種索引的特點和局限性做個總結(jié)。

局部索引local index
1.局部索引一定是分區(qū)索引,分區(qū)鍵等同于表的分區(qū)鍵,分區(qū)數(shù)等同于表的分區(qū)數(shù),一句話,局部索引的分區(qū)機制和表的分區(qū)機制一樣。
2.如果局部索引的索引列以分區(qū)鍵開頭,則稱為前綴局部索引。
3.如果局部索引的列不是以分區(qū)鍵開頭,或者不包含分區(qū)鍵列,則稱為非前綴索引。
4.局部索引只能依附于分區(qū)表上。
5.前綴和非前綴索引都可以支持索引分區(qū)消除,前提是查詢的條件中包含索引分區(qū)鍵。
6.局部索引只支持分區(qū)內(nèi)的唯一性,無法支持表上的唯一性,因此如果要用局部索引去給表做唯一性約束,則約束中必須要包括分區(qū)鍵列。
7.局部分區(qū)索引是對單個分區(qū)的,每個分區(qū)索引只指向一個表分區(qū);全局索引則不然,一個分區(qū)索引能指向n個表分區(qū),同時,一個表分區(qū),也可能指向n個索引分區(qū),對分區(qū)表中的某個分區(qū)做truncate或者move,shrink等,可能會影響到n個全局索引分區(qū),正因為這點,局部分區(qū)索引具有更高的可用性。
8.位圖索引只能為局部分區(qū)索引。
9.局部索引多應(yīng)用于數(shù)據(jù)倉庫環(huán)境中。

全局索引global index

1.全局索引的分區(qū)鍵和分區(qū)數(shù)和表的分區(qū)鍵和分區(qū)數(shù)可能都不相同,表和全局索引的分區(qū)機制不一樣。
2.全局索引可以分區(qū),也可以是不分區(qū)索引,全局索引必須是前綴索引,即全局索引的索引列必須是以索引分區(qū)鍵作為其前幾列。
3.全局索引可以依附于分區(qū)表;也可以依附于非分區(qū)表。
4.全局分區(qū)索引的索引條目可能指向若干個分區(qū),因此,對于全局分區(qū)索引,即使只截斷一個分區(qū)中的數(shù)據(jù),都需要rebulid若干個分區(qū)甚至是整個索引。
5.全局索引多應(yīng)用于oltp系統(tǒng)中。
6.全局分區(qū)索引只按范圍或者散列分區(qū),hash分區(qū)是10g以后才支持。
7.oracle9i以后對分區(qū)表做move或者truncate的時可以用update global indexes語句來同步更新全局分區(qū)索引,用消耗一定資源來換取高度的可用性。
8.表用a列作分區(qū),索引用b做局部分區(qū)索引,若where條件中用b來查詢,那么oracle會掃描所有的表和索引的分區(qū),成本會比分區(qū)更高,此時可以考慮用b做全局分區(qū)索引。

分區(qū)索引字典
DBA_PART_INDEXES
 分區(qū)索引的概要統(tǒng)計信息,可以得知每個表上有哪些分區(qū)索引,分區(qū)索引的類型(local/global)
Dba_ind_partitions  每個分區(qū)索引的分區(qū)級統(tǒng)計信息
Dba_indexes/dba_part_indexes 可以得到每個表上有哪些非分區(qū)索引

索引重建
Alter index idx_name rebuild partition index_partition_name [online nologging]
需要對每個分區(qū)索引做rebuild,重建的時候可以選擇online(不會鎖定表),或者nologging建立索引的時候不生成日志,加快速度。
Alter index rebuild idx_name [online nologging]
對非分區(qū)索引,只能整個index重建
分區(qū)索引實例

復(fù)制代碼代碼如下:


--1、建分區(qū)表  
CREATE TABLE P_TAB(  
C1 INT,  
C2 VARCHAR2(16),  
C3 VARCHAR2(64),  
C4 INT ,  
CONSTRAINT PK_PT PRIMARY KEY (C1)  
)  
PARTITION BY RANGE(C1)(  
PARTITION P1 VALUES LESS THAN (10000000),  
PARTITION P2 VALUES LESS THAN (20000000),  
PARTITION P3 VALUES LESS THAN (30000000),  
PARTITION P4 VALUES LESS THAN (MAXVALUE)  
);  
--2、建全局分區(qū)索引  
CREATE INDEX IDX_PT_C4 ON P_TAB(C4) GLOBAL PARTITION BY RANGE(C4)  
(  
PARTITION IP1 VALUES LESS THAN(10000),  
PARTITION IP2 VALUES LESS THAN(20000),  
PARTITION IP3 VALUES LESS THAN(MAXVALUE)  
);  
--3、建本地分區(qū)索引  
CREATE INDEX IDX_PT_C2 ON P_TAB(C2) LOCAL (PARTITION P1,PARTITION P2,PARTITION P3,PARTITION P4);  
--4、建全局分區(qū)索引(與分區(qū)表分區(qū)規(guī)則相同的列上)  
CREATE INDEX IDX_PT_C1  
ON P_TAB(C1)  
GLOBAL PARTITION BY RANGE (C1)  
(  
PARTITION IP01 VALUES LESS THAN (10000000),  
PARTITION IP02 VALUES LESS THAN (20000000),  
PARTITION IP03 VALUES LESS THAN (30000000),  
PARTITION IP04 VALUES LESS THAN (MAXVALUE)  
);  
--5、分區(qū)索引數(shù)據(jù)字典查看  
SELECT * FROM USER_IND_PARTITIONS;  
SELECT * FROM USER_PART_INDEXES;  

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品一区二区久久久久久按摩 | 黄色一级片在线免费观看 | 亚洲午夜在线视频 | 97久色| 嗯~啊~弄嗯~啊h高潮视频 | 亚洲第一激情 | 久久不雅视频 | 午夜a狂野欧美一区二区 | 欧美大屁股精品毛片视频 | 狠狠干夜夜草 | 免费看性xxx高清视频自由 | 国产91久久精品一区二区 | 日韩精品久久久久久 | 久久国产精品系列 | 成人午夜精品久久久久久久蜜臀 | 日本特级a一片免费观看 | 国产一级毛片网站 | 日韩字幕| 欧美在线成人影院 | 国产一区视频在线观看免费 | 黄色片网站免费看 | 夜夜夜操操操 | 国产精品视频一区二区三区四 | 鲁丝片一区二区三区免费入口 | 日韩 综合 | 国产在线色 | 国产一级免费不卡 | 国产亚洲精品久久久久久久久久 | 亚洲天堂午夜 | 欧美成人自拍 | 免费视频www在线观看 | 亚洲精品av在线 | 爱草成年 | 日韩视频精品一区 | 色中色在线播放 | 日日操操 | 欧美在线观看视频一区二区 | 日本一区二区不卡高清 | 成人在线视频播放 | 亚洲不卡 | 国产一区日韩精品 |