|
Les bases de données utilisent un catalogue système pour stocker des données sur ses tables. Ceci est également connu comme le Dictionnaire de données ou référentiel de schéma . Voici comment cela fonctionne:
1. Tables de catalogue système:
* Le catalogue système est lui-même une collection de tables spéciales qui contiennent des métadonnées sur la base de données.
* Ces tableaux stockent des informations sur:
* Tables: Noms, colonnes, types de données, contraintes, index, etc.
* vues: Définitions et tables de base.
* utilisateurs: Autorisations, droits d'accès, rôles.
* Index: Détails sur les index, y compris les colonnes indexées et leur type.
* Procédures: Procédures stockées, fonctions, déclencheurs, etc.
2. Accès au catalogue système:
* Les systèmes de gestion de la base de données (SGBD) fournissent des moyens d'interroger le catalogue système. Cela se fait souvent en utilisant:
* Vues du système: Des vues prédéfinies qui exposent des métadonnées spécifiques.
* Tables système: Accès direct aux tables de catalogue (généralement avec des autorisations spécifiques).
* Outils d'introspection de la base de données: Outils qui peuvent lire le catalogue et présenter les informations d'une manière plus conviviale.
3. Métadonnées stockées:
Le catalogue système stocke diverses métadonnées sur les objets de base de données, notamment:
* Structure de la table:
* Noms de colonne et types de données: Définit la structure de la table.
* Contraintes: Règles et restrictions qui définissent l'intégrité des données (par exemple, les clés primaires, les clés étrangères).
* Index: Structures de données utilisées pour accélérer la récupération des données en fonction de certaines colonnes.
* Propriétés de la table:
* Nom et propriétaire: Identifie le tableau de manière unique et indique l'utilisateur responsable.
* Paramètres de stockage: Spécifie comment la table est stockée et son emplacement.
* Autres objets:
* Comptes d'utilisateurs: Stocke des informations sur les utilisateurs et leurs privilèges.
* vues: Définit des tables virtuelles basées sur d'autres tables ou requêtes.
* Procédures et fonctions: Stocke le code pour les opérations personnalisées sur les données.
4. Importance du catalogue du système:
* Intégrité des données: Assure la cohérence et la validité des données grâce à l'application des contraintes.
* Gestion du schéma: Fournit un référentiel central pour définir et modifier le schéma de base de données.
* Optimisation des requêtes: Les moteurs de base de données utilisent des métadonnées du catalogue pour planifier et optimiser les requêtes.
* Contrôle d'accès: Aide à gérer les autorisations des utilisateurs et restreint l'accès aux données sensibles.
* Sauvegarde et récupération: Facilite la restauration de la structure et des données de la base de données en cas d'échecs.
Exemple:
Dans une table de base de données appelée "clients" avec des colonnes "CustomerId", "FirstName" et "LastName", le catalogue système contiendrait des informations telles que:
* Nom de la table: "Clients"
* Noms de colonne: "CustomerId", "Firstname", "LastName"
* Types de données: "CustomerId" (entier), "FirstName" (Varchar), "LastName" (Varchar)
* Contraintes: "CustomerId" (clé primaire)
* Index: Un index peut être défini sur la colonne "CustomerId" pour des recherches plus rapides.
En stockant ces métadonnées, la base de données peut gérer efficacement ses données, appliquer l'intégrité et fournir aux utilisateurs les informations nécessaires sur sa structure et son contenu.
|