La modélisation physique des données consiste à implémenter le modèle logique en tables réelles et se concentre sur l'optimisation des performances, notamment l'efficacité de l'espace de stockage, le partitionnement et la conception des index.
Les requêtes lentes, les index et les caches sont utilisés pour résoudre les problèmes de performances. Si nécessaire, la structure des tables est modifiée via la dénormalisation.
La normalisation peut sacrifier les performances de lecture pour faciliter l'écriture. Par conséquent, la dénormalisation doit être effectuée avec prudence après une analyse approfondie du problème.
Si la modélisation de données logique consistait à créer des tables idéales adaptées aux bases de données relationnelles, la modélisation de données physique comprend la transformation de ces tables idéales en tables réellement utilisables, ainsi que la planification efficace de l'espace de stockage, la conception de la partition des objets, la conception d'index optimaux, etc., en mettant l'accent sur l'amélioration et l'optimisation des performances.
La méthode de recherche des requêtes lentes (Slow Query) qui provoquent des goulots d'étranglement lors de l'exploitation d'un service varie en fonction du type de SGBD etrequêtes lentesdoit être recherchée en utilisant ce mot-clé comme terme de recherche.
Points à considérer pour les performances
Recherche des requêtes lentes (Slow Query)
Une requête lente est une requête qui ne peut pas être exécutée dans un délai imparti par le SGBD lorsqu'il reçoit une requête.
Recherchez les requêtes lentes qui provoquent des goulots d'étranglement, identifiez le problème et résolvez-le.
Index
Les index améliorent considérablement les performances de lecture des lignes.
Cependant, ils dégradent les performances d'écriture et utilisent plus d'espace de stockage.
Cache
Méthode permettant de réduire la charge de la base de données au niveau de l'application.
Il s'agit d'une méthode qui consiste à stocker les réponses aux demandes de la même entrée dans l'espace de stockage et à les renvoyer.
Si le problème de performances persiste malgré l'utilisation des méthodes ci-dessus, une opération appelée dénormalisation ou dénormalisation est effectuée.
Il s'agit de modifier la structure de la table.
Compromis de la normalisation
La normalisation revient à sacrifier les performances de lecture pour faciliter les opérations d'écriture. Lorsque la normalisation est effectuée, il est nécessaire d'écrire des requêtes qui joignent les données des tables divisées en plusieurs parties.
Cependant, la normalisation n'entraîne pas nécessairement une baisse des performances, il est donc essentiel de bien comprendre le problème et de l'examiner avant de procéder à une dénormalisation.
Le lien ci-dessous est un bon article qui traite de ladénormalisationque nous aborderons plus tard.
Tout d'abord, il faut savoir que la dénormalisation doit être effectuée après la normalisation. Une table non normalisée n'est pas toujours idéale au départ.
Comme il ne s'agit pas d'une connaissance immédiatement nécessaire pour le moment, nous allons simplement la garder à l'esprit.
Techniques de dénormalisation des tables
Source - DataOnAir - Dénormalisation et performance
Dénormalisation des colonnes
Source DataOnAir - Dénormalisation et performance
Dénormalisation des relations
Source - DataOnAir - Dénormalisation et performance