Base de Données Répartie

ENIT · Programming, Databases, Computer Science · course

Voir tous les documents en bases de données

FSEGT 1/100 3LFIG

FACULTE DES SCIENCES ECONOMIQUES ET DE GESTION

BASE DE DONNEES REPARTIE

Support de cours

M.GHENI

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 2/100 3LFIG

INTRODUCTION

Probl matique

Base de donn es

Hypoth se :

  • Volume d'information important
  • Nombre d'acc s important

==> Temps d'acc s lev

==> Image de l'entreprise d grad e

==> Perte de client le

Exemple de cas :

  • Base de donn es avec des milliards d'informations
  • Nombre d'acc s simultan s tr s grand : 10 000 utilisateurs

acc dent en m me temps

  • Les acc s sont s rialis s
  • 1 acc s demande 10 ms de temps de r ponse

===> 1 utilisateur peut attendre la r ponse de sa requ te :

10 000*10 = 100 000 ms = 100 seconde = 1 minute 40

seconde.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 3/100 3LFIG

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 4/100 3LFIG

Solution

R partir les donn es sur plusieurs

sites

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 5/100 3LFIG

Notion de base de donn es

Collection de donn es op rationnelles enregistr es sur un support

adressable et utilis es par les syst mes et les applications.

Les donn es doivent tre structur es ind pendamment d'une

application particuli re.

Elles doivent tre coh rentes (contraintes), non redondantes (forme

normale) et accessibles simultan ment par plusieurs utilisateurs.

Le SGBD

Ensemble d'outils logiciels permettant la cr ation et lexploitation des

bases de donn es.

Fournit

  • un langage de description des donn es LDD :

CREATE, ALTER, DROP, ...

  • un langage de manipulation des donn es (LMD) :

INSERT, DELETE, UPDATE,..

  • un langage de contr le des donn es (LCD) :

GRANT, DENY,REVOQUE, COMMIT, ROLLBACK, LOCK, ...

Contr le tout instant l'int grit des donn es.

G re les acc s concurrents, la confidentialit et la s curit des

donn es.

La description de la base est elle m me g r e comme une base et

s'appelle le dictionnaire.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 6/100 3LFIG

Conception dune base de

donn es : processus

d'abstraction

3 niveaux d'abstraction :

Niveau conceptuel: repr sente le

contenu de la base en dehors de toute

consid ration informatique.

Niveau logique: Sch ma propre un type

de base de donn es.

Niveau physique: Description de

l'organisation et des m thodes d'acc s aux

donn es.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 7/100 3LFIG

Mod lisation conceptuelle

1er niveau du processus d'abstraction :

On d termine le contenu de la base

ainsi que la nature des relations entre

les principaux objets.

La mod lisation conceptuelle

aboutit un sch ma conceptuel.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 8/100 3LFIG

Le mod le entit association (relation)

L'entit

Une entit est un objet pouvant tre

identifi distinctement.

Les entit s sont d crites par des

attributs (propri t s, caract ristiques)

Repr sentation graphique

NOM_ENTITE

identifiant

attribut1

attribut2

...

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 9/100 3LFIG

Exemple

Client

N0Client

Nom

Pr nom

Adresse

CompteBanque

N0Compte

Debit

Credit

Solde

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 10/100 3LFIG

Les relations

Les relations repr sentent les liens

entre les Entit s.

Le nombre d'entit s impliqu es dans

une relation est appel dimension ou

degr de la relation.

La cardinalit est le nombre de

participations (occurrences) d'une

entit une relation.

Les cardinalit s expriment les

r gles de gestion du syst me

d'informations de l'entreprise.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 11/100 3LFIG

Exemple

Produit

CodeProduit

D signation

Prix

N M

Stock

Quantit

Depot

CodeDepot

Nom

Adresse

Un produit est stock dans plusieurs

d p ts.

Un d p t stocke plusieurs produits.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 12/100 3LFIG

Exemple

Un club sportif organise des stages de skis pour

ses adh rents.

Des moniteurs agr s sont recrut s et pay s

pour l'encadrement des stages.

Les stages sont organis s par niveau. Ils ont un

nom, un niveau, une date, une dur e, un lieu, un

prix, un quota de personnes (nombre de places

Publicité

limit ).

Un stage est pris en charge par un seul

moniteur. Un adh rent peut suivre autant de

stages qu'il le souhaite.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 13/100 3LFIG

D terminer la liste des entit s

Un club sportif organise des stages de

skis pour ses adh rents.

Des moniteurs agr s sont recrut s et

pay s pour l'encadrement des stages.

Les stages sont organis s par niveau.

Ils ont un nom, un niveau, une date, une

dur e, un lieu, un prix, un quota de

personnes.

Un stage est pris en charge par un seul

moniteur. Un adh rent peut suivre

autant de stages qu'il le souhaite.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 14/100 3LFIG

Les entit s

Stage

Moniteur

Adherent

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 15/100 3LFIG

D terminer la liste des attributs

Un club sportif organise des stages de

skis pour ses adh rents.

Des moniteurs agr s sont recrut s et

pay s pour l'encadrement des stages.

Les stages sont organis s par niveau.

Ils ont un nom, un niveau, une date, une

dur e, un lieu, un prix, un quota de

personnes.

Un stage est pris en charge par un seul

moniteur. Un adh rent peut suivre

autant de stages qu'il le souhaite.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 16/100 3LFIG

Les attributs

Stage

nom

niveau

date

dur e

lieu

quota

Moniteur

nom

prenom

adresse

Adherent

nom

prenom

adresse

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 17/100 3LFIG

Les identifiants

Stage

Code stage

nom

niveau

date

dur e

lieu

quota

Moniteur

N0licence

nom

prenom

adresse

Adherent

N0adherent

nom

prenom

adresse

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 18/100 3LFIG

D terminer les relations

Un club sportif organise des stages de

skis pour ses adh rents.

Des moniteurs agr s sont recrut s et

pay s pour l'encadrement des stages.

Les stages sont organis s par niveau.

Ils ont un nom, un niveau, une date, une

dur e, un lieu, un prix, un quota de

personnes.

Un stage est pris en charge par un seul

moniteur. Un adh rent peut suivre

autant de stages qu'il le souhaite.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 19/100 3LFIG

Stage

Code stage

nom

niveau

date

dur e

lieu

quota

Moniteur

N0licence

nom

prenom

adresse

Les relations

Encadre

Participe

Adherent

N0adherent

nom

prenom

adresse

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 20/100 3LFIG

D terminer les cardinalit s

Un club sportif organise des stages de

skis pour ses adh rents.

Des moniteurs agr s sont recrut s et

r mun r s pour l'encadrement des

stages

Les stages sont organis s par niveau.

Ils ont un nom, un niveau, une date, une

dur e, un lieu, un prix, un quota de

personnes.

Un stage est pris en charge par un seul

moniteur. Un adh rent peut suivre

autant de stages qu'il le souhaite.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 21/100 3LFIG

1

1

N

Stage

Code stage

nom

niveau

date

dur e

lieu

quota

Les cardinalit s

Encadre

N

Participe

Publicité

Moniteur

N0licence

nom

prenom

adresse

M

Adherent

N0adherent

nom

prenom

adresse

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 22/100 3LFIG

La d marche

1. D terminer la liste des entit s.

2. Pour chaque entit :

o Etablir la liste des attributs.

o D terminer un identifiant.

3. D terminer les relations.

4. Pour chaque relation :

o Dresser la liste des attributs

propres la relation.

o V rifier la dimension.

o D finir les cardinalit s.

5. V rifier le sch ma obtenu

les

  • Supprimer

si X -> Y, et Y -> Z, alors X -> Z,

Ex : La relation Adh rent Moniteur

na pas lieu d tre

transitivit s :

  • S'assurer que le sch ma est

connexe.

  • S'assurer qu'il r pond aux besoins

de lutilisateur.

6. Valider le mod le avec les

utilisateurs

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 23/100 3LFIG

BASE DE DONNEES REPARTIE

(DISTRIBUEE)

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 24/100 3LFIG

1. Besoins, Objectifs & D finitions

Pourquoi une Base de Donn es r partie

Limiter le transfert dinformation (nombre et volume)

R partition de la charge

Augmenter la fiabilit (duplication : disponibilit )

Fusionner des syst mes dinformations

D finition :

Une base de donn es distribu e est une base de donn es dont

les diff rentes parties sont stock es sur diff rents sites

(g ographiquement distants), reli s par un r seau.

La r union de ces parties forme la base de donn es r partie.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 25/100 3LFIG

Conception dune base de donn es r partie (BDR)

Base centralis e

Base r partie

Sch ma conceptuel global :

Sch ma conceptuel global :

Attributs, Domaines, Tables,

Relations, Vue,&

Sch ma logique :

Indexes, cl s trang res,

Sch ma physique :

Stockage, indexes, pages,&

Attributs, Domaines, Tables,

Relations, Vue,&

D finition des fragments :

Unit de distribution logique

Sch ma physique :

Placement des fragments,

stockage (site), chemins

dacc s (r seau).

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 26/100 3LFIG

Exemple de base r partie :

Soit une entreprise commerciale ayant plusieurs points de vente r partis dans

les r gions suivantes : Tunis, Sousse, Sfax. La base de donn es contient les

trois tables suivantes :

Table T_MAGASIN d crit les articles en stock dans le point de vente de la

r gion.

Table T_ARTICLE d crit les articles.

Table T_TVA d crit les taux de la TVA.

Table T_REGION d crit les r gions.

Ces tables sont en relation selon le mod le conceptuel suivant :

T_REGION

Code r gion

0,n

1,1

T_MAGASIN

Code magasin

1,n

Stock

1,n

T_ARTICLE

Code article

1,1

0,n

T_TVA

Code TVA

Mod le logique :

T_MAGASIN (Code_magasin,#Code r gion,..)

T_ARTICLE (Code_article, Designation, PU,Code_TVA)

T_TVA (Code_TVA, TAUX)

T_REGION (Code_r gion, Nom de la r gion)

T_STOCK (Code_magasin,Code article, Qte)

Caract ristiques de lactivit de vente :

90% des requ tes de ventes dans une r gion portent sur les stocks de la

r gion

10% des requ tes de ventes sadressent aux stocks des autres r gions

(cas de manque darticle)

La cr ation dun nouvel article est tr s peu fr quente.

Le taux de la TVA change au plus une fois par an.

La cr ation dun nouveau point de vente peut prendre plusieurs ann es.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 27/100 3LFIG

On peut concevoir une base r partie sur 3 sites :

Tunis : T_ MAGASIN _1, T_ STOCK _1 contenant les articles et les stocks des

points de vente de la r gion de Tunis.

Sousse : T_ MAGASIN _2, T_ STOCK _2 contenant les articles et les stocks

des points de vente de la r gion de Sousse.

Sfax : T_ MAGASIN _3, T_ STOCK _3 contenant les articles et les stocks des

points de vente de la r gion de Sfax.

La table T_TVA sera dupliqu e sur les 3 sites.

La table T_ARTICLE sera dupliqu e sur les 3 sites.

La table T_REGION sera dupliqu e sur les 3 sites.

Tunis

Sousse

Requ te en cas de rupture du stock

Sfax

Requ te de ventes locales

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 28/100 3LFIG

1. Probl matique

Pourquoi on pense r partir les donn es dune base :

Il devient imp ratif de d centraliser linformation (cas des soci t s multinationales).

Augmentation du volume de linformation (de plus en plus les bases sont

volumineuses : les entreprises ont de plus en plus besoins dinformations).

Augmentation du volume des transactions (laugmentation du degr

dinformatisation des entreprises g n re un nombre dacc s la base de plus en plus

lev ).

Besoin dun bon temps de r ponse sur des gros volumes de donn es.

Cette probl matique est due au goulot d tranglement sur les E/S.

Rem de : am liorer le d bit des E/S :

Partitionnement des donn es,

Acc s parall le aux donn es,

Publicité

Utiliser plusieurs nSuds (avec un bon co t/ performance), et les faire

communiquer par un r seau.

Ceci est devenu possible gr ce :

au d veloppement des syst mes de bases de donn es

au progr s technologiques r alis s au niveau de linfrastructure r seau et des

postes de travail.

Accroissement continuel :

Vitesse des microprocesseurs : 50% par an,

Capacit de stockage : 4 fois tous les 4 ans,

D bit des disques : 2 fois plus rapide sur les 10 derni res ann es.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 29/100 3LFIG

2. Les apports de la r partition des bases de donn es

Les bases de donn es r parties ont une architecture plus adapt e

lorganisation des entreprises d centralis es.

Les gains r alis s par la r partition dune base de donn es :

Plus de fiabilit : les bases de donn es r parties ont souvent des donn es

r pliqu es. La panne dun site nest pas tr s importante pour lutilisateur, qui

sadressera d'autres sites.

Meilleures performances : r duire le trafic sur le r seau est une possibilit

daccro tre les performances. Le but de la r partition des donn es est de les

rapprocher de lendroit o elles sont acc d es. R partir une base de donn es sur

plusieurs sites permet de r partir la charge sur les processeurs et sur les organes

dentr es/sorties.

Faciliter laccroissement : laccroissement se fait par lajout de machines sur le

r seau.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 30/100 3LFIG

3. SGBD r parti

Une base de donn es centralis e est g r e par un seul SGBD. Elle est stock e dans

sa totalit un emplacement physique unique et ses divers traitements sont confi s

une seule et m me unit de traitement (m me ordinateur). Par opposition, une base

de donn es r partie est g r e par plusieurs processeurs (sites) et SGBD.

Un syst me de bases de donn es r parties ne doit donc en aucun cas tre confondu

avec un syst me dans lequel les bases de donn es sont accessibles distance.

Il ne doit non plus tre confondu avec une multi-base ou une BD f d r e :

Dans une multi-base, plusieurs BDs inter op rent avec une application via un langage

commun et sans mod le commun.

Du point de vue organisationnel nous distinguons deux architectures :

Architecture Client-Serveur : les serveurs, ont pour r le de servir les clients.

Par servir, on d signe la r alisation dune t che demand e par le client.

Architecture Pair- -Pair (Peer-to-Peer, P2P) : par ce terme on d signe un type

de communication pour lequel toutes les machines ont une importance

quivalente (jouant le r le de serveurs et de clients).

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 31/100 3LFIG

3.1. Objectifs

Les principaux objectifs dune BD r partie sont:

Transparence pour lutilisateur

Autonomie de chaque site

Absence de site privil gi

Continuit de service

Transparence vis vis de la localisation des donn es

Transparence vis vis de la fragmentation

Transparence vis vis de la r plication

Traitement des requ tes distribu es

Ind pendance vis vis du mat riel

Ind pendance vis vis du syst me dexploitation

Ind pendance vis vis du r seau

ind pendance vis vis du SGBD

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 32/100 3LFIG

3.2.

Probl mes surmonter

a. Co t : la r partition entra ne des co ts

suppl mentaires en termes de communication, et

en gestion des communications (hardware et

software installer pour g rer les communications

et la distribution).

b. Probl me de concurrence dacc s :

Plusieurs clients sur des machines diff rentes

acc dant aux m mes entit s en m me temps.

c. S curit : la s curit est un probl me plus

complexe dans le cas des bases de donn es

r parties que dans le cas des bases de donn es

centralis es (droits dacc s, sauvegarde,

panne,..).

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 33/100 3LFIG

4. Conception dune base de donn es r partie

La d finition du sch ma de r partition est la partie la plus d licate de la phase de

conception d'une BDR .

Il n'existe pas de m thode miracle pour trouver la solution optimale.

L'administrateur doit donc prendre des d cisions en fonction de crit res techniques et

organisationnels avec pour objectifs de minimiser :

le nombre de transferts entre sites,

les temps de transfert,

le volume de donn es transf r es,

les temps moyens de traitement des requ tes,

le nombre de r plications et de fragments,

etc...

4.1. Conception descendante (top down design)

On commence par d finir un sch ma conceptuel global de la base de donn es,

puis on distribue sur les diff rents sites en des sch mas conceptuels locaux.

La r partition se fait donc en deux tapes, en premi re tape la fragmentation, et en

deuxi me tape lallocation de ces fragments aux sites.

La d marche :

Conception du sch ma conceptuel global

Distribution (Fragmentation) pour obtenir des sch mas

conceptuels locaux

Affectation des fragments aux sites : Allocation

BDD : Sch ma global

BD1

BD1

BD1

BD1

Lapproche top down est int ressante quand on part du n ant. Si les BDs existent

d j la m thode ascendante (bottom up) est utilis e.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 34/100 3LFIG

4.2.

Conception ascendante (bottom up design)

Lapproche se base sur le fait que la soci t dispose d ja de plusieurs bases de

donn es. Il faut r ussir int grer les diff rentes BDs existantes en une seule BD

globale. En dautres termes, les sch mas conceptuels locaux existent et il faut r ussir

les unifier dans un sch ma conceptuel global.

Int gration de bases de donn es existantes

H t rog n it

User

User

A

A

User

User

A

A

User

User

A

A

Vue externe

Vue externe

Sch ma global

Sch ma de

fragmentation

Sch ma dallocation

(mod le physique)

Base de

donn es

f d r e

Sch ma conceptuel

Site 1

Sch ma conceptuel

Site 2

Sch ma conceptuel

Site 3

Sch ma physique

Site1

Sch ma physique

Publicité

Site1

Sch ma physique

Site1

La r partition d'une base de donn es intervient dans les trois niveaux de son

architecture en plus de la r partition physique des donn es :

Niveau externe: les vues sont distribu es sur les sites utilisateurs.

Niveau conceptuel: le sch ma conceptuel des donn es est associ , par

l'interm diaire du sch ma de r partition (lui m me d compos en un sch ma de

fragmentation et un sch ma d'allocation), aux sch mas locaux qui sont r parties sur

plusieurs sites, les sites physiques.

Niveau interne: le sch ma interne global n'a pas d'existence r elle mais fait place

des sch mas internes locaux r partis sur diff rents sites.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 35/100 3LFIG

5. Fragmentation

Sur le plan conceptuel, la base de donn es ne d pend pas de lemplacement

physique. La r partition physique des donn es sur plusieurs sites donne lieu une

base de donn es r partie. Les donn es dun site sont appel es des fragments.

La fragmentation doit permettre de :

  • Favoriser les acc s locaux.
  • quilibrer la charge de travail entre les sites.

En plus de la fragmentation on peut recourir la duplication. Ce qui

permet de :

  • Favoriser les acc s locaux.
  • Augmenter la disponibilit des donn es.

La fragmentation est le processus de d composition d'une base de

donn es en un ensemble de sous - bases de donn es.

Cette d composition doit tre sans perte d'information.

La fragmentation peut tre co teuse sil existe des applications qui poss dent des

besoins oppos s.

Les r gles respecter lors dune fragmentation :

La compl tude :

Pour toute donn e dune entit R (table) du sch ma conceptuel, il existe un fragment

F de la relation R qui poss de cette donn e.

La reconstruction :

Pour toute entit d compos e en un ensemble de fragments Fi, il existe une

op ration de reconstruction.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 36/100 3LFIG

5.1.

Techniques de Fragmentation

Il existe plusieurs techniques de fragmentation, d finies par lunit de fragmentation.

Comment fragmenter ?

Trop peu de fragments - faible optimisation

Trop de fragments - surco t dans la reconstruction des

relations

Possibilit s de fragmentation dune relation (table)

Horizontale - bas e sur des s lections

Verticale - bas e sur des projections

Hybride (horizontale + verticale)

F1

F2

F3

F4

F5

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 37/100 3LFIG

Ou placer les fragments ?

Chaque fragment sur un site :

(-) co t du d ploiement.

Duplication de fragments

(+) performances des requ tes et disponibilit

(-) co t des mises jour et contr le de concurrence plus complexe

Duplication totale

(++) performances des requ tes et disponibilit

(- -) co t des mises jour et contr le de concurrence plus complexe.

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 38/100 3LFIG

5.1.1. R partition des classes d'objet (des relations)

Cette technique consiste en la r partition de classes (relation en relationnel, classe

en Orient -objet) qui peuvent tre r parties sur diff rents sites. Lensemble des

classes dun site forment les fragments.

Toutes les occurrences d'une m me classe appartiennent ainsi au

m me fragment.

L'op ration de partitionnement est la d finition de sous-sch mas.

L'op ration de reconstruction est la r union de sous-sch mas.

Dans l'exemple suivant la base de donn es relationnelle peut tre fragment e en

{Compte, Client} et {Agence}

Code client

Relation Compte

Agence

Type de

compte

1

2

3

3

4

Agence1

Agence2

Agence1

Agence1

Agence2

CC

CC

CC

CE

CC

Solde

5000

2000

3000

6000

10000

Agence

Agence1

Agence2

Relation Agence

Adresse

10, Avenue de la R publique Ariana

20, Avenue de la Libert Tunis

Code client

1

2

3

4

Relation Client

Nom client

BEN SALAH

DRIDI

AYARI

BAHRI

Prenom client Age client

30

Mohamed

41

Salem

52

Ali

38

Mohamed

Fragments

du site1

Fragment du

site2

________________________________________________________________________

Base de Donn es R partie 2015-2016

FSEGT 39/100 3LFIG

5.1.2. R partition des occurrences (fragmentation horizontale)

Les occurrences d'une m me classe peuvent tre r parties dans

des fragments diff rents.

L'op rateur de partitionnement est la s lection (s)

L'op rateur de reconstruction est l'union (U)

Dans l'exemple pr c dent, la relation Compte peut tre fractionn e en Compte1 et

Compte2 avec la fragmentation suivante :

Compte1 = s (Compte)

et

Compte2 = s (Compte)

La reconstruction de Compte est :

Compte1 U Compte2

Fragmentation Horizontale D riv e

Fragments d finis par (semi...