Les SGBD reposent sur trois niveaux d’abstraction qui assurent l’indépendance logique et physique des données, autorisent la manipulation de données, garantissent l’intégrité des données et optimisent l’accès aux données. L’architecture ANSI/SPARC [ANSI75] spécifie cette architecture à trois niveaux pour un SGBD :
Le niveau externe.
Il regroupe toutes les possibilités d’accès aux données par les différents usagers. Ces accès, éventuellement distants, peuvent se faire via différents types d’interfaces et langages plus ou moins élaborés. Ce niveau détermine le schéma externe qui contient les vues des utilisateurs sur la base de données c’est à dire le sous-ensemble de données accessibles ainsi que certains assemblages d’information et éventuellement des informations calculées. Il peut donc exister plusieurs schémas externes représentant différentes vues sur la base de données avec des possibilités de recouvrement.
Le niveau conceptuel.
Il correspond à la vision des données générale indépendante des applications individuelles et de la façon dont les données sont stockées. Cette représentation est en adéquation avec le modèle de données utilisé. Dans le cas des SGBD relationnels, il s’agit d’une vision tabulaire où la sémantique de l’information est exprimée en utilisant les concepts de relation, attributs et de contraintes d’intégrité. Le niveau conceptuel est défini au travers du schéma conceptuel.
Le niveau physique.
Il regroupe les services de gestion de la mémoire secondaire. Il s’appuie sur un système de gestion de fichiers pour définir la politique de stockage ainsi que le placement des données. Cette politique est définie en fonction des volumes de données traitées, des relations sémantiques entre les données ainsi qu’en fonction de l’environnement matériel disponible. Comme le suggère la figure 1, il est tout à fait possible de répartir les données sur différents supports de stockages distribués sur un réseau. Le niveau physique est donc responsable du choix de l’organisation physique des fichiers ainsi que de l’utilisation de telle ou telle méthode d’accès en fonction de la requête. Ce niveau doit également assurer le partage des ressources, la gestion de la concurrence et des pannes. La personne responsable de ce niveau est un administrateur de bases de données. Son rôle est à la fois d’assurer la mise en place et le contrôle des procédures systèmes liées à la gestion de la base mais aussi de gérer les droits d’accès à la base.
Cette architecture vise à identifier différents niveaux de structuration dans un SGBD comme cela est illustré sur la figure 1. L’objectif visé par cette structuration est l’obtention d’une indépendance maximale entre les niveaux.