Nothing Special   »   [go: up one dir, main page]

Chap1-Introduction - Aux BDR PDF

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 32

Introduction aux bases de

données

Dr N. BAME
1
Notion de base de données
Description générale
Base de données : Un ensemble organisé d’informations
avec un objectif commun.
• Peu importe le support utilisé pour rassembler et stocker les
données (papier, fichiers, etc.), dès lors que des données sont
rassemblées et stockées d’une manière organisée dans un but
spécifique, on parle de base de données.
• Plus précisément, on appelle base de données un ensemble
structuré et organisé permettant le stockage de grandes
quantités d’informations afin d’en faciliter l’exploitation
– ajout, mise à jour, recherche de données

Ensemble cohérent de données structurées, fiables et


partagées entre plusieurs utilisateurs 2
Exemples
• Le répertoire d’un annuaire téléphonique ou le registre des
rendez-vous d’une assistante de direction ou encore le
registre des entrées d’une entreprise peuvent être vus
comme une base de données.
Répertoire téléphonique

Nom Prénom Adresse Téléphone


Sané Arfang Thies 782314567
Guèye Macoumba Louga 701234565
Fall Thiandella Mbour 760987886

Registre de rendez-vous
Nom Prénom Heure Date
Diouf Niokhor 8H 12/01/2018
Sow Mariétou 10H 12/01/2018
Guèye Mayoro 8H 13/01/2018
3
Notion de base de données
Base de données informatisée
• ensemble structuré de données enregistrées sur des
supports accessibles par un équipement informatique,
représentant des informations du monde réel et pouvant
être interrogées et mises à jour par une communauté
d’utilisateurs.

• Le résultat de la conception d’une base de données


informatisée est une description des données.
• Définition des propriétés d’ensembles d’objets modélisés
dans la base de données et non pas d’objets particuliers.
• Cette description des données est réalisée en utilisant un
modèle de données.
• Outil formel utilisé pour comprendre l’organisation logique des
données.
• Les objets particuliers sont créés par des programmes d’applications
ou des langages de manipulation lors des insertions et des mises à
jour des données.
4
Exemples
• L’application pour la gestion des inscriptions de
votre établissement s’appuie sur une base de
données informatisée.

Partie de la base de données des inscriptions d’étudiants


Numéro de Nom Prénom Date de Téléphone classe
carte naissance
2018001U2 Ndiaye Moussa 31/01/1999 764446555 M1PCSM
2017041U5 Mané Lamine 23/07/2002 705675876 L2Informatique
2017123Z9 Guirassy Demba 12/04/2000 799870657 L3Informatique
201899A4 Diallo Dieynaba 14/05/1995 770987890 L3MPI
201878B3 Diop Mamadou 01/02/1994 782345654 L3PCSM
5
Système de Gestion de Fichiers
• Une base de données n’étant du moins qu’un ensemble de
fichiers.
• Les données sont stockées dans des fichiers
– différentes méthodes d’accès (séquentiel, indexé, haché, etc.)
– un fichiers peut être utilisé par plusieurs programmes

6
Problèmes avec les fichiers
• Faible structuration des données
– données «plates»
• Dépendance entre programmes et fichiers
– écrire un programme dédié à chaque tache
– modification. de fichier => modif. de programmes
• Redondance des données
– La même donnée stockée dans plusieurs fichiers
• Absence de cohérence globale des données
– difficulté d’exprimer et de garantir des contraintes d’intégrité
• Faible performance d’accès
– Les données souvent volumineuses, plusieurs usagers
• Concurrence d’accès
– interaction entre plusieurs programmes
• Sécurité et protection des données
– données de sensibilités différentes

7
Approche Base de Données avec un SGBD

8
SGBD vs système de fichiers
• Contient les BDs ainsi que leur description et contraintes (méta-
données stockées dans le catalogue du SGBD)
• Centralisation de l'information, représentation de relations complexes
entre les données, permet de trouver et de mettre à jour efficacement
des données reliées
• Contrôle de la redondance des données
• Contrôle des niveaux d'accès aux données : sécurité des données
• Stockage persistant pour les données des applications, structures de
stockage et interrogation efficace des données
• Abstraction des données, isolation entre les données et les traitements
• Plusieurs vues des mêmes données, interfaces utilisateur multiples
• Accès simultané aux données centralisées par plusieurs applications,
contrôle de concurrence, partage de données
• Définition de contraintes d'intégrité et automatisation de leur
maintenance : triggers
9
Définitions
• Une base de données (BD) est une (grande)
collection de données structurées sur des entités
qui existent dans le contexte modélisé

• La structure des données est déterminée par le


modèle de données

• Un système de gestion de base de données (SGBD)


est un (gros) logiciel qui facilite la gestion et l’accès
à une BD par de nombreux utilisateurs.
10
Aperçu sur les bases de données
• Où trouve-t-on des bases de données ?
– Web : sites marchands (expat, coinafrique) , réseaux sociaux, ...
– finance : applications financières, gestion de comptes, ...
– Économie : e-commerce (jumia), services de ventes/achats,...
– Industrie : gestion d’une cimenterie, chaînes de production, ...
– transports : réservation de billets (Dakar Dem Dikk), gestion de
trains/avions,...
– Science : données d'expérimentation,...
– services publiques : impôts, police, état civil, …
– Plein d’autres domaines
• Quels sont les types de Bases de Données ?
– Les BD relationnelles (prédominantes : données de gestion)
– Les BD objet, XML, RDF (orientées web, données techniques)
11
Comment construire une base de
données
1. Analyse des besoins
Observer le monde réel
Identifier les informations pertinentes

2. Modélisation des données


Formaliser les besoins

3. Implantation des données et des


procédures d’interrogation et de mise
à jour
BD proprement parlé
12
Construction d'une base de données

- Structuré + Structuré

13
Quels outils?
1. Analyse des besoins :
Discussion ‘informelle’ qui découle sur une documentation
technique

2. Modélisation des données :


Traduction des besoins en des concepts de base : entités
et lien entre elles (modèle EA)

3. Implantation des données :


Langages compréhensibles par la machine
SQL (Structured Query Language) est le standard pour les
données relationnelles
14
Modèles de données
Formalisme qui définit la structure, la sémantique et
les opérations d’une base de données
• Modèle conceptuel
– pour la conception d’applications
– modèle entité-association, UML, Merise, …
• Modèle logique
– pour l’utilisation de la BD, supporté par un SGBD
– modèles hiérarchique, réseau, relationnel, objet
• Modèle physique
– pour l’implantation du SGBD
– Organisation et stockage des données, indexes, …
15
Modélisation du réel

16
Modèles de données
Modèle entité-association
– Description haut niveau des
données
– entité et les liens ente elles
(associations)
=> concepteur, client

Modèle relationnel
– Représentation logique des
données
– Concept de tables
=> concepteur, développeur
17
Système de Gestion de Base de données
• SGBD-DBMS
• Database Management System

• Ensemble d'outils logiciels permettant la création


et l'utilisation des bases de données

• Fournit un langage de définition des données et


un langage de manipulation des données
• DDL: Data Definition Language
• DML: Data Manipulation Language
Fonctions d’un SGBD
Traitement et optimisation de requêtes
– performances obtenues automatiquement
Transactions
– exécution des requêtes par des unités atomiques
– indépendance à la concurrence multi-utilisateurs et aux
pannes
Conception d’applications BD
– conception visuelle des schémas de BD
– conception des traitements et des interfaces graphiques
Administration système
– outils d’audit et de réglage (tuning)
– visualisation des plans d’exécution 19
Langages des SGBD
• Langage de définition des données (DDL : Data
Definition Language)
– pour définir les schémas externes (tables, vues), logiques et
physiques
• Création des tables
• Définition des contraintes
– les définitions sont stockées dans le répertoire système
(dictionnaire)
• Langage de manipulation des données ( DML : Data
Manipulation Language)
– Interrogation des données
– Insertions, modification et suppression données
• Peut être autonome (par ex. SQL seul) ou intégré dans
un langage de programmation (par ex. Java/SQL) 20
Langages des SGBD : spécificités
• Langage procédural
– Écrire le programme qui retourne, supprime ou modifie
les données

• Langage déclaratif :
– Quelles données retourner, supprimer, modifier?
– Le système génère un programme « optimisé » pour
réaliser la tâche demandée

Attrait pour les langages déclaratifs (se concentrer


sur la logique de l’appli, pas sur l’accès aux données)
21
Utilisateurs d’un SGBD
Utilisateur final (end user)
 accède la BD par des formes d’écran, des interfaces
applicatives ou, pour les plus experts, des requêtes ad-
hoc en DML (SQL)
Programmeur d’application
 conçoit et implémente des applications qui accèdent la
BD
Administrateur de BD (DBA)
 définit et gère le schéma conceptuel et les vues
 gère le schéma interne et règle les performances
 charge et organise la BD
 gère la sécurité et la fiabilité
22
Architecture système

23
Architecture d’un SGBD
Niveau externe

Niveau logique

Niveau physique
Niveau physique
• S'appuie sur le système de gestion de fichiers de
l'OS pour stocker les données

• Gère le partage des données et les accès


concurrents

• Assure la fiabilité des données, notamment suite à


des pannes

• La personne responsable de ce niveau est


l'administrateur
Niveau logique
• Correspond à la vision des données
indépendamment des applications individuelles

• Le langage de définition de données permet de


mettre en place les données de manière
structurée et correspondant au modèle élaboré

• Le langage de manipulation de données permet


la consultation et la mise à jour de ces données
Niveau externe
• Correspond aux vues utilisateurs via leurs
applications

• Les accès utilisateurs peuvent être distants,


provenir de diverses interfaces et langages

• Chaque utilisateur ne voit que les données qui lui


sont utiles

• Il permet le dialogue courant avec la base de


données
Quelques SGBD connus et utilisés
• PostgreSQL
• MySQL
• H2 DB Engine
• Oracle
• IBM DB2
• Microsoft SQL Server
• Sybase
• Informix

28
Histoire des bases de données
Années 1960:
 début 1960: Charles Bachmann développe le premier
SGBD, IDS, chez Honeywell
• modèle réseau: les associations entre les données sont
représentées par un graphe
 Fin 1960: IBM lance le SGBD IMS
 modèle hiérarchique: les associations entre les données sont
représentées par un arbre
 fin 1960: standardisation du modèle réseau

29
Histoire des bases de données
Années 1970:
 1970: Ted Codd définit le modèle relationnel au IBM San
Jose Laboratory
 2 projets de recherche majeurs
• INGRES, University of California, Berkeley
 devint le produit INGRES, suivi par POSTGRES, logiciel libre, qui devint
le produit ILLUSTRA, racheté par INFORMIX
• System R, IBM San Jose Laboratory
 devint DB2, inspira ORACLE
 1976: Peter Chen définit le modèle Entité-Association
(Entity-Relationship)

30
Histoire des bases de données
Années 1980
 maturation de la technologie relationnelle
 standardisation de SQL
Années 1990
 amélioration constante de la technologie relationnelle
 support de la distribution et du parallélisme
 modèle objet, ODMG
 fin 1990 : le relationnel-objet, SQL3
 nouveaux domaines d’application: entrepôts de données et
décisionnel, Web, multimédia, mobiles, etc.
Années 2000
 apparition de XML…
Années 2010
 Base de données NoSQL dans le contexte du Big data
 Modèle MapReduce
 Hadoop, Spark, MongoDB, …
 Base de données en mémoire (In-memory DB)
31
 MonetDB, H2 DB Engine, …
Conclusion
• L’intérêt des bases de données
 Méthodologie pour la conception et la structuration
de données
 Niveaux d’abstraction permettent l’interopérabilité
entre systèmes
• Plusieurs étapes pour créer une base de données
 Analyse de besoins
 Modélisation des données
 Création des données

32

Vous aimerez peut-être aussi