Optimisation Requete Transactionnelle
Commentaires Composés : Optimisation Requete Transactionnelle. Rechercher de 53 000+ Dissertation Gratuites et Mémoires|
|NDistincc(A) = 500 |NDistincN(B) = 400 |
|NDistincd(A) = 10.000 |NDistincO(B) = 100.000 |
|NLevela(I) = 3 (sans les données) |SCO(B) = 80 |
|Nblocksa(I) = 202.021 (2.021 index + 200.000 |NLevelM(I) = |
|données) |NBlocksM(I) = |
| |NLevelO(I) = |
| |NBlocksO(I) = |
Pour la requête, ci dessous, indiquez :
l’arbre algébrique de la requête obtenu par la restructuration algébrique
un plan d’exécution
Requête
SELECT *
FROM A, B
WHERE a=N
AND O = ‘C’
AND c=‘L’
Evaluez le plan d’exécution ci-dessous, en indiquant la taille des tables intermédiaires :
|Requête |Plan d’exécution |
| |[pic] |
|SELECT a, c, P | |
|FROM A , B | |
|WHERE c=M | |
|AND b=’Y’ | |
| | |
Transactions
Construisez les graphes de sérialisation pour les exécutions (histoires) suivantes. Indiquez les exécutions sérialisables et vérifier s'il y a des exécutions équivalentes.
H1: r2[x] w3[z] w2[x] w2[y] c2 r1[x] w1[z] c1 r3[y] w3[y]c3
H2: r1[x] w2[y] r3[y] w3[z] c3 w1[z] c1 w2[x] c2
H3: w3[z] w1[z] w2[y] w2[x] c2 r3[y] c3 r1[x] c1
|Stratégie |Coût |
|recherche linéaire (sur un fichier non ordonné sans index) |NBlocks(R) |
|recherche binaire (sur un fichier ordonné sans index) |log2(NBlocks(R)) si la condition d’égalité porte sur les |
| |attributs sur lesquels le fichier est ordonné ou |
| |log2(NBlocks(R)) + ((SCA(R)/BFactor(R)) -1) sinon |
|L’égalité sur une clé de hachage |1 s’il n’y a pas de page d’overflow |
|recherche par égalité sur la clé primaire |NLevelsA(I) + 1 |
|Recherche par inégalité sur la clé primaire |NLevelsA(I) + (NBlocks(R) / 2) |
|Recherche par égalité sur un index secondaire clustered |NLevelsA(I) + (SCA(R) / BFactor(R)) |
|Recherche par égalité sur un index secondaire unclustered |NLevelsA(I) + SCA(R) |
|Recherche par inégalité dans un arbre B+ |NLevelsA(I) + (NBlocksA(I) / 2)+ (NTuples(R)/2) |
|Jointure : boucles imbriquées. en montant une à une les pages de S |NBlocks(R) + (NBlocks(R)
...