À quoi sert la modélisation relationnelle ?
Une base de données, à quoi ça sert ?
Comme son nom l'indique, une base de données (BDD), ça sert à stocker des données !
Mais une donnée, c'est quoi ?
Eh bien, c'est très variable ! Cela peut être :
une photo ;
une vidéo ;
du texte ;
des nombres ;
etc.
En général, ce ne sont pas des humains qui interagissent avec la base de données, mais plutôt des programmes informatiques (applis mobiles, logiciels, sites web, etc. ). En fait, la base de données et le programme informatique (appli, site web, etc.) sont complémentaires : l'un ne va pas sans l'autre. Si vous arrêtez un programme informatique qui n'est pas lié à une base de données, le programme ne se souviendra plus de rien.
C'est pour ça qu'il doit interagir avec la base de données : elle est en quelque sorte sa mémoire.
On peut comparer la BDD et le programme à un entrepôt et une usine : l'un ne fonctionne pas sans l'autre.
Un programme informatique, c'est un enchaînement de lignes de code qui effectuent des opérations : c'est comme les machines d'une usine. Ces machines, il faut les alimenter avec des matières premières, et ensuite, il faut stocker les produits finis : c'est le rôle de l'entrepôt. De la même manière, ce qui va alimenter les lignes de code du programme informatique, ce sont les données stockées dans la BDD.
Imaginez que l'entrepôt et l'usine appartiennent à une entreprise de fabrication de meubles. Dans l'entrepôt, on stocke les pièces détachées des meubles. Pour un lit par exemple, le sommier, le matelas et les 4 pieds seront tous stockés dans des parties différentes.
La modélisation relationnelle
Pour organiser un entrepôt, il faut bien connaître à l'avance ce qu'on va y stocker.
Pour une BDD, c'est le même principe : en fonction du type de données à stocker, on va choisir une structure appropriée. Dans ce cours, vous n'aborderez que le cas des données structurées.
Schématiquement, une donnée structurée, c'est une donnée que l'on peut facilement représenter sous forme de tableau (avec des lignes et des colonnes), comme vous l'avez sûrement déjà fait avec les logiciels LibreOffice Calc ou Excel. Les BDD faites pour accueillir des données structurées sont appelées bases de données relationnelles.
Vous l'aurez compris, il existe aussi des données moins structurées : on les rencontre souvent quand on à affaire à du Big Data. Pour cela, il faut des BDD non relationnelles. Elles ont des structures différentes, mais elles font quand même appel à des notions empruntées aux BDD relationnelles.
Conclusion : les données relationnelles, c'est LA base à connaître avant d'aller vous aventurer dans du Big Data. Et encore aujourd'hui, les bases relationnelles restent de loin les plus répandues, et les plus adaptées au fonctionnement basique des logiciels et des applis mobile ou web.
Définissez le concept de Table
L'objet que nous manipulerons tout au long de ce cours est appelé la table.
Reprenons l'exemple de l'entrepôt. Un entrepôt, c'est composé de différentes allées, toutes parallèles. Chaque allée est délimitée par une sorte de grande étagère où sont posées les pièces des meubles : on les appelle des rayonnages. Pour plus de simplicité, vous allez considérer que chaque rayonnage ne contient qu'un seul type de pièce : un rayonnage pour les matelas, un autre pour les sommiers, etc.
Eh bien dans une BDD relationnelle, chaque rayonnage correspond à une table. Il y a une table par type d'objet.
Identifiant matelas | Matière | Dimensions | Poids |
M1 | Latex | 180x90x10 | 12 kg |
M2 | Latex | 180x80x15 | 13 kg |
M3 | Coton bio | 180x90x20 | 15 kg |
Voici un exemple de table, qui liste des matelas. Chaque ligne correspond à un matelas, et chaque colonne donne une caractéristique du matelas en question, comme son poids, ses dimensions, etc.
Dans le jargon des bases de données, vous verrez qu'il existe plusieurs mots pour désigner la même chose. Certains de ces termes viennent de l'algèbre relationnelle, qui est la théorie qui sous-tend les bases de données relationnelles.
Par exemple, une table est parfois appelée une relation !
De même, le terme tuple désigne une ligne d'une table. Dans l'exemple précédent, le matelas M1 est représenté par le tuple suivant : (M1, Latex, 180x90x10, 12kg)
. On emploie parfois aussi les mots enregistrement ou vecteur. Vous avez l'embarras du choix !
De la même manière, le terme attribut est l'équivalent d'une colonne. Dans l'exemple précédent, matière
est un attribut.
Le schéma d'une table est l'ensemble des colonnes de cette table.
Rappel du vocabulaire :
Terme | Synonymes |
table | relation |
ligne | tuple, enregistrement, vecteur |
colonne | attribut |
En résumé
Une base de données sert à stocker des données pour qu'elles soient accessibles par un ou plusieurs programmes/applications.
La modélisation relationnelle permet de stocker des données facilement représentables sous forme de tableau.
L'objet principal du modèle relationnel est la table, qui contient des lignes et des colonnes.
Dans une table, 1 ligne = 1 objet.
Dans une table, 1 colonne = 1 caractéristique.
Maintenant que vous savez ce qu'est une base de données, voyons dans le prochain chapitre comment la prendre en main et la manipuler.