Vous êtes sur la page 1sur 14

Optimisation de Requtes

1. 2. 3. 4. 5. 6. Introduction Arbres relationnels Restructuration algbrique Modle de cot Choix du meilleur plan Conclusion

G. Gardarin

1. ARCHITECTURE TYPE SGBD


ANALYSEUR SYNTAXE SEMANTIQUE SCHEMA VUES INTEGRITE AUTORISATIONS ORDONNANCEMENT ELABORATION D'UN PLAN EXECUTION METHODES D'ACCES

CONTROLE

META-BASE

OPTIMISEUR

EXECUTABLE

G. Gardarin

ETAPES DE L'OPTIMISATION
(1) Obtention dune reprsentation canonique (2) Rcriture = transformation par :
simplification ordonnancement des oprations lmentaires

(3) Planning = construction des plans d'excution candidats


choix des algorithmes pour chaque oprateur, calcul du cot de chaque plan, choix du meilleur plan.

Etapes 1 et 2 : indpendantes des donnes Etape 3 : dpendante des donnes


G. Gardarin #

2. ARBRES RELATIONNELS
RESTRICTION
V. CRU = V

PROJECTION
"BEAUJOLAIS"
V.NV, V.CRU

TRI
V.CRU, V.MILL

JOINTURE
A. NV A

DIFFERENCE

V. NV V B1

B2

AGREGAT

PRODUIT CARTESIEN

UNION
COUNT(*),AVG(DEGRE) V.CRU, V.MILL

U A V B1 B2

G. Gardarin

EXEMPLE D'ARBRE
RESULTAT B.NOM, B.PRENOM >

A.DATE

01-01-90

V.CRU

"VOLNAY"

A.NV

V.NV

B.NB

A.NB

VINS V

B.VILLE = "PARIS"

ABUS A

BUVEURS B G. Gardarin #

3. RESTRUCTURATION ALGEBRIQUE
Problme :
suivant l'ordre des oprateurs algbriques dans un arbre, le cot d'excution est diffrent

Pourquoi?
1. le cot des oprateurs varient en fonction du volume des donnes traites i.e., plus le nombre de tuple des relations traites est petit, plus les cots cpu et d'E/S sont minimiss 2. certains oprateurs diminuent le volume des donnes e.g., restriction et projection
G. Gardarin #

Commutativit des Jointures

G. Gardarin

Associativit des jointures


Il existe N!/2 arbre de jointure de N relations. Parmi les jointures, certaines sont des produits cartsiens.

R
G. Gardarin

T
#

Groupage des Restrictions

Ai = a

Ai = a et Aj = b Aj = b

G. Gardarin

Semi-commutativit des Projections


Il est possible de descendre les projections, mais les attributs utiliss dans la suite doivent tre conservs !!!
A1, Ap A1, Ap

Ai = a
Ai = a

Ai, A1, Ap

G. Gardarin

Rgles de Restructuration
(1) Commutativit des jointures (2) Associativit des jointures (3) Groupabilit des restrictions (4) Semi-commutativit des projections et restrictions (5) Semi-commutativit des restrictions et jointures (6) Semi-distributivit des projections / jointures (7) Distributivit des restrictions / unions ou diffrences (8) Distributivit des projections / unions
G. Gardarin #

Heuristique d'Optimisation
Appliquer d'abord les oprations rductrices (restrictions et projections) en les groupant sur chaque relation.
1. 2. 3. 4. Dgrouper les restrictions (Rgle 3') Descendre les restrictions (Rgles 4, 5 et 7) Grouper les restrictions aux feuilles (Rgle 3) Descendre les projections (Rgles 4, 6 et 8)

L'ordre des unions, diffrences et jointures reste inchang !!!


G. Gardarin #

Exemple d'Arbre Optimis


Rsultat B.NOM, B.PRENOM

A.NV

V.NV

B.NOM, B.PRENOM,A.NV B.NB A.NB

V.NV

B.NB, B.NOM, B.PRENOM

A.NB, A.NV V.CRU = "VOLNAY" A.DATE > 01-01-83 V

B.VILLE = "PARIS"

B G. Gardarin

A
#

Ordonnancement des Jointures


HEURISTIQUES :
Choix des relations de taille minimum Jointures pr-calculs d abord (indexes) Semi-jointures plus rductrices

ORDONNANCEMENT DES AGREGATS


Permutations difficiles Profiter des tris des jointures, ddoublement, etc.. Gains importants pour MIN et MAX

G. Gardarin

Vous aimerez peut-être aussi