Documente Academic
Documente Profesional
Documente Cultură
Facult de technologie
Dpartement de gnie BioMdical
e-mail : gaouaradil@gmail.com
2016 2017
PROMOTION M1 TMD
CHAPITRE I
INTRODUCTION AUX BDD
REPARTIES
INTRODUCTION:
Le dveloppement des techniques informatiques
ces dernires annes a permis lexpansion des outils
informatiques dans l'organisation des entreprises. En
effet, des volumes de donnes incommensurables
sont manies par ces dernires, et cela grce la
puissance des micro-ordinateurs qui ne cesse de
crotre.
aussi, les performances des rseaux et la baisse
considrable des cots du matriel informatique ont
permis l'apparition d'une nouvelle approche afin de
remdier aux difficults causes par la centralisation
des donnes, et ce en rpartissant les ressources
informatiques tout en prservant leur cohrence.
I- BESOINS, OBJECTIFS ET DFINITIONS:
1. PROBLMATIQUE:
Les pressions pour la distribution :
Il devient impratif de dcentraliser linformation (cas des
multinationales),
Augmentation du volume de linformation (14 fois de 1990
2000),
Augmentation du volume des transactions (10 fois dans les 5
prochaines annes).
Besoin de serveurs de BDD qui fournissent un bon temps de rponse
sur de gros volumes de donnes.
Prdiction daccroissement:
Vitesse des microprocesseurs : 50% par an,
Capacit des DRAM : 4 fois tous les 4 ans,
Dbit des disques : 10 fois sur les 10 dernires annes.
Goulot dtranglement sur les E/S.
Pour amliorer le dbit des E/S :
Partitionnement des donnes,
Accs parallle aux donnes,
Utiliser plusieurs nuds (avec un bon rapport cot/ performance),
et les faire communiquer par un rseau.
Les inconvnients que prsentent les BDD centralises:
Goulots dtranglement, si jamais plusieurs personnes tentent dy
accder en mme temps et que leurs besoins soient considrables,
Reprsente un point de dfaillance unique si jamais il y a un
problme avec la BDD en question, tout est perdu,
Difficult de rcupration des sauvegarde en cas dchec de mise
jour.
Pour pallier tous ces problmes, on a crer Les bases de
donnes rparties. Qui semblent tre un moyen performant pour
diminuer les problmes que nous avant voqus, MAIS ne restent pas
sans failles.
2- BUTS DE LA RPARTITION DES BASES DE
DONNES:
Les bases de donnes rparties ont une architecture
plus adapte lorganisation des entreprises
dcentralises.
Plus de fiabilit : les bases de donnes rparties ont
souvent des donnes rpliques (dupliques). La panne
dun site nest pas trs importante pour lutilisateur, qui
peut sadresser ou tre rediriger vers un autre site.
Meilleures performances : rduire le trafic sur le
rseau est une possibilit daccrotre les performances
et de la BDD et du rseau. Le but de la rpartition des
donnes est de les rapprocher de lendroit o elles sont
utilises.
Rpartir une base de donnes sur plusieurs sites permet de
rpartir la charge sur les processeurs, les serveurs de BDD et
sur les entres/ sorties.
Faciliter laccroissement: laccroissement se fait par lajout
de machines sur le rseau.
3. SGBD RPARTI:
Une base de donnes centralise est gre par un seul
SGBD, est stocke dans sa totalit un emplacement physique
unique et ses divers traitements sont confis une seule et
mme unit de traitement. Par opposition, une base de donnes
distribue est gre par plusieurs processeurs, sites ou SGBD.
Un systme de bases de donnes rparties ne doit donc en
aucun cas tre confondu avec un systme dans lequel les bases
de donnes sont accessibles distance. Il ne doit non plus tre
confondu avec une multi-bases ou une BDD fdre.
Dans une multi-base, plusieurs BDD interoprent
avec une application via un langage commun et sans
modle commun. Un serveur multi-bases est intgr
dans le SGBD.
Dans une BDD fdre, plusieurs BDD htrognes
sont manipules comme une seule via une vue
commune. Du point de vue organisationnel nous
distinguons deux architectures :
1. Architecture Client-Serveur : les serveurs, ont pour
rle de servir les clients. Par servir, on dsigne la
ralisation dune tche demande par le client.
2. Architecture Pair--Pair (Peer-to-Peer, P2P) : par
ce terme on dsigne un type de communication pour
lequel toutes les machines ont une importance
quivalente.
4. OBJECTIFS DFINIS PAR C.J. DATE:
Les principaux objectifs sont:
1. Transparence pour lutilisateur.
2. Autonomie de chaque site.
3. Absence de site privilgi.
4. Continuit de service.
5. Transparence vis vis de la localisation des donnes.
6. Transparence vis vis de la fragmentation.
7. Transparence vis vis de la rplication.
8. Traitement des requtes distribues.
9. Indpendance vis vis du matriel.
10. Indpendance vis vis du systme dexploitation.
11. Indpendance vis vis du rseau.
12. Indpendance vis vis du SGBD
5. PROBLMES SURMONTER:
1. Cot : la distribution entrane des cots
supplmentaires en terme de communication,
et en gestion des communications (hardware
et software installer pour grer les
communications et la distribution).
2. Problme de concurrence.
3. Scurit : la scurit est un problme plus
complexe dans le cas des bases de donnes
rparties que dans le cas des bases de
donnes centralises.
II- CONCEPTION DUNE BASE DE DONNES
RPARTIE:
La dfinition du schma de rpartition est la
partie la plus dlicate de la phase de conception
d'une BDR car il n'existe pas de mthode miracle
pour trouver la solution optimale. L'administrateur
doit donc prendre des dcisions en fonction des
critres techniques et organisationnels, avec pour
objectif de minimiser le nombre de transferts entre
sites, le temps de transfert, le volume de donnes
transfres, les temps moyens de traitement des
requtes, le nombre de copies de fragments, etc...
1. CONCEPTION DESCENDANTE (TOP DOWN
DESIGN):
On commence par dfinir un schma
conceptuel global de la base de donnes rpartie,
puis on le distribue sur les diffrents sites en
schmas conceptuels locaux.
La rpartition se fait donc en deux tapes:
1. Premire tape: la fragmentation,
2. Deuxime tape: lallocation de ces
fragments aux sites.
.Lapproche top down est utilise quand on part
du nant, cest--dire une nouvelle cration de
BDD.
2. CONCEPTION ASCENDANTE (BOTTOM UP
DESIGN):
Lapproche se base sur le fait que la rpartition est
dj faite, cest--dire que les BDD existent, mais il faut
russir les intgrer en une seule BDD globale.
En dautres termes, les schmas conceptuels locaux
existent et il faut russir les unifier et consolider dans
un schma conceptuel global.
C'est--dire :
1. Rconciliation smantique
2. Identification des donnes semblables
3. Accordement de leurs types, grer leurs
cohrence
4. Interfacer ou adapter les SGBD
La rpartition d'une base de donne intervient dans les
trois niveaux de son architecture en plus de la rpartition
physique des donnes :
Le schma externe : le niveau externe dcrit les donnes
sous forme de vues, chacune d'elles tant adapte une
classe particulire d'utilisateurs; un schma externe, labor
partir du schma conceptuel, peut naturellement mixer des
donnes stockes dans diffrentes bases;
Le schma conceptuel : o les donnes sont
reprsentes sans prendre en compte les contraintes
techniques ou de mise en forme; toutes les donnes sont
dcrites dans ce schma en utilisant un modle de donnes,
indpendamment de leur localisation dans le systme rparti;
Le schma interne : le niveau interne global n'a pas
d'existence relle mais fait place des schmas internes
locaux, rpartis sur diffrents sites.
Ces schmas correspondent la
description de l'organisation physique de la
base, notamment la spcification de la
fragmentation des donnes et la localisation de
ces fragments;
L'utilisateur accde aux donnes rparties
travers ces diffrents schmas en utilisant le
langage SQL.
III- LA FRAGMENTATION:
La fragmentation est le processus de
dcomposition d'une base de donne en un ensemble
de sous bases de donnes. Cette dcomposition doit
tre sans perte d'information.
La fragmentation peut tre coteuse sil existe des
applications qui possdent des besoins opposs.
Les rgles de fragmentation sont les suivantes :
1. La compltude : pour toute donne dune relation
R, il existe un fragment Ri de la relation R qui
possde cette donne.
2. La reconstruction : pour toute relation
dcompose en un ensemble de fragments Ri, il
existe une opration de reconstruction.
3. Disjonction : une donne n'est prsente que
dans un seul fragment, sauf dans le cas de la
fragmentation verticale pour la cl primaire qui doit
tre prsente dans l'ensemble des fragments issus
d'une relation.
1. TECHNIQUES DE FRAGMENTATION:
. Il existe plusieurs techniques de fragmentation,
dfinies par lunit de fragmentation.
a- Rpartition des classes d'objet:
. Cette technique consiste en la rpartition de
classes (relation en relationnel, classe en Orient-
objet) qui peuvent tre rparties sur diffrents
fragments. Toutes les occurrences d'une mme
classe appartiennent ainsi au mme fragment.
L'opration de partitionnement est la dfinition
de sous-schmas.
L'opration de recomposition est la runion de
sous-schmas.
Dans l'exemple suivant la base de donnes
relationnelle peut tre fragmente en {Compte,
Client} et {Agence}
RELATION COMPTE
N-Client Agence Type-Compte Solde
17400 BDL COURANT 200.000,00
17900 BDL COURANT 150.000,50
18000 AGB COURANT 1.000.000,00
18500 CPA EPARGNE 1.645.500,00
18500 CPA COURANT 77.000,00
RELATION CLIENT
RELATION AGENCE
N- Nom Prnom Age
Client Agence Adresse
17400 Boughera Madjid 34 AGB BD DES 24 METRES
17900 Haliche rafik 34 BDL CITE DES NOYERS
18000 Ronaldo Cristiano 31 CPA KIFFANE, LES DHALIAS
18500 Messi leo 32
b- Rpartition des occurrences (fragmentation horizontale) :
Dcomposition de la table en groupes de lignes.
L'oprateur de partitionnement est la slection ()
L'oprateur de recomposition est l'union ()
Il existe deux types de fragmentation horizontale:
Fragmentation horizontale Primaire
Fragmentation horizontale Drive
b1. Fragmentation horizontale primaire :
Exemple
Client (NCL, Nom, Ville) peut tre fragmente :
Client1= SELECT * FROM Client WHERE Ville = Paris
Client2= SELECT * FROM Client WHERE Ville <> Paris
Reconstruction de la relation initiale:
Client = Client1 Client2
b2.Fragmentation horizontale drive :
La Fragmentation dune table en fonction des fragments
horizontaux dune autre table.
Cette fragmentation est obtenue dans le cas de lien
pre_fils.
Exemple
Commande (NCL, NProduit, Date, Qte, NReprsentant)
Commande1= SELECT * FROM Commande
WHERE NCL IN
(SELECT NCL FROM CLIENT1)
Commande2= SELECT * FROM Commande
WHERE NCL IN
(SELECT NCL FROM CLIENT2)
Reconstruction de la relation initiale:
Commande = Commande1 Commande2
c- Rpartition des attributs (fragmentation
verticale):
Toutes les valeurs des occurrences pour un
mme attribut se trouvent dans le mme fragment.
Une fragmentation verticale est utile pour
distribuer les parties des donnes sur le site o
chacune de ces parties est utilise.
La fragmentation verticale est obtenue par
dcomposition de la table en groupes de colonnes.
L'oprateur de partitionnement est la projection
().
L'oprateur de recomposition est la jointure
(Join ou *).
Exemple:
Soit le partitionnement de la relation prcdente
Client en deux relations :
Cli1 = [N-Client, NomClient] Client
et Cli2 = [N-Client, Prnom, Age] Client
Relation Cli1 Relation Cli2
N-Client Nom N-Client Prnom Age
17400 Boughera 17400 Madjid 34
17900 Haliche 17900 rafik 34
18000 Ronaldo 18000 Cristiano 31
18500 Messi 18500 leo 32
(P2 P3 P4)
Supposons, comme hypothse supplmentaire
(contrainte dintgrit) , qu'il n'y a que deux quipes de
cuisiniers (1 et 2) ce qui implique:
P3 P4 = ,
P3 = P4,
P4 = P3.
On a alors les 5 conjonctions de conditions (cest--
dire les minterms) significatives suivantes:
m3 = C1 C2 C3 = P1 P2 P4
m5 = C1 C2 C3 = P1 P2 P4
m8 = C1 C2 C3 = P1 P4
Relation Agence
Agence Adresse
BDL Rue du lac, 3, 1002 lausane
CPA Avenue du Mont Blanc, 21, 1200 Genve
Relation Client
NClient NonClient Prnom Age
174723 Villard Jean 29
177498 Cattell Blaise 38
201639 Tsellis Alan 51
203446 Kowalsky Valdimir 36
Objectif: fragmenter la relation compte(Nclient, Agence,
TypeCompte, Somme).
Question1: proposer un schma de fragmentation
horizontale, en tenant compte des requte suivantes:
R1= Select(NClient, Agence) From compte Where
((TypeCompte=courant) and (Somme>100000));
R2= Select * From compte Where Agence=BDL;
R3= Select NClient, Somme From compte Where
((Agence=CPA) and (TypeCompte=courant));