SlideShare une entreprise Scribd logo
1  sur  13
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
2
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Table des matières
Les bases de données............................................................................................................................................................. 3
Qu’est-ce qu’une base de données ? .................................................................................................................................... 3
Usages des bases de données .............................................................................................................................................. 3
Objectifs des bases de données............................................................................................................................................ 4
Qu’est-ce qu’un SGBD ?........................................................................................................................................................ 4
Architecture d’un SGBD.................................................................................................................................................... 5
Objectifs des SGBD ........................................................................................................................................................... 7
Les objectifs orientés DONNEES ................................................................................................................................... 7
Les objectifs orientés TRAITEMENT............................................................................................................................. 8
Les objectifs orientés ORGANISATION ........................................................................................................................ 8
Fonctions d’un SGBD........................................................................................................................................................ 8
Types de SGBD................................................................................................................................................................. 9
Types d’utilisateurs d’un SGBD ........................................................................................................................................10
Cycle de vie d'une base de données .......................................................................................................................................11
Modèles de données, schémas et langages .............................................................................................................................11
Notion de modèle de données ..........................................................................................................................................11
Notion de schéma de données ..........................................................................................................................................12
Notion de langage de données...........................................................................................................................................13
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
3
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Concepts fondamentaux
Les bases de données
Qu’est-ce qu’une base de données ?
Une base de données est un ensemble de données modélisant les objets d’une partie du monde réel et servant de support à une
application informatique. Pour mériter le terme de base de données, un ensemble de données non indépendantes doit être
interrogeable par le contenu, c’est à dire que l’on doit pouvoir retrouver tous les objets qui satisfont à un certain critère
[G.Gardarin].
En d’autres termes, c’est un ensemble structuré de données mémorisé sur un support permanent (cohérent, intégré, partagé) qui
peut être manipulé par plusieurs utilisateurs ayant des vues différentes sur ces données.
Par données, il faut comprendre : une représentation d’un fait à l’aide d’un code binaire stocké dans la mémoire de l’ordinateur.
Une donnée doit avoir un type. Le type est ensemble d’objets ayant les mêmes caractéristiques et manipulables par des
opérations identiques. On distingue :
− Données simples : entier, réel, chaîne de caractères, réel, etc.
− Données de type complexe : composée de données de types simples
− Donnée de type multimédia : texte, image, son vidéo
Exemple de données :
• 500 (type de données : entier)
• Renault Megane Noir DK1234AX (type de données : véhicule)
Usages des bases de données
Voici des exemples classiques d’utilisation des bases de données :
− Gestion des comptes clients d’une banque
− Gestion des commandes d’un site d’e-commerce
− Système de réservation de billets d’avion
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
4
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
− Gestion des étudiants d’une université
− Gestion des personnels d’une entreprise
− Bases de données d’articles scientifiques
Les données manipulées dans ces applications sont stockées dans une base de données.
Objectifs des bases de données
• Centralisation logique de l’information
Non redondance (la même information ne doit pas figurer plusieurs fois dans la BD
⇒ Ce qui diminue les risques d’erreurs de mise à jour et supprime le problème
d’avoir des informations contradictoires sur une même donnée dans de fichiers
différents
• Indépendance données traitement
• Partage des données (accessibilité à plusieurs utilisateurs simultanés)
confidentialité (login, mot de passe)
autorisation d’accès (lecture, écriture)
accès concurrents
• Intégrité des données
règles permettant d’éliminer des donner incorrectes (contrainte d’intégrité
référentielle, unicité de l’identifiant…).
Qu’est-ce qu’un SGBD ?
Un système de gestion de base de données ou SGBD est un programme générique qui permet la définition, la mise en œuvre et
l’exploitation (insérer, supprimer, mettre à jour) d’une base de données.
Exemple de SGBD :
• MySQL
• Oracle Database
• Microsoft SQL Server
Le SGBD va permettre aux utilisateurs d’insérer, de modifier et de rechercher efficacement des données spécifiques dans une
grande masse de d’informations (pouvant atteindre des milliards d’octets).
Le SGBD constitue interface entre programme d'application des utilisateurs d'une part et Base de données d'autre part. Il sert à
masquer à l’utilisateur les détails complexes liés à la gestion des fichiers.
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
5
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Architecture d’un SGBD
Structure en couche
Comme cité précédemment le SGBD constitue l’interface entre les utilisateurs et la base de données (voir figure ci-dessous).
Un SGBD est comporte trois couches :
− Couche interne (ou physique) : stockage des données sur des supports physiques, gestions des structures de
mémorisation (fichiers) et des accès (gestions des index et des clés)
− Couche logique : contrôle global et structure globale des données
− Couche externe : dialogue avec les utilisateurs, analyse de leurs demandes, contrôle des droits d’accès et présentation
des résultats, environnement de programmation (intégration avec un langage de programmation). La représentation de
la base de données est composée de plusieurs schémas externes.
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
6
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Architecture ANSI/SPARC
Elle donne une vue plus détaillée du schéma précédent.
Schéma
Externe
Schéma
Externe
Schéma
Externe
Schéma Conceptuel
Schéma Physique
Correspondances
Externe/Conceptuel
Correspondances
Conceptuel/Physique
Utilisateurs
(Vues)
Concepteur,
administrateur
(modèle de données)
Structures de
données
(fichiers, index)
Couche
externe
Couche
logique
Couche
interne
Schémas
Externes
Schéma
Logique
Schéma
Interne
Dialogue Contrôle Stockage
B
Utilisateurs
Interface
utilisateur
Interface d’accès aux
données
SGBD
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
7
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Objectifs des SGBD
Le principal objectif d’un SGBD est d’assurer l’indépendance des programmes aux données, c’est à dire la possibilité de
modifier les schémas conceptuel et interne des données sans modifier les programmes. Cet objectif est justifié afin d’éviter une
maintenance coûteuse des programmes lors des modifications des structures logiques et physiques.
Les objectifs d’un SGBD sont [G.Gardarin]:
− Indépendance physique des programmes aux données
− Indépendance logique des programmes aux données
− Manipulation des données par des langages non procéduraux
− Administration facilitée des données
− Efficacité des accès aux données
− Partage des données
− Cohérence des données
− Redondance contrôlée des données
− Sécurité des données
Ces objectifs peuvent être classés en plusieurs catégories :
Les objectifs orientés DONNEES
− Non redondance des données : avec une approche base de données, les fichiers plus ou moins redondants seront
intégrés en un seul fichier ou plusieurs fichiers contenant des données distinctes.
− Partageabilité des données : permettre le partage des données de la base à plusieurs applications, utilisateurs,
simultanément.
− Sécurité des données : les données doivent être protégées contre les accès (non autorisés, mal intentionnés). D’où la
nécessité de contrôler les donnés.
− Cohérence des données : les données sont soumises à certaines règles. Par exemple : un compte bancaire est rattaché à
un et un seul client.
Le SGBD doit vérifier que les applications respectent ces règles et contraintes d’intégrité. Donc il faut avoir des connaissances
sur les données et leur signification.
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
8
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Les objectifs orientés TRAITEMENT
− Indépendance physique des données : on peut changer le schéma physique sans remettre en cause le schéma conceptuel
(et les schémas externes). On peut modifier l'organisation physique des fichiers, rajouter ou supprimer des méthodes
d'accès ;
− Indépendance logique des données : on peut changer le niveau conceptuel sans remettre en cause les schémas externes
ou les programmes d'application. L'ajout ou le retrait de nouveaux concepts ne doit pas modifier des éléments qui n'y
font pas explicitement référence ;
− Manipulation facile des données (pour les non-informaticiens) : pouvoir les consulter, les interroger, les mettre à jour
− Manipulation facile des données (pour les informaticiens) : langage de développement de haut niveau
Les objectifs orientés ORGANISATION
− Administration centralisée des données
o Permettre un contôlr efficace des données ;
o Résoudre les conflits entre divers point de vue d’utilisateurs ;
o Optimisation des accès aux données
o Optimisation des moyens informatiques
− Fonctions
o Administrateur des données
o Administrateur de base de données
− Centralisation/décentralisation
o La base de données peut être distribué/partagé.
Fonctions d’un SGBD
Un SGBD doit permettre de :
! Décrire les données qui seront stockées stocker
! Gérer les données
● Manipuler des données (ajout, modification, suppression d’informations) ,
● Assurer la cohérence (ou intégrité) des données (contraintes de domaines,
d’existence, etc.),
● Assurer la confidentialité des données (mots de passe, autorisation…),
● Résoudre des problèmes d’accès multiples aux données (blocages, transactions
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
9
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
parallèles),
● Prévoir des procédures de reprise en cas de panne ( copies de sauvegarde, journaux)
! Obtenir des renseignements à partir des données stockées au moyen de requêtes (sélection, tri, calcul,
agrégation, etc.),
! Permettre l’écriture d’applications indépendantes de l’implémentation physique des données (codage,
supports d’enregistrement) et aussi indépendantes que possible de l’implémentation logique des données
(index, décomposition en « fichiers logiques »)
Un SGBD sépare la partie description des données, des données elles mêmes. Cette description est stockée
dans un dictionnaire de données (également géré dans le SGBD) et peut être consultée par les utilisateurs.
De plus, un SGBD doit permettre d’écrire des applications indépendantes de l’implémentation physique des
données (codage des données, ordre dans lequel sont enregistrées les données, support d’enregistrement, etc.)
Types de SGBD
Historiquement les premiers types de SGBD étaient de type hiérarchique, puis sont apparu les SGBD de type
réseau. Actuellement la plupart des SGBD sont de type relationnel .On note aussi l’apparition sur le marché des
SGBD de type objet.
La différence entre ces types de SGBD réside dans les modèles sur lesquels ils s’appuient pour représenter les données.
Modèle hiérarchique :
Les données sont représentées sous forme d’une structure arborescente d’enregistrements. Cette structure est conçue avec des
pointeurs de détermine les chemins d’accès aux données
Modèle réseau
La structure des données peut être visualisée sous la forme d’un graphe quelconque. Comme pour le modèle hiérarchique, la
structure est conçue avec des pointeurs et détermine le chemin d’accès aux données
Pour ces deux modèles les programmes ne sont pas indépendant de la structure logique de la base et du chemin d’accès aux
données : ils doivent décrire comment retrouver les données. La suppression par exemple d’un index entraîne la réécriture de
tous les programmes qui l’utilisaient
Modèle Relationnel
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
10
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Fondé sur la théorie mathématique des relations, le modèle relationnel fournit une représentation très simple des données sous
forme de tables constituées de lignes et de colonnes. De plus il n’y a pas de pointeur qui fige la structure de la base.
La souplesse apportée par cette représentation a permis le développement de langages puissants non procéduraux. Dans ces
langages le programmeur indique quelles informations il veut obtenir et c’est le SGBD qui trouve la manière d’arriver au
résultat. Le programmeur ou l’utilisateur n’a plus à naviguer dans la base pour retrouver ses données. Ces langages peuvent être
utilisés par des non informaticiens et permettent l’écriture de programmes indépendants de la structure logique et physique des
données
Modèle Objet
Les données sont représentées sous forme d’objets au sens donné par les langages orientés objet. Les données sont enregistrées
avec les procédures et les fonctions qui permettent de les manipuler. Les SGBD objets supportent aussi la notion d’héritage
entre classes d’objets.
Types d’utilisateurs d’un SGBD
La gestion d’une base de données fait intervenir plusieurs types acteurs : administrateur, programmeur, utilisateur final. Une
même personne peut occuper plusieurs rôles et un rôle peut être occupé par plusieurs personnes.
L’administrateur de la base est chargé du contrôle de la base de données. Il permet l’accès aux données aux applications ou
individus qui y ont droit et de conserver de bonnes performances d’accès à ces données. Il est aussi chargé des sauvegardes et
des procédures de reprise après panne.
Le programmeur d’applications utilise la base de données pour construire ses applications. Il a le droit de créer de nouvelles
tables et les structures associées (vues, index, cluster, etc.). Il définit avec l’administrateur de la base les droits qui seront
accordés aux utilisateurs des applications qu’il développe.
L’utilisateur final n’a accès qu’aux données qui lui sont utiles. L’administrateur de la base de données peut lui en accorder
certains droits : consultation, modification, suppression de données. En général, il n’a pas le droit de créer de nouvelles tables ni
d’ajouter ou d’enlever des index. En définitive l’utilisateur final n’est pas un expert car il :
− sait ce qu'il veut,
− ne sait pas forcément ce qu'il faut faire pour l'obtenir,
− ne veut pas savoir comment ça marche,
− veut en faire un minimum pour faire tourner son application.
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
11
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Cycle de vie d'une base de données
Modèles de données, schémas et langages
Notion de modèle de données
• Un modèle de données est un ensemble de concepts permettant de décrire la structure d'une base de données. Un
modèle est souvent représenté au moyen d'un formalisme graphique permettant de décrire les données (ou plus
précisément les types de données) et les relations entre les données.
• On distingue trois niveaux de modélisation pour les bases de données :
♦ Le modèle conceptuel
Il permet de décrire le réel selon une approche ontologique, sans prendre en compte les contraintes techniques.
Monde
réel
Conception
(Analyse)
Information à stocker
(futur contenu de la base)
BD
LDD (langage de description des données)
SGBD
LMD (langage de manipulation des données)
Implémentation
Manipulation
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
12
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
♦ Le modèle logique
Il permet de décrire une solution, en prenant une orientation informatique générale (type de SGBD typiquement), mais
indépendamment de choix d'implémentation précis.
♦ Le modèle physique
Il correspond aux choix techniques, en terme de SGBD choisi et de sa mise en oeuvre (programmation, optimisation,
etc.).
Exemple de formalisme de modélisation conceptuelle
♦ Le modèle Entité-Association (Chen) a été le plus répandu dans le cadre de la
conception de bases de données.
♦ Le modèle UML, qui se généralise pour la conception en informatique, se fonde
sur une approche objet.
Exemple de formalisme de modélisation logique
♦ Le modèle relationnel est le modèle dominant.
♦ Le modèle relationnel-objet (adaptation des modèles relationnel et objet au cadre
des SGBD) est actuellement en pleine croissance.
♦ Le modèle objet "pur" reste majoritairement au stade expérimental et de la
recherche.
♦ Des modèles plus anciens (hiérarchique, réseau, etc.) ne sont plus guère utilisés
aujourd'hui.
Notion de schéma de données
Description, au moyen d'un langage formel, d'un ensemble de données dans le contexte d'une BD. Un schéma permet de
décrire la structure d'une base de données, en décrivant l'ensemble des types de données de la base. L'occurrence d'une base de
données est constituée de l'ensemble des données correspondant aux types du schéma de la base.
Exemple : Schéma de base de données
Etudiant (NumEtud, nom, ville)
Module(NumMod, titre)
Inscription(NumEtud, NumMod, date)
Exemple : Instance de base de données
Etudiant (172, Diop, 'Dakar')
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
13
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Etudiant (173, Fall, 'Thies')
Etudiant (174, Lam, 'Louga')
Module(1, 'SGBD')
Module(1, 'Systèmes d'exploitation')
Inscription(172, 1, 2002)
Inscription(172, 2, 2002)
Inscription(173, 1, 2001)
Inscription(174, 2, 2002)
On distingue trois niveaux d'abstraction de schémas :
♦ Le niveau conceptuel
Il permet de décrire les entités et les associations du monde réel. Il s'agit du schéma global de la base de données, il en
propose une vue canonique.
Le niveau conceptuel correspond au modèle conceptuel.
♦ Le niveau externe
Il permet de décrire les entités et les associations du monde réel, mais vues d'un utilisateur ou d'un groupe d'utilisateurs
particuliers (on parle d'ailleurs également de "vue" pour un schéma externe). Il s'agit d'une restriction du schéma
conceptuel orientée vers un usage précis. Il existe généralement plusieurs schémas externes pour un même schéma
conceptuel.
Le niveau externe correspond à un sous ensemble du modèle conceptuel restreint aux points de vue de certains
utilisateurs.
♦ Le niveau interne
Il correspond à l'implémentation physique des entités et associations dans les fichiers de la base.
Le niveau interne correspond aux modèles logiques et physiques.
Remarque :
Les trois niveaux, conceptuel, externe et interne, sont les trois niveaux distingués par le groupe de normalisation
ANSI/X3/SPARC.
Notion de langage de données
C’est un langage informatique permettant de décrire et de manipuler les schémas d'une BD d'une manière assimilable par la
machine.
♦ Synonyme : Langage orienté données.
Exemple : SQL
SQL est le langage orienté données consacré aux SGBD relationnels et relationnel-objet.
Un langage de données peut être décomposé en trois sous langages :
♦ Le Langage de Définition de Données
BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX
14
SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0
Le LDD [Langage de Définition de Données] permet d'implémenter le schéma conceptuel (notion de table en SQL) et
les schémas externes (notion de vue en SQL).
♦ Le Langage de Contrôle de Données
Le LCD [Langage de Contrôle de Données] permet d'implémenter les droits que les utilisateurs ont sur les données et
participe donc à la définition des schémas externes.
♦ Le Langage de Manipulation de Données
Le LMD [Langage de Manipulation de Données] permet l'interrogation et la mise à jour des données. C'est la partie du
langage indispensable pour exploiter la BD et réaliser les applications.
En résumé
Conception
Modèle Conceptuel
Schéma conceptuel et
schémas externes
Modèle Physique
Schéma interne pour un
SGBD particulier
Modèle Logique
Schéma interne
indépendant d’un SGBD
Exemples
- E-A
- UML
Exemples
- Relationnel
- Objet
- Réseau
- Hiérarchique
Exemples
- Oracle
- MySQL
- PosgreSQL
- DB2
- Access
- SQLServer

Contenu connexe

Tendances

[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawaInsight Technology, Inc.
 
Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Alexis Seigneurin
 
BigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceBigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceLilia Sfaxi
 
NOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4jNOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4jTobias Lindaaker
 
An overview of Neo4j Internals
An overview of Neo4j InternalsAn overview of Neo4j Internals
An overview of Neo4j InternalsTobias Lindaaker
 
base de données -note de cours
base de données -note de cours base de données -note de cours
base de données -note de cours Yassine Badri
 
Les défis de l'archivage numérique (Fr)
Les défis de l'archivage numérique (Fr)Les défis de l'archivage numérique (Fr)
Les défis de l'archivage numérique (Fr)CABSIS Consulting Ltd
 
cours base de données
cours base de donnéescours base de données
cours base de donnéesYassine Badri
 
Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfEST-UMI de Meknès
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBRomain Cambien
 
[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL Tuning[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL TuningPgDay.Seoul
 
Introduction to Graph Databases
Introduction to Graph DatabasesIntroduction to Graph Databases
Introduction to Graph DatabasesMax De Marzi
 
Exploring Oracle Multitenant in Oracle Database 12c
Exploring Oracle Multitenant in Oracle Database 12cExploring Oracle Multitenant in Oracle Database 12c
Exploring Oracle Multitenant in Oracle Database 12cZohar Elkayam
 
Dremel: Interactive Analysis of Web-Scale Datasets
Dremel: Interactive Analysis of Web-Scale Datasets Dremel: Interactive Analysis of Web-Scale Datasets
Dremel: Interactive Analysis of Web-Scale Datasets robertlz
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQLLilia Sfaxi
 
CLUB DB2 第122回 DB2管理本の著者が教える 簡単運用管理入門
CLUB DB2 第122回  DB2管理本の著者が教える 簡単運用管理入門CLUB DB2 第122回  DB2管理本の著者が教える 簡単運用管理入門
CLUB DB2 第122回 DB2管理本の著者が教える 簡単運用管理入門Akira Shimosako
 

Tendances (20)

[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
 
Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)
 
BigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceBigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-Reduce
 
MAINVIEW for DB2.ppt
MAINVIEW for DB2.pptMAINVIEW for DB2.ppt
MAINVIEW for DB2.ppt
 
NOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4jNOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4j
 
An overview of Neo4j Internals
An overview of Neo4j InternalsAn overview of Neo4j Internals
An overview of Neo4j Internals
 
Chapitre 4 no sql
Chapitre 4 no sqlChapitre 4 no sql
Chapitre 4 no sql
 
base de données -note de cours
base de données -note de cours base de données -note de cours
base de données -note de cours
 
Les défis de l'archivage numérique (Fr)
Les défis de l'archivage numérique (Fr)Les défis de l'archivage numérique (Fr)
Les défis de l'archivage numérique (Fr)
 
cours base de données
cours base de donnéescours base de données
cours base de données
 
Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdf
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
 
MongoDB e Bancos de Dados Orientados a Documentos
MongoDB e Bancos de Dados Orientados a DocumentosMongoDB e Bancos de Dados Orientados a Documentos
MongoDB e Bancos de Dados Orientados a Documentos
 
[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL Tuning[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL Tuning
 
Introduction to Graph Databases
Introduction to Graph DatabasesIntroduction to Graph Databases
Introduction to Graph Databases
 
Exploring Oracle Multitenant in Oracle Database 12c
Exploring Oracle Multitenant in Oracle Database 12cExploring Oracle Multitenant in Oracle Database 12c
Exploring Oracle Multitenant in Oracle Database 12c
 
Dremel: Interactive Analysis of Web-Scale Datasets
Dremel: Interactive Analysis of Web-Scale Datasets Dremel: Interactive Analysis of Web-Scale Datasets
Dremel: Interactive Analysis of Web-Scale Datasets
 
SGBD
SGBDSGBD
SGBD
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQL
 
CLUB DB2 第122回 DB2管理本の著者が教える 簡単運用管理入門
CLUB DB2 第122回  DB2管理本の著者が教える 簡単運用管理入門CLUB DB2 第122回  DB2管理本の著者が教える 簡単運用管理入門
CLUB DB2 第122回 DB2管理本の著者が教える 簡単運用管理入門
 

Similaire à Bases de donnees fondamentaux

Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.pptIdriss22
 
Simplifier la mise en place d'une stratégie Data Mesh avec Denodo
Simplifier la mise en place d'une stratégie Data Mesh avec DenodoSimplifier la mise en place d'une stratégie Data Mesh avec Denodo
Simplifier la mise en place d'une stratégie Data Mesh avec DenodoDenodo
 
Livre Blanc Sap Dms Sap Plm
Livre Blanc Sap Dms  Sap PlmLivre Blanc Sap Dms  Sap Plm
Livre Blanc Sap Dms Sap PlmSEAL Systems
 
Intro SGBD et BD.ppt
Intro SGBD et BD.pptIntro SGBD et BD.ppt
Intro SGBD et BD.pptBahaty1
 
Ecosystème Big Data
Ecosystème Big DataEcosystème Big Data
Ecosystème Big DataIdriss22
 
cours-intro-base-donnees.pdf
cours-intro-base-donnees.pdfcours-intro-base-donnees.pdf
cours-intro-base-donnees.pdfdjamelbentorkia
 
Livre Blanc : comprendre les data-lakes
Livre Blanc : comprendre les data-lakesLivre Blanc : comprendre les data-lakes
Livre Blanc : comprendre les data-lakesConverteo
 
Intro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.pptIntro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.pptIdriss22
 
Session en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data VirtualizationSession en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data VirtualizationDenodo
 
Le métier d’administrateur de
Le métier d’administrateur deLe métier d’administrateur de
Le métier d’administrateur deAlgeria JUG
 
Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018Converteo
 
Emna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna Borgi
 
Archivage, sauvegarde et restauration pour une virtualisation réussie
Archivage, sauvegarde et restauration pour une virtualisation réussieArchivage, sauvegarde et restauration pour une virtualisation réussie
Archivage, sauvegarde et restauration pour une virtualisation réussieAquastar Consulting
 
Les clés de succès pour moderniser votre architecture de données en 2022
Les clés de succès pour moderniser votre architecture de données en 2022Les clés de succès pour moderniser votre architecture de données en 2022
Les clés de succès pour moderniser votre architecture de données en 2022Denodo
 
Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...
Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...
Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...Denodo
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDenodo
 

Similaire à Bases de donnees fondamentaux (20)

Cours_BD_M1-EAI-2023.pdf
Cours_BD_M1-EAI-2023.pdfCours_BD_M1-EAI-2023.pdf
Cours_BD_M1-EAI-2023.pdf
 
Intro SQL
Intro SQL Intro SQL
Intro SQL
 
Si bdd
Si bddSi bdd
Si bdd
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt
 
Simplifier la mise en place d'une stratégie Data Mesh avec Denodo
Simplifier la mise en place d'une stratégie Data Mesh avec DenodoSimplifier la mise en place d'une stratégie Data Mesh avec Denodo
Simplifier la mise en place d'une stratégie Data Mesh avec Denodo
 
Livre Blanc Sap Dms Sap Plm
Livre Blanc Sap Dms  Sap PlmLivre Blanc Sap Dms  Sap Plm
Livre Blanc Sap Dms Sap Plm
 
Intro SGBD et BD.ppt
Intro SGBD et BD.pptIntro SGBD et BD.ppt
Intro SGBD et BD.ppt
 
Ecosystème Big Data
Ecosystème Big DataEcosystème Big Data
Ecosystème Big Data
 
cours-intro-base-donnees.pdf
cours-intro-base-donnees.pdfcours-intro-base-donnees.pdf
cours-intro-base-donnees.pdf
 
Livre Blanc : comprendre les data-lakes
Livre Blanc : comprendre les data-lakesLivre Blanc : comprendre les data-lakes
Livre Blanc : comprendre les data-lakes
 
Intro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.pptIntro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.ppt
 
Session en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data VirtualizationSession en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data Virtualization
 
Le métier d’administrateur de
Le métier d’administrateur deLe métier d’administrateur de
Le métier d’administrateur de
 
ANTIDOT - Antidot information factory
ANTIDOT - Antidot information factoryANTIDOT - Antidot information factory
ANTIDOT - Antidot information factory
 
Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018
 
Emna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouse
 
Archivage, sauvegarde et restauration pour une virtualisation réussie
Archivage, sauvegarde et restauration pour une virtualisation réussieArchivage, sauvegarde et restauration pour une virtualisation réussie
Archivage, sauvegarde et restauration pour une virtualisation réussie
 
Les clés de succès pour moderniser votre architecture de données en 2022
Les clés de succès pour moderniser votre architecture de données en 2022Les clés de succès pour moderniser votre architecture de données en 2022
Les clés de succès pour moderniser votre architecture de données en 2022
 
Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...
Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...
Webinar Denodo & CRIP : Souveraineté, information sensible et data gouvernanc...
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data Virtualization
 

Dernier

Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxikospam0
 
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdfSTRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdfGamal Mansour
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetJeanYvesMoine
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfAmgdoulHatim
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxrajaakiass01
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcourshalima98ahlmohamed
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLElebaobabbleu
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxabdououanighd
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesMohammedAmineHatoch
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...Universidad Complutense de Madrid
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxShinyaHilalYamanaka
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkRefRama
 
658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdfMariaClaraAlves46
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKNassimaMdh
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...Nguyen Thanh Tu Collection
 
La mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsLa mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsJaouadMhirach
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Technologia Formation
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaireTxaruka
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxhamzagame
 

Dernier (20)

Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdfSTRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
La mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsLa mondialisation avantages et inconvénients
La mondialisation avantages et inconvénients
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 

Bases de donnees fondamentaux

  • 1. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 2 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Table des matières Les bases de données............................................................................................................................................................. 3 Qu’est-ce qu’une base de données ? .................................................................................................................................... 3 Usages des bases de données .............................................................................................................................................. 3 Objectifs des bases de données............................................................................................................................................ 4 Qu’est-ce qu’un SGBD ?........................................................................................................................................................ 4 Architecture d’un SGBD.................................................................................................................................................... 5 Objectifs des SGBD ........................................................................................................................................................... 7 Les objectifs orientés DONNEES ................................................................................................................................... 7 Les objectifs orientés TRAITEMENT............................................................................................................................. 8 Les objectifs orientés ORGANISATION ........................................................................................................................ 8 Fonctions d’un SGBD........................................................................................................................................................ 8 Types de SGBD................................................................................................................................................................. 9 Types d’utilisateurs d’un SGBD ........................................................................................................................................10 Cycle de vie d'une base de données .......................................................................................................................................11 Modèles de données, schémas et langages .............................................................................................................................11 Notion de modèle de données ..........................................................................................................................................11 Notion de schéma de données ..........................................................................................................................................12 Notion de langage de données...........................................................................................................................................13
  • 2. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 3 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Concepts fondamentaux Les bases de données Qu’est-ce qu’une base de données ? Une base de données est un ensemble de données modélisant les objets d’une partie du monde réel et servant de support à une application informatique. Pour mériter le terme de base de données, un ensemble de données non indépendantes doit être interrogeable par le contenu, c’est à dire que l’on doit pouvoir retrouver tous les objets qui satisfont à un certain critère [G.Gardarin]. En d’autres termes, c’est un ensemble structuré de données mémorisé sur un support permanent (cohérent, intégré, partagé) qui peut être manipulé par plusieurs utilisateurs ayant des vues différentes sur ces données. Par données, il faut comprendre : une représentation d’un fait à l’aide d’un code binaire stocké dans la mémoire de l’ordinateur. Une donnée doit avoir un type. Le type est ensemble d’objets ayant les mêmes caractéristiques et manipulables par des opérations identiques. On distingue : − Données simples : entier, réel, chaîne de caractères, réel, etc. − Données de type complexe : composée de données de types simples − Donnée de type multimédia : texte, image, son vidéo Exemple de données : • 500 (type de données : entier) • Renault Megane Noir DK1234AX (type de données : véhicule) Usages des bases de données Voici des exemples classiques d’utilisation des bases de données : − Gestion des comptes clients d’une banque − Gestion des commandes d’un site d’e-commerce − Système de réservation de billets d’avion
  • 3. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 4 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 − Gestion des étudiants d’une université − Gestion des personnels d’une entreprise − Bases de données d’articles scientifiques Les données manipulées dans ces applications sont stockées dans une base de données. Objectifs des bases de données • Centralisation logique de l’information Non redondance (la même information ne doit pas figurer plusieurs fois dans la BD ⇒ Ce qui diminue les risques d’erreurs de mise à jour et supprime le problème d’avoir des informations contradictoires sur une même donnée dans de fichiers différents • Indépendance données traitement • Partage des données (accessibilité à plusieurs utilisateurs simultanés) confidentialité (login, mot de passe) autorisation d’accès (lecture, écriture) accès concurrents • Intégrité des données règles permettant d’éliminer des donner incorrectes (contrainte d’intégrité référentielle, unicité de l’identifiant…). Qu’est-ce qu’un SGBD ? Un système de gestion de base de données ou SGBD est un programme générique qui permet la définition, la mise en œuvre et l’exploitation (insérer, supprimer, mettre à jour) d’une base de données. Exemple de SGBD : • MySQL • Oracle Database • Microsoft SQL Server Le SGBD va permettre aux utilisateurs d’insérer, de modifier et de rechercher efficacement des données spécifiques dans une grande masse de d’informations (pouvant atteindre des milliards d’octets). Le SGBD constitue interface entre programme d'application des utilisateurs d'une part et Base de données d'autre part. Il sert à masquer à l’utilisateur les détails complexes liés à la gestion des fichiers.
  • 4. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 5 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Architecture d’un SGBD Structure en couche Comme cité précédemment le SGBD constitue l’interface entre les utilisateurs et la base de données (voir figure ci-dessous). Un SGBD est comporte trois couches : − Couche interne (ou physique) : stockage des données sur des supports physiques, gestions des structures de mémorisation (fichiers) et des accès (gestions des index et des clés) − Couche logique : contrôle global et structure globale des données − Couche externe : dialogue avec les utilisateurs, analyse de leurs demandes, contrôle des droits d’accès et présentation des résultats, environnement de programmation (intégration avec un langage de programmation). La représentation de la base de données est composée de plusieurs schémas externes.
  • 5. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 6 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Architecture ANSI/SPARC Elle donne une vue plus détaillée du schéma précédent. Schéma Externe Schéma Externe Schéma Externe Schéma Conceptuel Schéma Physique Correspondances Externe/Conceptuel Correspondances Conceptuel/Physique Utilisateurs (Vues) Concepteur, administrateur (modèle de données) Structures de données (fichiers, index) Couche externe Couche logique Couche interne Schémas Externes Schéma Logique Schéma Interne Dialogue Contrôle Stockage B Utilisateurs Interface utilisateur Interface d’accès aux données SGBD
  • 6. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 7 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Objectifs des SGBD Le principal objectif d’un SGBD est d’assurer l’indépendance des programmes aux données, c’est à dire la possibilité de modifier les schémas conceptuel et interne des données sans modifier les programmes. Cet objectif est justifié afin d’éviter une maintenance coûteuse des programmes lors des modifications des structures logiques et physiques. Les objectifs d’un SGBD sont [G.Gardarin]: − Indépendance physique des programmes aux données − Indépendance logique des programmes aux données − Manipulation des données par des langages non procéduraux − Administration facilitée des données − Efficacité des accès aux données − Partage des données − Cohérence des données − Redondance contrôlée des données − Sécurité des données Ces objectifs peuvent être classés en plusieurs catégories : Les objectifs orientés DONNEES − Non redondance des données : avec une approche base de données, les fichiers plus ou moins redondants seront intégrés en un seul fichier ou plusieurs fichiers contenant des données distinctes. − Partageabilité des données : permettre le partage des données de la base à plusieurs applications, utilisateurs, simultanément. − Sécurité des données : les données doivent être protégées contre les accès (non autorisés, mal intentionnés). D’où la nécessité de contrôler les donnés. − Cohérence des données : les données sont soumises à certaines règles. Par exemple : un compte bancaire est rattaché à un et un seul client. Le SGBD doit vérifier que les applications respectent ces règles et contraintes d’intégrité. Donc il faut avoir des connaissances sur les données et leur signification.
  • 7. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 8 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Les objectifs orientés TRAITEMENT − Indépendance physique des données : on peut changer le schéma physique sans remettre en cause le schéma conceptuel (et les schémas externes). On peut modifier l'organisation physique des fichiers, rajouter ou supprimer des méthodes d'accès ; − Indépendance logique des données : on peut changer le niveau conceptuel sans remettre en cause les schémas externes ou les programmes d'application. L'ajout ou le retrait de nouveaux concepts ne doit pas modifier des éléments qui n'y font pas explicitement référence ; − Manipulation facile des données (pour les non-informaticiens) : pouvoir les consulter, les interroger, les mettre à jour − Manipulation facile des données (pour les informaticiens) : langage de développement de haut niveau Les objectifs orientés ORGANISATION − Administration centralisée des données o Permettre un contôlr efficace des données ; o Résoudre les conflits entre divers point de vue d’utilisateurs ; o Optimisation des accès aux données o Optimisation des moyens informatiques − Fonctions o Administrateur des données o Administrateur de base de données − Centralisation/décentralisation o La base de données peut être distribué/partagé. Fonctions d’un SGBD Un SGBD doit permettre de : ! Décrire les données qui seront stockées stocker ! Gérer les données ● Manipuler des données (ajout, modification, suppression d’informations) , ● Assurer la cohérence (ou intégrité) des données (contraintes de domaines, d’existence, etc.), ● Assurer la confidentialité des données (mots de passe, autorisation…), ● Résoudre des problèmes d’accès multiples aux données (blocages, transactions
  • 8. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 9 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 parallèles), ● Prévoir des procédures de reprise en cas de panne ( copies de sauvegarde, journaux) ! Obtenir des renseignements à partir des données stockées au moyen de requêtes (sélection, tri, calcul, agrégation, etc.), ! Permettre l’écriture d’applications indépendantes de l’implémentation physique des données (codage, supports d’enregistrement) et aussi indépendantes que possible de l’implémentation logique des données (index, décomposition en « fichiers logiques ») Un SGBD sépare la partie description des données, des données elles mêmes. Cette description est stockée dans un dictionnaire de données (également géré dans le SGBD) et peut être consultée par les utilisateurs. De plus, un SGBD doit permettre d’écrire des applications indépendantes de l’implémentation physique des données (codage des données, ordre dans lequel sont enregistrées les données, support d’enregistrement, etc.) Types de SGBD Historiquement les premiers types de SGBD étaient de type hiérarchique, puis sont apparu les SGBD de type réseau. Actuellement la plupart des SGBD sont de type relationnel .On note aussi l’apparition sur le marché des SGBD de type objet. La différence entre ces types de SGBD réside dans les modèles sur lesquels ils s’appuient pour représenter les données. Modèle hiérarchique : Les données sont représentées sous forme d’une structure arborescente d’enregistrements. Cette structure est conçue avec des pointeurs de détermine les chemins d’accès aux données Modèle réseau La structure des données peut être visualisée sous la forme d’un graphe quelconque. Comme pour le modèle hiérarchique, la structure est conçue avec des pointeurs et détermine le chemin d’accès aux données Pour ces deux modèles les programmes ne sont pas indépendant de la structure logique de la base et du chemin d’accès aux données : ils doivent décrire comment retrouver les données. La suppression par exemple d’un index entraîne la réécriture de tous les programmes qui l’utilisaient Modèle Relationnel
  • 9. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 10 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Fondé sur la théorie mathématique des relations, le modèle relationnel fournit une représentation très simple des données sous forme de tables constituées de lignes et de colonnes. De plus il n’y a pas de pointeur qui fige la structure de la base. La souplesse apportée par cette représentation a permis le développement de langages puissants non procéduraux. Dans ces langages le programmeur indique quelles informations il veut obtenir et c’est le SGBD qui trouve la manière d’arriver au résultat. Le programmeur ou l’utilisateur n’a plus à naviguer dans la base pour retrouver ses données. Ces langages peuvent être utilisés par des non informaticiens et permettent l’écriture de programmes indépendants de la structure logique et physique des données Modèle Objet Les données sont représentées sous forme d’objets au sens donné par les langages orientés objet. Les données sont enregistrées avec les procédures et les fonctions qui permettent de les manipuler. Les SGBD objets supportent aussi la notion d’héritage entre classes d’objets. Types d’utilisateurs d’un SGBD La gestion d’une base de données fait intervenir plusieurs types acteurs : administrateur, programmeur, utilisateur final. Une même personne peut occuper plusieurs rôles et un rôle peut être occupé par plusieurs personnes. L’administrateur de la base est chargé du contrôle de la base de données. Il permet l’accès aux données aux applications ou individus qui y ont droit et de conserver de bonnes performances d’accès à ces données. Il est aussi chargé des sauvegardes et des procédures de reprise après panne. Le programmeur d’applications utilise la base de données pour construire ses applications. Il a le droit de créer de nouvelles tables et les structures associées (vues, index, cluster, etc.). Il définit avec l’administrateur de la base les droits qui seront accordés aux utilisateurs des applications qu’il développe. L’utilisateur final n’a accès qu’aux données qui lui sont utiles. L’administrateur de la base de données peut lui en accorder certains droits : consultation, modification, suppression de données. En général, il n’a pas le droit de créer de nouvelles tables ni d’ajouter ou d’enlever des index. En définitive l’utilisateur final n’est pas un expert car il : − sait ce qu'il veut, − ne sait pas forcément ce qu'il faut faire pour l'obtenir, − ne veut pas savoir comment ça marche, − veut en faire un minimum pour faire tourner son application.
  • 10. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 11 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Cycle de vie d'une base de données Modèles de données, schémas et langages Notion de modèle de données • Un modèle de données est un ensemble de concepts permettant de décrire la structure d'une base de données. Un modèle est souvent représenté au moyen d'un formalisme graphique permettant de décrire les données (ou plus précisément les types de données) et les relations entre les données. • On distingue trois niveaux de modélisation pour les bases de données : ♦ Le modèle conceptuel Il permet de décrire le réel selon une approche ontologique, sans prendre en compte les contraintes techniques. Monde réel Conception (Analyse) Information à stocker (futur contenu de la base) BD LDD (langage de description des données) SGBD LMD (langage de manipulation des données) Implémentation Manipulation
  • 11. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 12 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 ♦ Le modèle logique Il permet de décrire une solution, en prenant une orientation informatique générale (type de SGBD typiquement), mais indépendamment de choix d'implémentation précis. ♦ Le modèle physique Il correspond aux choix techniques, en terme de SGBD choisi et de sa mise en oeuvre (programmation, optimisation, etc.). Exemple de formalisme de modélisation conceptuelle ♦ Le modèle Entité-Association (Chen) a été le plus répandu dans le cadre de la conception de bases de données. ♦ Le modèle UML, qui se généralise pour la conception en informatique, se fonde sur une approche objet. Exemple de formalisme de modélisation logique ♦ Le modèle relationnel est le modèle dominant. ♦ Le modèle relationnel-objet (adaptation des modèles relationnel et objet au cadre des SGBD) est actuellement en pleine croissance. ♦ Le modèle objet "pur" reste majoritairement au stade expérimental et de la recherche. ♦ Des modèles plus anciens (hiérarchique, réseau, etc.) ne sont plus guère utilisés aujourd'hui. Notion de schéma de données Description, au moyen d'un langage formel, d'un ensemble de données dans le contexte d'une BD. Un schéma permet de décrire la structure d'une base de données, en décrivant l'ensemble des types de données de la base. L'occurrence d'une base de données est constituée de l'ensemble des données correspondant aux types du schéma de la base. Exemple : Schéma de base de données Etudiant (NumEtud, nom, ville) Module(NumMod, titre) Inscription(NumEtud, NumMod, date) Exemple : Instance de base de données Etudiant (172, Diop, 'Dakar')
  • 12. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 13 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Etudiant (173, Fall, 'Thies') Etudiant (174, Lam, 'Louga') Module(1, 'SGBD') Module(1, 'Systèmes d'exploitation') Inscription(172, 1, 2002) Inscription(172, 2, 2002) Inscription(173, 1, 2001) Inscription(174, 2, 2002) On distingue trois niveaux d'abstraction de schémas : ♦ Le niveau conceptuel Il permet de décrire les entités et les associations du monde réel. Il s'agit du schéma global de la base de données, il en propose une vue canonique. Le niveau conceptuel correspond au modèle conceptuel. ♦ Le niveau externe Il permet de décrire les entités et les associations du monde réel, mais vues d'un utilisateur ou d'un groupe d'utilisateurs particuliers (on parle d'ailleurs également de "vue" pour un schéma externe). Il s'agit d'une restriction du schéma conceptuel orientée vers un usage précis. Il existe généralement plusieurs schémas externes pour un même schéma conceptuel. Le niveau externe correspond à un sous ensemble du modèle conceptuel restreint aux points de vue de certains utilisateurs. ♦ Le niveau interne Il correspond à l'implémentation physique des entités et associations dans les fichiers de la base. Le niveau interne correspond aux modèles logiques et physiques. Remarque : Les trois niveaux, conceptuel, externe et interne, sont les trois niveaux distingués par le groupe de normalisation ANSI/X3/SPARC. Notion de langage de données C’est un langage informatique permettant de décrire et de manipuler les schémas d'une BD d'une manière assimilable par la machine. ♦ Synonyme : Langage orienté données. Exemple : SQL SQL est le langage orienté données consacré aux SGBD relationnels et relationnel-objet. Un langage de données peut être décomposé en trois sous langages : ♦ Le Langage de Définition de Données
  • 13. BASES DE DONNEES IHP/PHP | CONCEPTS FONDAMENTAUX 14 SUPPORT DE COURS VERSION IMPRIMABLE Version 2.0 Le LDD [Langage de Définition de Données] permet d'implémenter le schéma conceptuel (notion de table en SQL) et les schémas externes (notion de vue en SQL). ♦ Le Langage de Contrôle de Données Le LCD [Langage de Contrôle de Données] permet d'implémenter les droits que les utilisateurs ont sur les données et participe donc à la définition des schémas externes. ♦ Le Langage de Manipulation de Données Le LMD [Langage de Manipulation de Données] permet l'interrogation et la mise à jour des données. C'est la partie du langage indispensable pour exploiter la BD et réaliser les applications. En résumé Conception Modèle Conceptuel Schéma conceptuel et schémas externes Modèle Physique Schéma interne pour un SGBD particulier Modèle Logique Schéma interne indépendant d’un SGBD Exemples - E-A - UML Exemples - Relationnel - Objet - Réseau - Hiérarchique Exemples - Oracle - MySQL - PosgreSQL - DB2 - Access - SQLServer