0% ont trouvé ce document utile (0 vote)
18 vues68 pages

Méthodes d'accès aux données dans Oracle 10g

Cours de base de données

Transféré par

hitohitohito
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPT, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
18 vues68 pages

Méthodes d'accès aux données dans Oracle 10g

Cours de base de données

Transféré par

hitohitohito
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPT, PDF, TXT ou lisez en ligne sur Scribd

ADMINISTRATION

D’APPLICATIONS
BASE DE DONNEES

MÉTHODES D’ACCÈS DANS


ORACLE 10G

DBADMIN [Link] 1
PERFORMANCE DES REQUÊTES ET
DES APPLICATIONS

 ACCÈS AUX DONNÉES FACTEUR


PRIMORDIAL DES PERFORMANCES

 COÛT DES E/S TRÈS ÉLEVÉ


• À CAUSE DE LA NATURE DES MÉMOIRES
SECONDAIRES
• À CAUSE DU VOLUME DE DONNÉES
NÉCESSITÉ D’UNE ORGANISATION DES
DONNÉES ET D’UNE MÉTHODE D’ACCÈS ASSOCIÉE

DBADMIN [Link] 2
ORGANISATIONS ET MÉTHODES
D’ACCÈS

 ORGANISATION : MÉTHODE POUR


RANGER DES TUPLES DANS UNE
TABLE

 MÉTHODE D’ACCÈS : MANIÈRE POUR


RETROUVER LES TUPLES
SÉQUENTIELLE (HEAP)
INDEXÉE (INDEXED)
HACHÉE (HASHED)
DBADMIN [Link] 3
ORGANISATIONS ET MÉTHODES
D’ACCÈS
 FONCTIONNALITÉS EXISTANT AU
NIVEAU DU SYTÈME
D’EXPLOITATION POUR LES
FICHIERS
 OFFERTES PAR LE SGBD POUR LE
STOCKAGE DES TABLES
 PERMETTENT D’AMÉLIORER
CONSIDÉRABLEMENT LES
PERFORMANCES SI LES TABLES
SONT IMPORTANTES
DBADMIN [Link] 4
ETUDE THÉORIQUE DES
ORGANISATIONS
 1 ORGANISATION INDEXÉE
 NOTION D’INDEX
• STRUCTURE DE DONNÉES QUI POUR DES
VALEURS D’ATTRIBUTS CONTIENT LES
ADRESSES (ROWID) DES TUPLES
CORRESPONDANTS DANS LA TABLE

• PRINCIPE DE LECTURE
• LIRE L’INDEX E/S
• RECHERCHE EN MÉMOIRE
• LIRE DANS LA TABLE E/S
DBADMIN [Link] 5
INDEX HIÉRARCHISÉ

 BÂTI SUR LA CLÉ


LA CLÉ EST TRANSFORMÉE EN ENTIER
PAR DIFFÉRENTES MÉTHODES

 INDEX TRIÉ DIVISÉ EN NOEUDS DONT


LES ADRESSES SONT DONNÉES PAR
LES NIVEAUX SUPÉRIEURS

 ÉVOLUTION CONFORME AU MODÈLE


THÉORIQUE DES ARBRES B
DBADMIN [Link] 6
ARBRE B

 GRAPHE ÉQUILIBRÉ DONT TOUTES LES


FEUILLES SONT AU MÊME NIVEAU

 CARACTÉRISÉ PAR UN ORDRE m

 INDEX DIVISÉ EN NŒUDS


CHAQUE NŒUD CONTIENT k CLÉS
TRIÉES AVEC m <= k <= 2m
SAUF LA RACINE QUI EN CONTIENT DE 1
À 2m

DBADMIN [Link] 7
ARBRE B

 UN NŒUD NON TERMINAL POSSÈDE


k+1 FILS

 LES CLÉS DU PÈRE DONNENT LES


BORNES ENTRE LESQUELLES PEUVENT
VARIER LES CLÉS DE CHAQUE FILS

NOEUD E/S PHYSIQUE

DBADMIN [Link] 8
ARBRE B EXEMPLE

31 ORDRE 2

15, 25 34, 50, 60, 70

5, 10 18, 22 27,28 32, 33 35,38,39 52,53 62,64 72,75

DBADMIN [Link] 9
ARBRE B
 STRUCTURE DU NOEUD

P0 X1A1P1 XnAnPn

Xi VALEUR DE LA Clé
Ai POINTEUR SUR LES DONNÉES
PI POINTEUR SUR LE NIVEAU INFÉRIEUR

DBADMIN [Link] 10
RECHERCHE ET MISE A JOUR DANS
UN ARBRE B
 RECHERCHE
• RECHERCHE DAND L’INDEX
• LECTURE DANS LA TABLE
SIMPLE ET RAPIDE

 INSERTION
• INSERTION AU NIVEAU LE PLUS BAS
• ÉCLATEMENT ÉVENTUELLE DU NŒUD ET
REMONTÉE DE LA CLÉ MÉDIANE
PEUT ÊTRE COMPLEXE
DBADMIN [Link] 11
MISE À JOUR DANS UN ARBRE B
 SUPPRESSION

• REDISTRIBUTION DES CLÉS


• CONCATÉNATION

PEUT ÊTRE COMPLEXE

DBADMIN [Link] 12
ARBRE B+
 TOUTES LES CLÉS SONT RÉPÉTÉES
DANS LES NŒUDS QU’ELLES POINTENT

 LA RACINE EST MODIFIÉE POUR QUE


CHAQUE CLÉ POINTE SUR UN NŒUD

 LES DONNÉES SONT STOCKÉES AVEC


L’INDEX AU PLUS BAS NIVEAU

DBADMIN [Link] 13
ARBRE B+
 LES FEUILLES SONT CHAINÉES PAR
ORDRE CROISSANT DES CLÉS POUR
PERMETTRE AUSSI UN ACCÈS
SÉQUENTIEL

DBADMIN [Link] 14
EXEMPLE D’ARBRE B+

28 75
INDEX

15, 25, 28 34, 50, 60,70 75

5, 10 18, 22 27,28 31, 32 35,38,39 52,53 62,64 72,75


15 25 34 50 60 70

DONNÉES
DBADMIN [Link] 15
ETUDE THÉORIQUE DES
ORGANISATIONS
 2 ORGANISATION PAR HASH CODING
(ALÉATOIRE, ACCÈS DIRECT)

 BÂTIE SUR LA CLÉ


 TABLE DÉCOUPÉE EN PAQUETS NUMÉROTÉS
DE FAÇON CONTINUE DONT LA TAILLE EST
CELLE D’UNE ENTRÉE SORTIE PHYSIQUE
 TUPLE RANGÉ DANS LE PAQUET DONNÉ PAR
UNE FONCTION ALÉATOIRE DE LA CLÉ H(clé)

N° (PAQUET) = H(clé)
DBADMIN [Link] 16
ORGANISATION PAR HASH-
CODING
 EXEMPLE
 RÉSERVATION DE 10 PAQUETS POUR LA
TABLE EMP

 H = MODULO (10)

10,50 45 27 59, 9

0 1 2 3 4 5 6 7 8 9

DBADMIN [Link] 17
ORGANISATION PAR HASH-
CODING
 PROBLÈME DE L’ÉVOLUTION DE LA
TABLE

 GESTION DE DÉBORDEMENT
• ADRESSAGE OUVERT (+ 1 SUR N°PAQUET)
• REHACHAGE

 BAISSE DES PERFORMANCES

DBADMIN [Link] 18
ORGANISATION PAR HASH-
CODING
 EXEMPLE SI PAQUET PLEIN AVEC
n= 3,nbpaq= 10, H=modulo(nbpaq)

 HACHAGE LINÉAIRE
• POINTEUR COMPLÉMENTAIRE
• AJOUT D’UN PAQUET À CHAQUE FOIS
QU’UN PAQUET EST PLEIN ET GESTION DE
DÉBORDEMENT
• ÉCLATEMENT DU PAQUET POINTÉ AVEC LA FONCTION
MODULO (2*nbpaq)
78

10,50, 13,3, 34,4, 45, 65 56,6, 88,108,


31,71 22,102 43 27,67 59, 9
20 124 15 16 8

0 1 2 3 4 5 6 7 8 9
DBADMIN [Link] 19
0 1 2 3 4 5 6 7 8 9

ORGANISATION PAR HASH-


CODING
 DEUX FONCTIONS DE HACHAGE
POUR RETROUVER LES TUPLES

 GESTION DE DÉBORDEMENT
TEMPORAIRE
13,3, 34,4, 45, 65
31,71 56,6, 27,67 88,108, 59, 9
22,102 43 124 10,50
20 15 16 8 * 78
0 1 2 3 4 5 6 7 8 9 10

MODULO(20)
MODULO (10)

DBADMIN [Link] 20
MISE EN ŒUVRE DES
ORGANISATIONS DANS ORACLE
 1 ORGANISATIONS INDEXÉES
 EN ARBRE B
 BITMAPS
 EN ARBRE B+

 2 ORGANISATIONS EN CLUSTERS
 INDEXÉE
 PAR HASH CODING

 3 PARTITIONNEMENT

DBADMIN [Link] 21
MISE EN ŒUVRE DES
ORGANISATIONS DANS ORACLE
 1 ORGANISATIONS INDEXÉES

 EN ARBRE B
 BITMAPS

 EN ARBRE B+

DBADMIN [Link] 22
ORGANISATIONS INDEXÉES DANS
ORACLE
 ORGANISATIONS EN ARBRE B

• INDEX UNIQUE ET NON UNIQUE

LA CONTRAINTE PRIMARY KEY ENGENDRE


LA CRÉATION D’UN INDEX UNIQUE

• INDEX COMPOSITE

CRÉÉ SUR PLUSIEURS ATTRIBUTS

DBADMIN [Link] 23
ORGANISATIONS INDEXÉES DANS
ORACLE
 ORDRE DE L’ARBRE EST REMPLACÉ PAR LE
PARAMÈTRE PCTFREE (10% PAR DÉFAUT)

 OPTION COMPUTE STATISTICS POUR


PERMETTRE DE METTRE À JOUR LES DONNÉES
DE L’ OPTIMISEUR DE REQUÊTES

 EN GÉNÉRAL INDEX SUR UN AUTRE


TABLESPACE QUE LA TABLE

DBADMIN [Link] 24
INDEX EXEMPLES

1) CREATE INDEX emp_ename ON


emp_tab(ename);
2) CREATE INDEX emp_ename ON emp_tab(ename)
TABLESPACE users
STORAGE (INITIAL 20K NEXT 20k PCTINCREASE 75)
PCTFREE 0 COMPUTE STATISTICS;

3) CREATE INDEX emp_ename ON emp_tab(ename, empno


COMPUTE STATISTICS;

DBADMIN [Link] 25
ORGANISATIONS INDEXÉES DANS
ORACLE
 INDEX FONDÉ SUR DES FONCTIONS

LA VALEUR DE LA FONCTION EST


CALCULÉE ET STOCKÉE DANS L’INDEX

• FONCTION ARITHMÉTIQUE
• FONCTION PL/SQL
• PAS DE FONCTIONS AGGRÉGATS

DBADMIN [Link] 26
ORGANISATION INDEXÉE
UTILISANT DES FONCTIONS

 EXEMPLE1
CREATE INDEX Idx ON Example_tab
(Column_a + Column_b);

PERMET D’UTILISE L’INDEX POUR DES REQUÊTES


DE TYPE

SELECT * FROM Example_tab WHERE


Column_a + Column_b < 10;

DBADMIN [Link] 27
ORGANISATION INDEXÉE
UTILISANT DES FONCTIONS
 EXEMPLE2

CREATE INDEX uppercase_idx ON employees (UPPER(first_nam

PERMET D’UTILISER L’INDEX POUR DES REQUÊTES


DU TYPE

SELECT * FROM employees WHERE UPPER(first_name)


= 'RICHARD';

DBADMIN [Link] 28
INDEX BITMAP
 TABLE DE BITS EST ASSOCIÉE À
CHAQUE VALEUR DE L’ATTRIBUT
INDEXÉ

 UTILISABLE SEULEMENT POUR LES


CHAMPS AYANT UN NOMBRE DE
VALEURS DISTINCTES FAIBLE(<1% DU
NOMBRE DE TUPLES)
DBADMIN [Link] 29
INDEX BITMAP
 CHAQUE ENTRÉE DANS LA TABLE DE
BITS CORRESPOND À UN TUPLE

 LA VALEUR DE CHAQUE BIT DÉPEND DE


LA VALEUR DE L’ATTRIBUT

DBADMIN [Link] 30
INDEX BITMAP EXEMPLE
TABLES CLIENT

numcli NOM REGION SEXE NIVEAU DE


REVENU

100 LONEY CENTRE M 2


101 VALDURIEZ EST M 2
102 GARDARIN OUEST M 3
103 RICHARD CENTRE F 2
104 AUSTEN OUEST F 1

BITMAP

REGION= CENTRE REGION= EST REGION = OUEST


1 0 0
0 1 0
0 0 1
1 0 0
0 0 1
DBADMIN [Link] 31
INDEX BITMAP EXEMPLE
SELECT COUNT(*) FROM CLIENT

WHERE STATUT = ‘M’


AND REGION IN (‘CENTRAL’, ‘OUEST’)

STATUT= ‘M’ REGION = ‘CENTRE’ REGION = ‘OUEST’


1 1 0 1
1 0 0 0
1
AND 0 OR 1 1
0 1 0 0
0 0 0 0

DBADMIN [Link] 32
INDEX BITMAP EXEMPLE

CREATE BITMAP INDEX ON CLIENT


(REGION)
COMPUTE STATISTICS;

DBADMIN [Link] 33
STRATEGIE D’INDEXATION

 NE PAS INDEXER LES PETITES


TABLES

 INDEXER LES CLÉS


ÉTRANGÈRES,LES ATTRIBUTS
UNIQUES, LES ATTRIBUTS DE
JOINTURE

DBADMIN [Link] 34
STRATEGIE D’INDEXATION
 LIMITER LE NOMBRE D’INDEX SUR
UNE TABLE

IMPORTANCE DE LA MISE A
JOUR

DBADMIN [Link] 35
STRATEGIE D’INDEXATION
 CHOISIR L’ORDRE DES ATTRIBUTS
DANS LE CAS D’INDEX COMPOSITES

 EN 1 ER L’ATTRIBUT LE PLUS SÉLÉCTIF


 ENSUITE LES AUTRES DANS LEUR

ORDRE DE SÉLECTIVITÉ
LES INDEX COMPOSITES ACCÉLÈRENT LES
REQUÊTES QUI UTILISENT LA PREMIÈRE
PORTION DE L’INDEX
DBADMIN [Link] 36
STRATEGIE D’INDEXATION

 EXEMPLE
10 VEND_ID DIFFÉRENTS
1000 PARTS_NO DIFFÉRENTS
RÉPARTIS SUR LES
10 VEND_ID

CREATE INDEX ind_vendor_id ON vendor_parts (part_no, vend_id);

ACCÉLÈRE LA REQUÊTE
SELECT * FROM vendor_parts WHERE part_no = 457 AND vend_id = 1012;

DBADMIN [Link] 37
STRATEGIE D’INDEXATION
 CRÉER UN INDEX AVEC DES
STATISTIQUES
PRISE EN COMPTE IMMÉDIATE PAR L’ OPTIMISEUR

 SUPPRIMER LES INDEX INUTILES

DBADMIN [Link] 38
INDEX STOCKÉ EN ARBRE B+
 UNE SEULE STRUCTURE DE DONNÉES

 IL FAUT AVOIR DÉFINI LA CLÉ PRIMAIRE

 POSSIBILITÉ DE DÉFINIR DES INDEX


SECONDAIRES SUR CETTE TABLE

 PRÉFÉRABLE À LA CRÉATION D’UN INDEX


SI L’ACCÈS SE FAIT PRIORITAIREMENT
SUR LA CLÉ
DBADMIN [Link] 39
INDEX STOCKÉ EN ARBRE B+
EXEMPLE

CREATE TABLE countries_demo ( country_id


CHAR(2)
, country_name VARCHAR2(40)
, currency_name VARCHAR2(25) ,
currency_symbol VARCHAR2(3) ,
region VARCHAR2(15) ,
CONSTRAINT country_c_id_pk PRIMARY KEY
(country_id ) )
ORGANIZATION INDEX ;

DBADMIN [Link] 40
MISE EN ŒUVRE DES
ORGANISATIONS DANS ORACLE

 2 ORGANISATIONS EN CLUSTERS

 GROUPE DE TABLE QUI SONT


STOCKÉES DANS LES MÊMES BLOCS
PHYSIQUES

JOINTURE FRÉQUENTE ENTRE CES TABLES

DBADMIN [Link] 41
DÉFINITION DE CLUSTER

DBADMIN [Link] 42
DBADMIN [Link] 43
DÉFINITION DE CLUSTER
 CLÉ DE CLUSTER : ATTRIBUT(S)
PARTAGÉ(S) PAR LES TABLES

• STOCKÉE UNE FOIS


• CORRESPOND À PLUSIEURS TUPLES DE
PLUSIEURS TABLES
• STOCKÉE DE FAÇON INDEXÉE OU PAR HASH
CODING

DBADMIN [Link] 44
DÉFINITION DE CLUSTER
COMMANDES
 DÉFINITION CLUSTER INDEXÉ
CREATE CLUSTER personnel
CLÉ DE CLUSTER
(department NUMBER(4))

 PAR DÉFAUT STRUCTURATION INDEXÉE


(TUPLES AYANT LA MÊME VALEUR DE CLÉ DE
CLUSTER SONT STOCKÉS ENSEMBLE)

 DÉFINIR ENSUITE UN INDEX SUR LE CLUSTER


CREATE INDEX idx_personnel ON CLUSTER
personnel;
DBADMIN [Link] 45
DÉFINITION DE CLUSTER
COMMANDES
 DÉFINITION CLUSTER PAR HASH
CODING
CREATE CLUSTER personnel (department NUMBER(4))
HASHKEYS 10 ;
PARAMÈTRE OBLIGATOIRE
POUR LA FONCTION INTERNE
DE HASH CODING = nombre de paquets

• POSSIBILITÉ DE DÉFINIR SA PROPRE


FONCTION DE HASH CODING

DBADMIN [Link] 46
DÉFINITION DE CLUSTER
COMMANDES
 CHARGEMENT DES TABLES DANS LE
CLUSTER
CREATE TABLE empc CLUSTER personnel (department_id)
AS SELECT *
FROM emp;

CREATE TABLE deptc CLUSTER personnel (department_id)


AS SELECT *
FROM dept ;

DBADMIN [Link] 47
HASH CODING DANS ORACLE

 DÉFINITION D’UNE ORGANISATION


HACHÉE POUR UNE TABLE

• DOIT PASSER NÉCESSAIREMENT PAR UN


CLUSTER

• DÉFINITION D’UN CLUSTER MONOTABLE

CREATE CLUSTER cust_orders (customer_id NUMBER(6))


SINGLE TABLE HASHKEYS 100;

DBADMIN [Link] 48
PARTITIONNEMENT
DANS ORACLE 10G
 BUT DU PARTITIONNEMENT

RÉPARTITION D’UNE TABLE EN


PLUSIEURS SOUS ENSEMBLES GÉRÉS
INDÉPENDAMMENT

DBADMIN [Link] 49
PARTITIONNEMENT
DANS ORACLE 10G
 AVANT ORACLE 8

 DIVISION D’UNE TABLE EN PLUSIEURS


TABLES SUR UN CRITÈRE

 UTILISATION DU MÉCANISME DE VUE


POUR TRAVAILLER SUR LA TOTALITÉ
DES DONNÉES

DBADMIN [Link] 50
PARTITIONNEMENT
DANS ORACLE 10G
 EXEMPLE
VENTESJANV
VENTES
VENTESDEC

CREATE VUE VENTES AS SELECT * FROM VENTESJANV


UNION

UNION
SELECT * FROM VENTESDEC;

DBADMIN [Link] 51
PARTITIONNEMENT
DANS ORACLE 10G
 INCONVÉNIENTS DE LA SOLUTION PAR VUES

• PERFORMANCES
• MAINTENANCE ACCRUE

 SOLUTION DEPUIS ORACLE8

• UNE SEULE TABLE PARTITIONNÉE SELON DIVERS


CRITÈRES
• UTILISATION IMPLICITE OU EXPLICITE DES
PARTITIONS NÉCESSAIRES

DBADMIN [Link] 52
MISE EN ŒUVRE DES
ORGANISATIONS DANS ORACLE
 CLÉ DE PARTITIONNEMENT

 ENSEMBLE D’ATTRIBUTS QUI PERMET


DE FRACTIONNER LES DONNÉES

• RÉSULTAT D’UNE ANALYSE DES DONNÉES


• RÉSULTAT D’UNE ANALYSE DES QUESTIONS

DBADMIN [Link] 53
TYPE DE PARTITIONNEMENT
 PARTITIONNEMENT PAR PLAGES

 PLAGES DE VALEURS HOMOGÈNES


• DÉFINIES PAR LA LIMITE SUPÉRIEURE DE LA ClÉ
• ORDRE CROISSANT
• PAS DE CHEVAUCHEMENT

 DÉFINIT AU MOMENT DE LA CRÉATION DE LA


TABLE

 POSSIBILITÉ D’AVOIR UNE PARTITION


MAXVALUES
DBADMIN [Link] 54
PARTITIONNEMENT PAR PLAGES
EXEMPLE
CREATE TABLE VENTEP
(id_prod number NOT NULL, CLÉ DE
id_cli number NOT NULL, PARTITIONNEMENT
id_date date not null,
…)
PARTITION BY RANGE (id_date)
(partition vente1 values
less than (to_date(‘01/01/2001’,’DD/MM/YYYY’)),
partition vente2 values
less than (to_date (’01/01/2002’,’DD/MM/YYYY’)),

partition ventes_max values less than (maxvalue);

Partition maxvalues
DBADMIN [Link] 55
PARTITIONNEMENT PAR LISTES

 UN SEUL ATTRIBUT POUR LA CLÉ DE


PARTITIONNEMENT
 PARTITIONNEMENT SELON DES
VALEURS DE LA CLÉ DE
PARTITIONNEMENT
 PARTITION AUTRES VALEURS

DBADMIN [Link] 56
PARTITIONNEMENT PAR LISTES
EXEMPLE

CREATE TABLE sales_list


(salesman_id NUMBER(5),
salesman_name VARCHAR2(30), sales_state
VARCHAR2(20),
sales_amount NUMBER(10), sales_date DATE)
PARTITION BY LIST(sales_state)
( PARTITION sales_west VALUES('California',
'Hawaii'),
PARTITION sales_east VALUES ('New York',
'Virginia', 'Florida'),
PARTITION sales_central VALUES('Texas', 'Illinois'),
PARTITION
DBADMIN sales_other VALUES(DEFAULT)
[Link] ); 57
PARTITIONNEMENT AUTRES
POSSIBILITÉS
 POSSIBILITÉ DE FAIRE DU
PARTITIONNEMENT MIXTE
(PAR LISTE DANS LE PARTITIONNEMENT PAR PLAGES)

 POSSIBILITÉ DE FAIRE DU
PARTITIONNEMENT PAR HASH
CODING

DBADMIN [Link] 58
PARTITIONNEMENT
STRATÉGIE D’INDEXATION
 INDEX LOCAUX

 UTILISENT LA MÊME CLÉ DE PARTITIONNEMENT


QUE LES DONNÉES

 PARTITIONNÉS DE MÊME MANIÈRE QUE LES


DONNÉES

 SONT ASSOCIÉS À CHAQUE PARTITION DE


DONNÉES

DBADMIN [Link] 59
INDEX LOCAL
EXEMPLE

SUR LA TABLE VENTEP PRÉALABLEMENT


PARTITIONNÉE

CREATE INDEX IDX_VENTEP ON VENTEP (id_date)


LOCAL;

 POSSIBILITÉ DE CHOISIR LA LOCALISATION


(TABLESPACE) ET LE NOM DE L’INDEX

DBADMIN [Link] 60
INDEX LOCAL
CARACTÉRISTIQUES
 POSSIBILITÉ DE DÉCLARER DES
« UNIQUE INDEX »

 INDEX BITMAPS SUR LES TABLES


PARTITIONNÉES SONT
NÉCESSAIREMENT LOCAUX

DBADMIN [Link] 61
PARTITIONNEMENT
STRATÉGIE D’INDEXATION
 INDEX GLOBAL

 N’EST PAS DIRECTEMENT ASSOCIÉ AUX


PARTITIONS DE DONNÉES
RÉFÉRENCÉES

 PARTITIONS D’INDEX DIFFÉRENTE DU


PARTITIONNEMENT DES DONNÉES

DBADMIN [Link] 62
COMPARAISON
INDEX LOCAL/ INDEX GLOBAL
INDEX LOCAL

DBADMIN [Link] 63
COMPARAISON
INDEX LOCAL/ INDEX GLOBAL
INDEX GLOBAL

DBADMIN [Link] 64
INDEX GLOBAL EXEMPLE
 INDEX GLOBAL PARTITIONNÉ PAR
PLAGES CLÉ DE L’INDEX

CREATE INDEX cost_ix ON sales (amount_sold)


GLOBAL CLÉ DE
PARTITION BY RANGE (amount_sold) PARTITIONNEMENT
(PARTITION p1 VALUES LESS THAN (1000),
PARTITION p2 VALUES LESS THAN (2500),
PARTITION p3 VALUES LESS THAN (MAXVALUE));

DBADMIN [Link] 65
INDEX GLOBAL
CARACTÉRISTIQUES
 POSSIBILITÉ D’AVOIR UN INDEX GLOBAL
PARTITIONNÉ EN HASH CODING

DBADMIN [Link] 66
INDEX GLOBAL
CARACTÉRISTIQUES
 INDEX DOIT ÊTRE PRÉFIXÉ

• PARTIE LA PLUS À GAUCHE DE LA CLÉ


D’INDEX DOIT ÊTRE IDENTIQUE À LA PARTIE
LA PLUS À GAUCHE DE LA CLÉ DE
PARTITION

• EXCLUSION D’UNE PARTIE DES PARTITIONS


D’INDEX PEUT SE PRODUIRE

DBADMIN [Link] 67
INDEX GLOBAL
CARACTÉRISTIQUES
 POSSIBILITÉ D’AVOIR UN INDEX UNIQUE

 NE PEUT PAS PRENDRE LA FORME


BITMAP

DBADMIN [Link] 68

Vous aimerez peut-être aussi