Bases de données réparties



Documents pareils
Module BDR Master d Informatique (SAR)

Systèmes d informations nouvelles générations. Répartition, Parallèlisation, hétérogénéité dans les SGBD. Exemple d application d un futur proche

Bases de Données Réparties Concepts et Techniques. Matthieu Exbrayat ULP Strasbourg - Décembre 2007

Bases de données réparties: Fragmentation et allocation

Chapitre Introduction : Notion de Bases de données. 2. Définition : BD Répartie. 3. Architecture des SGBD. 4. Conception des bases réparties

et les Systèmes Multidimensionnels

CESI Bases de données

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

PROJET 1 : BASE DE DONNÉES REPARTIES

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

1. Introduction. Bases de données Réparties, Fédérées et Réplication. Plan. Bibliographie du cours

Bases de données avancées Introduction

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Cours Bases de données

BD réparties. Bases de Données Réparties. SGBD réparti. Paramètres à considérer

Bases de données cours 1

Bases de Données. Plan

Chapitre 10. Architectures des systèmes de gestion de bases de données

Présentation du module Base de données spatio-temporelles

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Bases de Données Réparties

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

Bases de données réparties et fédérées

Introduction aux bases de données Cours 1 : Généralités sur les bases de données

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Les bases de données

TP Bases de données réparties

Architectures d'intégration de données

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

A QUOI SERVENT LES BASES DE DONNÉES?

Réplication des données

Bases de Données relationnelles et leurs systèmes de Gestion

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

IT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr

Introduction aux Bases de Données

Le modèle client-serveur

Bases de données Cours 1 : Généralités sur les bases de données

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

Chapitre 1 : Introduction aux bases de données

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Groupe Eyrolles, 2004 ISBN :

Dossier I Découverte de Base d Open Office

Cours Bases de données 2ème année IUT

16H Cours / 18H TD / 20H TP

Bases de données élémentaires Maude Manouvrier

Notes de cours : bases de données distribuées et repliquées

Bases de données et sites WEB

Introduction au Système de Gestion de Base de Données et aux Base de Données

1 Introduction et installation

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES

Intégrité des données

Module BDR Master d Informatique (SAR)

Conception des systèmes répartis

Information utiles. webpage : Google+ : digiusto/

FAMILLE EMC RECOVERPOINT

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Introduction aux bases de données

Les bases de données Page 1 / 8

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

//////////////////////////////////////////////////////////////////// Administration bases de données

Du 10 Fév. au 14 Mars 2014

Bases de données distribuées et fédérées

Implémentation des SGBD

Les Géodatabases en 9.2

OBJECTIFS ET ARCHITECTURE DES SGBD

Base de données II Module 3b

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

CHAPITRE 1 ARCHITECTURE

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Bases de données - Modèle relationnel

Données Réparties. Thibault BERNARD.

IFT3030 Base de données. Chapitre 2 Architecture d une base de données

Intégration de systèmes client - serveur Des approches client-serveur à l urbanisation Quelques transparents introductifs

4.2 Unités d enseignement du M1

Gestion des transactions et accès concurrents dans les bases de données relationnelles

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Java et les bases de données

INTRODUCTION : Données structurées et accès simplifié

TP11 - Administration/Tuning

Les Entrepôts de Données

Solutions informatiques (SI) Semestre 1

La directive INSPIRE en Wallonie: le géoportail et l infrastructure de diffusion des géodonnées en Région wallonne (InfraSIG(

CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES

C-JDBC. Emmanuel Cecchet INRIA, Projet Sardes.

Architectures haute disponibilité avec MySQL. Olivier Olivier DASINI DASINI - -

Conception, architecture et urbanisation des systèmes d information

Le "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique

Continuité d activité : le choix des armes

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

INTRODUCTION AUX BASES de DONNEES

Le passage à l échelle de serveur J2EE : le cas des EJB

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

36 arguments clés en faveur de la virtualisation du stockage DataCore

SQL Historique

Transcription:

Bases de données réparties J. Akoka - I. Wattiau 1 Contexte Technologique : des solutions de communication efficace entre les machines des SGBD assurent la transparence des données réparties standardisation :SGBDR, SQL, middlewares,... Organisationnel : décentralisation des activités subsidiarité Financier : «downsizing» des matériels et logiciels 2

SGBD distribué permet la création, l accès et la manipulation de données inter-reliées, localisées sur différents sites d un réseau informatique chaque site a une capacité de traitement local autonome chaque site participe à l exécution d au moins une application globale via le réseau 3 Intérêts et conséquences Améliorer l accessibilité, le partage, la disponibilité et la performance des SGBD Tout en préservant les avantages d une base de données centralisée L optimisation globale des traitements va dépendre : du coût de communication du coût des traitements locaux de la stratégie d allocation des données de la stratégie d exécution des traitements 4

12 règles de Date Autonomie locale Pas de dépendance d un site central Opère en continu Indépendance vis-à-vis de la localisation Indépendance vis-à-vis de la fragmentation Indépendance vis-à-vis de la réplication Traitement de requêtes distribuées Traitement de transactions distribuées Indépendance vis-à-vis du matériel Indépendance vis-à-vis du système d exploitation Indépendance vis-à-vis du réseau Indépendance vis-à-vis du SGBD 5 Typologie des BD distribuées Homogènes versus hétérogènes Semi-autonomes versus autonomes Bases de données fédérées Systèmes multibases 6

Architecture d un SGBD distribué externe Global 1 de mapping Local 1 Conceptuel Local 1 Local Interne 1 BD1 externe Global 2 externe Global 1 Conceptuel Global de Fragmentation d Allocation de mapping Local 2 de mapping Local n Conceptuel Local 2 Conceptuel Local n Local Interne 2 Local Interne n BD2 BDn ANSI-SPARC 7 Architecture d un SGBD fédéré externe Global 1 externe Global 2 externe Global 1 Conceptuel Global de Fragmentation externe local externe 1 local externe 2 local n d Allocation Conceptuel Local 1 Conceptuel Local 2 Conceptuel Local n externe local externe 1 local 2externe local n Local Interne 1 Local Interne 2 Local Interne n BD1 BD2 BDn 8

Objectifs de la conception répartie Contrôle de la redondance des données Indépendance des BD locales Optimisation globale Combinaison de la fragmentation et de l allocation logique physique 9 Fragmentation Une table T est partitionnée en un nombre minimum de sous-tables disjointes T1,T2,..,Tn Chaque fragment Ti doit contenir assez d information pour reconstruire T Fragmentation verticale vs horizontale 10

Fragmentation verticale Subdivision des attributs de T en groupes (en dupliquant une clé commune) et projection sur les groupes Réversible par jointure Salarié matricule nom prénom salaire grade ancienneté Salarié matricule nom prénom salaire Salarié matricule grade ancienneté 11 Fragmentation horizontale Sélection selon un prédicat de qualification Réversible par union Salarié matricule nom prénom salaire grade ancienneté Salariés ayant peu d ancienneté et un gros salaire Salariés ayant beaucoup d ancienneté et un gros salaire Salariés n ayant pas un gros salaire 12

Fragmentation (suite) Fragmentation mixte : horizontale et verticale Fragment le plus grand = une table Fragment le plus petit = un tuple >trop de sensibilité aux mises à jour et trop de jointures 13 Allocation (1/2) Centralisée taille base limitée par les capacités du site central disponibilité faible Partitionnée limite l espace disque local meilleur si la fiabilité de la solution centralisée n est pas suffisante intéressant s il y a une partie importante de traitement local 14

Allocation (2/2) Répliquée une copie de la base sur chaque site maximise la fiabilité possible si la base est petite et si l inefficacité des mises à jour est tolérable Réplication sélective les fragments critiques sont répliqués les fragments non critiques sont localisés sur un seul site grande flexibilité 15 Réplication Synchrone : mise à jour immédiate, protocole de validation à deux phases Asynchrone : mise à jour différée Mécanismes de réplication : Maître esclave «workflow» symétrique 16

Estimation des coûts de la réplication Coût Temps de mise à jour Disponibilité des données Coût de stockage Temps d accès Nb de copies 1 x? d un fragment Min (coût_stockage + coût_communic + coût_traitlocal) sous contraintes de temps de réponse et de disponibilité 17 Méthode «best fit» Permet de déterminer le site sur lequel stocker le fragment, là où l on maximise les traitements locaux n intègre pas le problème de la réplication 18

Exemple Fragments temps temps d'accès mise à local (ms) jour local temps accès distant temps m.a.j. distant R1 100 150 500 600 R2 150 200 650 700 R3 200 250 1000 1100 Transactions sites fréquence accès tables (L= lecture, E = écriture) 4 accès R1 (3L, 1E) T1 S1,S4,S5 1 2 accès R2 (2L) T2 S2,S4 2 T3 S3,S5 3 2 accès R1 (2L) 4 accès R3 (3L, 1E) 4 accès R2 (3L, 1E) 2 accès R3 (2L) 19 Exemple Application Best fit Accès T1 * Accès T2 * Accès T3 * Fragment Site Fréquence Fréquence Fréquence Total pondéré R1 S1 4*1 0 0 4 S2 0 2*2 0 4 S3 0 0 0 0 S4 4*1 2*2 0 8 S5 4*1 0 0 4 R2 S1 2*1 0 0 2 S2 0 0 0 0 S3 0 0 4*3 12 S4 2*1 0 0 2 S5 2*1 0 4*3 14 R3 S1 0 0 0 0 S2 0 4*2 0 8 S3 0 0 2*3 6 S4 0 4*2 0 8 S5 0 0 2*3 6 On stocke R1 sur S4 On stocke R2 sur S5 On stocke R3 sur S2 ou S4 (S2 pour mieux répartir) 20

Méthode Best Fit - Remarques Calculs simples n intègre pas la réplication nb de références < > temps d accès 21 Méthode ABS «All Beneficial Sites» Principe : stocker un fragment sur tous les sites où le bénéfice du stockage est supérieur à son coût bénéfice = (tps trait distant - tps trait local) * fréquence coût stockage copie = coût de la mise à jour locale + coût des mises à jour distantes 22

Exemple - Application ABS M.a.j. Interr. Interr. bénéfice bénéfice Fragment Site locales M.a.j. distantes Coût m.a.j. Interrogations locales distantes copie - coût R1 S1 T1 T1 de S4 et S5 1*1*150+2*1*1*600 = 1350 T1 de S1 3*1*100 3*1*500 1200 <0 S2 T1 de S1,S4 et S5 3*1*1*600 = 1800 T2 de S2 2*2*100 2*2*500 1600 <0 S3 T1 de S1,S4 et S5 3*1*1*600 = 1800 0 <0 S4 T1 T1 de S1 et S5 1*1*150+2*1*1*600 = 1350 T1 et T2 de S4*100+2*2*1*500+ 2*2*5 2800 >0 S5 T1 T1 de S1 et S4 1*1*150+2*1*1*600 = 1350 T1 de S5 3*1*100 3*1*500 1200 <0 R2 S1 T3 de S3 et S5 2*1*3*700 = 4200 T1 de S1 2*1*150 2*1*650 1000 <0 S2 T3 de S3 et S5 2*1*3*700 = 4200 0 <0 S3 T3 T3 de S5 1*1*3*200+1*1*3*700 = 2700 T3 de S3 3*3*150 3*3*650 4500 >0 S4 T3 de S3 et S5 2*1*3*700 = 4200 T1 de S4 2*1*150 2*1*650 1000 <0 S5 T3 T3 de S3 1*1*3*200+1*1*3*700 = 2700 T1 et T3 de S5150 + 2*13*650+2*1*65 5500 >0 R3 S1 T2 de S2 et S4 2*1*2*1100 = 4400 0 <0 S2 T2 T2 de S4 1*1*2*250 + 1*1*2*1100 = 2700 T2 de S2 2*3*200 2*3*1000 4800 >0 S3 T2 de S2 et S4 2*1*2*1100 = 4400 T3 de S3 3*2*200 3*2*1000 4800 >0 S4 T2 T2 de S2 1*1*2*250 + 1*1*2*1100 = 2700 T2 de S4 2*3*200 2*3*1000 4800 >0 S5 T2 de S2 et S4 2*1*2*1100 = 4400 T3 de S5 3*2*200 3*2*1000 4800 >0 => R1 sur S4, R2 sur S3 et S5, R3 sur S2, S3, S4 et S5 23 Méthode ABS - Remarques Si coût = bénéfice, étudier l évolution dans le temps Si coût > bénéfice sur tous les sites, choisir le site qui minimise la différence 24

Méthode d allocation progressive Alloue la première copie d un fragment au site qui maximise B - C puis, calcule B - C connaissant cette première copie : C ne change pas B peut changer car le temps d accès distant peut diminuer 25 Exemple - allocation progressive 2 fragments F1 et F2-2 sites S1 et S2 C B F1 sur S1 150 200 F1 sur S2 170 175 F2 sur S1 60 30 F2 sur S2 50 45 ABS : F1 a deux copies sur S1 et S2, F2 est sur S2 Allocation progressive : F1 sur S2 et F2 sur S2 si, après cette première allocation on a : C B F1 sur S2 170 165 => on ne fait pas de copie de F1 sur S2 26

Remarques sur les méthodes ABS et allocation progressive ne tiennent pas compte de la topologie du réseau difficulté à estimer les temps moyens parfois on se concentre sur les transactions critiques et non sur l ensemble des transactions 27 Niveaux de transparence Transparence de fragmentation Transparence d allocation Transparence de langage Pas de transparence 28

Transparence (exemple) Fournisseur(num, nom, ville) Fragmentation horizontale selon la ville (Paris ou Marseille) fparis et fmarseille Le fragment de Marseille est dupliqué (Marseille1 ou Marseille2) fmarseille1 et fmarseille2 Recherche d un fournisseur à partir de son numéro 29 Niveau de transparence Transparence de fragmentation : procedure requete1(:num,:nom); select nom into :nom from fournisseur where num=:num; Transparence de langage : procedure requete3(:num,:nom); select nom into :nom from fparis where num=:num; if :empty then select nom into :nom from fmarseille1; end procedure; Le programmeur choisit la copie à utiliser Transparence d allocation : procedure requete2(:num,:nom); select nom into :nom from fparis where num=:num; if :empty then select nom into :nom from fmarseille; end procedure; 30

Distribution dans Oracle Ne gère pas la fragmentation Assure la connectivité avec des bases Oracle et non Oracle Permet la définition d une base de données globale (un nom) Permet les transactions à distance, les transactions distribuées (PL/SQL) Pas d intégrité référentielle distribuée 31 Réplication dans Oracle «Snapshots» en lecture : une table maître recopiée et mise à jour à la demande de l esclave «Snapshots» modifiables : sont modifiables en direct aussi Réplication multi-maître «poussée» par le maître Réplication procédurale : par package 32