L3 Info : SGBD
 
◃  Ch. 2 Le Modèle Relationnel  ▹
 

Algorithme de Bernstein

  • X, Y, ... et A, B, C ensembles d'attributs.
  • Données : R=(A1, A2, ... An) un schéma de relation et F un ensemble de df sur R.
  • Résultat : une décomposition de R muni de F en schémas de relations 3NF SPI SPD
  • Algorithme :
    1. On remplace F par sa couverture minimale. On cherche les clés minimales de R et on teste si R est en 3NF. Si oui on s'arrete sinon on continue.
    2. On regroupe les df X→Ai (1<=i<=p) ayant un même membre gauche. Pour chaque membre gauche X, on définit un schéma de relation contenant tous les attributs des df, soit RX=(X, A1, A2, ... Ap). Le schéma RX est muni de l'ensemble de df X→Ai
    3. Si aucun des schémas RX définis à l'étape 2 ne contient de clé de R, alors on ajoute un schéma RK=(K), où K est une clé minimale muni d'aucune df.
  • Tous les Ri obtenus en (2.) sont bien en 3NF
  • Le schéma RK assure une décomposition SPI
  • La décomposition est trivialement SPD car la réunion des df des nouveaux schémas est F