Performances de la base de données

Lors de la conception d'une base de données, vous devez vous assurer qu'elle est capable d'assurer toutes les fonctions importantes correctement et rapidement. Certains problèmes de performances peuvent être résolus une fois la base de données mise en production. Toutefois, d'autres problèmes de performances peuvent être le résultat d'une conception médiocre de la base de données et ne peuvent être résolus qu'en modifiant sa structure et sa conception.

La conception et l'implémentation d'une base de données supposent l'identification des tables de grande taille, ainsi que les processus complexes que la base de données devra effectuer. Vous devez également accorder une attention particulière aux performances lors de la conception de ces tables. En outre, vous devez prendre en considération l'impact sur les performances dû à l'augmentation du nombre d'utilisateurs pouvant accéder à la base de données.

Voici quelques exemples de changements de conception capables d'améliorer les performances :

  • Si une table comportant des centaines de milliers de lignes doit être synthétisée pour un rapport quotidien, vous pouvez lui ajouter une ou plusieurs colonnes contenant des données préalablement agrégées qui seront utilisées uniquement pour le rapport.

  • Les bases de données peuvent être surnormalisées. En d'autres termes, elles sont définies par de nombreuses petites tables reliées les unes aux autres. Lorsque la base de données traite les données de ces tables, elle doit accomplir un surcroît de travail important pour combiner les données reliées. Ce traitement supplémentaire peut conduire à une baisse des performances de la base de données. Dans ce genre de situations, une dénormalisation légère de la base de données en vue de simplifier les processus complexes pourra aboutir à une amélioration des performances.

Configuration matérielle requise

En général, plus la base de données est importante, plus la configuration matérielle requise l'est. Cependant, parmi les autres facteurs déterminants, il faut compter le nombre d'utilisateurs et de sessions simultanés, le débit des transactions et les types d'opération dans la base de données. Par exemple, une base de données contenant des données rarement mises à jour pour une bibliothèque scolaire exigera généralement une configuration matérielle moindre qu'un entrepôt de données d'un téraoctet contenant des informations soumises à des analyses fréquentes sur les clients, les produits et les ventes d'une grande entreprise. Outre les exigences en matière d'espace disque, cet entrepôt de données nécessiterait un surcroît de mémoire et des processeurs plus rapides pour permettre la mise en mémoire cache de davantage de données, de sorte que les requêtes faisant référence à de gros volumes de données puissent être traitées rapidement.

Le sous-système d'E/S, ou moteur de stockage, est un composant essentiel de toute base de données relationnelle et concentre l'essentiel de la planification. L'implémentation réussie d'une base de données requiert généralement une planification soigneuse dès les premières phases d'un projet. Cette planification doit tenir compte des considérations sur les points suivants :