1.1 - Conception


Base de données 2

Analyse relationnelle

Plan

  • Système de gestion d'une base de données
  • Conception d'une base de données relationnelle
  • Introduction à MySQL Workbench

Système de gestion d'une base de données

SGBD

Le Système de Gestion d'une Base de Données est un logiciel qui intégre un langage permettant de :

  • DDL
    Définir la structure des données(tables, vues) et le format des enregistrements(colonnes, index)
    • Assure l'intégrité des données(attributs, contraintes, relations, déclencheurs, transactions)
  • DML
    Manipuler les données(select, insert, update, delete)
  • DCL
    Contrôler les accès via un mécanisme d'usagers et permissions

NoSQL?

Engin de stockage non-relationnel, qui s'éloigne plus ou moins de la structure ligne/colonne.

  • On peut voir SQL comme du stockage généraliste et les différents mécanismes NoSQL pour des applications spécifiques
    • Flexibilité au niveau de la structure des données
    • Performance
    • Architecture distribuée

ℹ️ Microsoft - Non-relational data and NoSQL

Conception d'une base de données relationnelle

Conception d'une base de données relationnelle

À partir d'une description du domaine: analyser et concevoir une base de données

  • Schéma
  • Règles d'intégrités


🤔 Intégrité structurelle vs logicielle?

Schéma

  • Tables
  • Colonnes
    • Type de données, Nullable
    • Auto-incrément, Valeur par défaut
    • Générée
    • Index, Unique, Fulltext Search
    • Validations
  • Relations, multiplicités
  • Déclencheurs
  • Vues

Normalisation

Organisation minutieuse de la structure et des relations d'une base de données pour favoriser l'intégrité et réduire la répétition.

ℹ️ Normalisation

🤔 Dénormalisation?

  • Favorise l'accès en lecture au détriment de l'écriture et du stockage
  • Ex: Nombres d'items

Règles d'intégrité

S'assurer que l'information stockée dans la base de données représente un état valide et cohérent.

  • Type de données
    • AI, Nullable, DEFAULT, GENERATED
  • PK
  • FK, Action référentielle
  • Unique
  • CHECK
  • Déclencheurs
  • Transactions

Outil de conception

👉 Contenu