Évaluation des besoins de performance

Éléments à surveiller

Pour optimiser un schéma interne, il est d'abord nécessaire de repérer les aspects du schéma logique qui sont susceptibles de générer des problèmes de performance.

On pourra citer à titre d'exemple les paramètres à surveiller suivants :

  • Taille des tuples

  • Nombre de tuples

  • Fréquence d'exécution de requêtes

  • Complexité des requêtes exécutées (nombre de jointures, etc.)

  • Fréquence des mises à jour (variabilité des données)

  • Accès concurrents

  • Distribution dans la journée des accès

  • Qualité de service particulière recherchée

  • Paramétrabilité des exécutions

  • etc.

Évaluation des coûts

Une fois les éléments de la BD[1] à évaluer repérés, il faut mesurer si oui ou non ils risquent de poser un problème de performance.

L'évaluation des performances peut se faire :

  • Théoriquement

    En calculant le coût d'une opération (en temps, ressources mémoires, etc.) en fonction de paramètres (volume de données, disparité des données, etc.). En général en BD le nombre de paramètres est très grand, et les calculs de coûts trop complexes pour répondre de façon précise aux questions posées.

  • Empiriquement

    En réalisant des implémentations de parties de schéma et en les soumettant à des tests de charge, en faisant varier des paramètres. Ce modèle d'évaluation est plus réaliste que le calcul théorique. Il faut néanmoins faire attention à ce que les simplifications d'implémentation faites pour les tests soient sans influence sur ceux-ci.