Plan
• Outils classiques
• Evolution des outils de stockage
• Des fichiers aux bases de données
• Définition d’une BD
• Concepts relatifs
• Objectifs d’une BD
• Caractéristiques d’une BD
• Domaines d’applications
• Processus de développement
• Conception d’une BD
• Types de BD et évolution
• BD hiérarchique, réseau, relationnelle, relationnelle-objet, orientée-
objet
• Challenges
FESSI B. 2
FESSI B. 1
Outils classiques
Bande magnétique
Fichiers
Base de données
FESSI B. 4
FESSI B. 2
Evolution des outils de stockage
Fichiers
Bases de données
Outils mobiles
Datawarehouse
Cloud
Outils traditionnels de stockage
Entrepôt de données
Plusieurs fichiers => redondance des données => mises à jour difficile
6
Intégration et partage des données
FESSI B.
FESSI B. 3
Définition d’une BD
FESSI B. 7
Définition d’une BD
• Une BD est faite pour enregistrer des faits, des opérations au sein
d'un organisme (administration, banque, université, hôpital, etc.)
FESSI B. 8
FESSI B. 4
Concepts relatifs
Système de
Gestion de Base
de Données
(SGBD)
FESSI B. 9
Concepts relatifs
Administration
BD
FESSI B. 10
10
FESSI B. 5
Concepts relatifs
Banque de
données (B-D)
FESSI B. 11
11
Objectifs d’une BD
FESSI B. 12
12
FESSI B. 6
Caractéristiques d’une BD
Base de données = ensemble de tables
FESSI B. 13
13
Domaines d’applications
FESSI B. 14
14
FESSI B. 7
Processus de développement
Étude et compréhension
Monde réel
Etape physique
FESSI B. 15
15
Processus de développement
Capture des besoins
– Etude et compréhension des besoins des utilisateurs, à travers les entretiens et les
analyses des flux d’information
Etape conceptuelle
– Choix d’une méthode et un formalisme de conception
– Choix d’un modèle de conception: E-A, Objet
– Elaboration du schéma conceptuel à l’aide de l’outil approprié (Rational Rose, Power
AMC, etc.)
Etape logique
– Choisir un modèle logique: relationnel, relationnel-objet, objet, etc.
– Affinement et optimisation du schéma: normalisation, dénormalisation, etc.
Etape physique
– Choix d’un SGBD: relationnel, relationnel-objet, objet
– Définition du langage approprié: SQL, PL/SQL, JDBC, Java, etc.
– Optimisation du schéma: groupement, indexes, etc.
– Administration de la BD: Oracle, My SQL, DB2
Logiciels et matériels
– Définition et acquisition des logiciels et matériels nécessaires pour la mise en place de
la BD.
FESSI B. 16
16
FESSI B. 8
Processus de développement
Niveaux d’abstraction
• Vue ou Schéma externe ou niveau externe : user …….
c’est la description des données de la part
des utilisateurs.
• Schéma conceptuel ou niveau conceptuel :
c’est la description des données en termes administrateur Schéma conceptuel
de types d’objets et de liens logiques,
indépendamment de toute représentation
en machine.
• Schéma physique ou niveau interne : c’est
la description des données en terme de
SGBD Schéma physique
représentation physique en machine,
correspondant à une spécification des
structures de mémorisation et des
méthodes de stockage et d’accès utilisées Les trois niveaux sont indépendants
pour ranger et retrouver les données sur
disques (fichiers, indexes, etc.). FESSI B. 17
17
Conception d’une BD
• Elle permet la structuration du domaine d’application afin de:
–le représenter sous forme de types et de tables
–appliquer des contraintes sur les données afin de tirer plus de
sémantique
FESSI B. 18
18
FESSI B. 9
Conception d’une BD
• Elaboration d’un schéma conceptuel: Énoncé
1.Identification des objets (entités ou classes)
Analyse et
2.Identification des associations modélisation
3.Identification des attributs des objets
4.Définition des identifiants Schéma
conceptuel
• La conception peut être réalisée à l’aide :
Traduction
Schéma
Modèle E-A Modèle Objet (UML, classes) logique
Implantation
Schéma
physique
Modèle logique (ou relationnel) de données
FESSI B. 19
19
Conception d’une BD
• Modèle E-A vs Modèle Objet: Rapprochement entre concepts
Modèle E-A Modèle Objet
Entité Classe
Propriété Attribut
Occurrences Instances
Cardinalités Multiplicités
Relation Association
Généralisation Généralisation
• Modèle E-A: s’appuie sur une approche systémique appliquée sur les
données et les traitements. La priorité est accordée à l’aspect des
données puisqu’elles représentent l’aspect le plus important et le plus
stable du SI.
• Modèle Objet: s’appuie sur une approche objet qui traite conjointement
les données et les traitements pour chaque classe de la modélisation. La
priorité est accordée à l’aspect des traitements par rapport aux données.
FESSI B. 20
20
FESSI B. 10
Types de BD et évolution
Orienté-objets/
Web/ Multimédias Big data
2004/5..2010 2012….
Relationnels-objets
Relationnels 1980..2000
1970..1990
Hiérarchique et Réseau
1960..1980
21
BD hiérarchique
• Les données sont organisées selon une arborescence. Chaque nœud de l’arbre
correspond à une classe d’entité du monde réel et les chemins entre les nœuds
représentent les liens existants entre les objets.
• Un seul type de lien existe dans cette arborescence : 1:N
• Le modèle hiérarchique est définit par deux classes:
– Un seul segment racine
– Chaque segment à l’exception de la racine a un seul supérieur hiérarchique.
• SGBD hiérarchique: IMSIBM (Information Management System), 1969
• DL1: Langage de manipulation de BD hiérarchique
• L’accès est toujours fait par le segment racine (passage hiérarchique)
• Différents types d’organisation physique: HSAM, HISAM, HDAM, HIDAM
Pas de définition des associations entre les différents
A segments, puisque chaque segment a son dépendant
1 hiérarchique
N Existence d’un seul point d’accès qui est la racine
C
Représentation arborescente ne décrit pas toujours la
B D E
réalité
Problème de mise à jour
FESSI B. 22
22
FESSI B. 11
BD réseaux
Integrated Data Store (IDS)+Associated PL/1 (APL)
23
BD relationnelle
• Elle est basée sur un SGBD relationnel, qui est le modèle le plus utilisé par
les SGBDs disponible sur le marché, exemples: Oracle, Informix, DB2,
Ingres, Sybase, dBase, Access
• Le modèle relationnel est défini par Ted Codd en 1970 et développé par
IBM lab
• C’est un modèle de niveau logique disposant d’un support théorique très
solide
• Il est simple utilisant deux concepts pour représenter les objets et les
associations du monde réel: relation (table) et attribut (colonne)
• Il offre deux langages de requêtes:
• Langage algébrique basé sur la théorie des ensembles
• Langage prédicatif basé sur la logique
• Le langage SQL constitue une norme pour les langages de manipulation
de données relationnels le plus répandu
• La théorie de la normalisation des relations, qui permet de se
débarrasser des incohérences au moment de la conception d'une base de
données, est associée au modèle relationnel
FESSI B. 24
24
FESSI B. 12
BD relationnelle objet
• C’est une extension du modèle relationnel :
- Ajout d’un certain nombre des concepts de l’approche objet au
relationnel, et
- Conservation de la notion de table et extension de SQL.
• Le modèle Objet-Relationnel (OR) permet de :
- définir de nouveaux types utilisateurs (User-defined-Type (UDT))
simples ou complexes, comprenant des méthodes associées.
- supporter l’héritage de type pour profiter du polymorphisme et faciliter
la réutilisation.
Ajout des possibilités objets au modèle relationnel
• SQL 3 contient :
- Un langage de programmation
- Un langage de définition de types
- Un langage de requêtes
• SGBD Objet-Relationnel:
- Nouveaux : Illustra, UniSQL, ODB II, Versant
- Relationnels étendus ("universels")
FESSI B. : Ingres, Oracle, DB2 UDB, Informix25
25
BD orientée objet
Le modèle orienté objet:
- est né de la convergence de deux domaines: les bases de données et
les langages de programmation OO
-est promu par l’ODMG (Object Data Management Group) qui a défini les
concepts clés du modèle
- offre aux langages de programmation OO des modalités de stockage
permanent et de partage entre plusieurs utilisateurs
- permet la représentation et l’intégration de structures (données)
complexes et/ou à taille variable
- respecte les propriétés de l’approche objet : RICE
BD = ensemble de collections d'objets (classe)
Des prototypes de SGBDOO : GemStone, O2, ObjectStore, Ontos,
Objectivity, Jasmine
Gestion des structures de données complexes, en profitant de la
puissance de modélisation des modèles objets et de la puissance de
stockage des BD classiques
FESSI B. 26
26
FESSI B. 13
Challenges
Volumes et performances.
Une base de données peut contenir des dizaines de milliers de tables, des
milliards de lignes.
Comment garantir l'accessibilité de ces données, leur protection contre les
incidents, des temps d'accès satisfaisants ?
Maintenance et évolution.
La structure d'une base de données peut évoluer : ajouter ou supprimer une
table, une colonne, une contrainte.
Comment préserver les données et les programmes utilisateurs lors de cette
évolution ?
27
Challenges
Les BD et le Web.
De nombreuses bases de données sont intimement liées au Web.
En outre, le Web peut être vu comme une gigantesque base de
données (largement incohérente et redondante !)
Qu'en est-il des principes rigoureux des bases de données dans ce
contexte ?
• Les données décisionnelles.
Les données ne servent pas seulement à contrôler la gestion et le
fonctionnement d'une entreprise au jour le jour. Elles sont aussi
souvent utilisées pour soutenir des décisions tactiques et
stratégiques.
Caractéristiques : traitement de très gros volumes de données
complexes pour produire une réponse courte
FESSI B. 28
28
FESSI B. 14
Datawarehouse
29
FESSI B. 15