Comment estimer 1 Comment estimer le coût d ? un plan d ? exécution Le SGBDR évalue le coût en ressources utilisées pour exécuter ce plan Ces ressources sont ? le temps CPU ? le nombre d ? E S entrées sorties disque dur I O en anglais ? la quantité de mém

Comment estimer le coût d ? un plan d ? exécution Le SGBDR évalue le coût en ressources utilisées pour exécuter ce plan Ces ressources sont ? le temps CPU ? le nombre d ? E S entrées sorties disque dur I O en anglais ? la quantité de mémoire vive RAM nécessaire Le coût sera une synthèse entre l ? utilisation du CPU et le coût des E S selon qu ? il s ? agit d ? accès séquentiels lecture de plusieurs blocs contigus ou d ? accès aléatoires lecture monobloc Cependant vous imaginerez aisément que ce coût dépend non seulement de la requête elle-même mais aussi des données sur lesquelles elle porte En e ?et calculer le salaire moyen d ? une table contenant personnes sera moins coûteux que de calculer la même moyenne sur une table d ? un million de personnes alors que la requête sera la même Pour estimer le coût d ? une requête le SGBDR a besoin de déterminer pour chacune Cdes étapes du plan d ? exécution le nombre d ? enregistrements concernés c ? est-à-dire la cardinalité de l ? opération Cette cardinalité dépend des données elles-mêmes mais aussi de l ? impact de chacune des conditions Par exemple une condition qui ?ltre sur un numéro de Sécurité sociale n ? aura pas le même impact sur la cardinalité qu ? une condition portant sur un département ou une année de naissance Ce principe se nomme la sélectivité nous l ? étudierons au Chapitre section Sélectivité cardinalité densité L ? optimiseur détermine le coût de chaque plan d ? action d ? exécution Pour cela sans exécuter aucun d ? eux ni parcourir les données il dé ?nit les cardinalités de chaque opération à partir de statistiques sur les données voir Chapitre section Statistiques sur les données L ? optimiseur cherche à déterminer le meilleur plan cependant la notion de meilleur peut dans certains cas di ?érer en fonction de l ? objectif l ? Optimizer CGoal qui peut être de deux types ? FirstRows premières lignes ? AllRows toutes les lignes First Rows privilégie le temps de réponse pour retourner les premières lignes Cela peut être intéressant dans le cadre d ? applications interagissant avec des utilisateurs C

  • 70
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise
Partager