Module BDR Master d Informatique (SAR)

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

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

Gestion de données réparties. Cours 1

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

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

Intégration de données hétérogènes et réparties. Anne Doucet

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

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

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

Répartition, Réplication, Nomadisme, Hétérogénéité dans les SGBDs

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

Répartition, Réplication, Nomadisme, Hétérogénéité dans les SGBDs

et les Systèmes Multidimensionnels

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

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

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

Architectures d'intégration de données

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

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

Cours Bases de données

CESI Bases de données

Bases de Données Réparties

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

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

Base de données II Module 3b

Les Entrepôts de Données

INTRODUCTION AUX BASES de DONNEES

ORACLE DATA INTEGRATOR ENTERPRISE EDITION - ODI EE

Module BD et sites WEB

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

Master I Génie Logiciel

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

Enterprise Intégration

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

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

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

CHAPITRE 1 ARCHITECTURE

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

TP Bases de données réparties

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

MYXTRACTION La Business Intelligence en temps réel

Introduction aux SGBDR

Bases de données avancées Introduction

Module BDR Master d Informatique (SAR)

Bases de données cours 1

C-JDBC. Emmanuel Cecchet INRIA, Projet Sardes.

L objet de cet article est de présenter succinctement ces possibilités.

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

Mercredi 15 Janvier 2014

Java et les bases de données

SQL Server 2012 et SQL Server 2014

2 Serveurs OLAP et introduction au Data Mining

Sybase PowerAMC 16. Guide des nouvelles fonctionnalités générales. DOCUMENTATION

WEA Un Gérant d'objets Persistants pour des environnements distribués

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

Bases de Données Avancées

LES ENTREPOTS DE DONNEES

Réplication des données

Chapitre 1 : Introduction aux bases de données

Bases de données relationnelles : Introduction

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques

Qu est-ce que ArcGIS?

Bases de Données. Plan

Licence Professionnelle Commerce Electronique. MySQL. Michel DUBOIS Michel Dubois : Support de cours SGBD N 1

Master Exploration Informatique des données DataWareHouse

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

BUSINESS INTELLIGENCE. Une vision cockpit : utilité et apport pour l'entreprise

Le modèle client-serveur

Les bases de données Page 1 / 8

CATALOGUE DE FORMATIONS BUSINESS INTELLIGENCE. Edition 2012

Introduction aux Bases de Données Relationnelles Conclusion - 1

Du 10 Fév. au 14 Mars 2014

Atelier 1. Portails documentaires : BioLib et Cemadoc

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Entrepôts de données. NEGRE Elsa Université Paris-Dauphine

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

Annuaires LDAP et méta-annuaires

Information utiles. webpage : Google+ : digiusto/

UE 8 Systèmes d information de gestion Le programme

Introduction aux applications réparties

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

Compte Rendu d intégration d application

En synthèse. HVR pour garantir les échanges sensibles de l'entreprise

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

CORBA haute performance

SQL Server 2014 Administration d'une base de données transactionnelle avec SQL Server Management Studio

LDAP & Unified User Management Suite

Architectures web/bases de données

Master Informatique et Systèmes. Architecture des Systèmes d Information. 03 Architecture Logicielle et Technique

Configuration de SQL server 2005 pour la réplication

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

SQL Server 2012 Administrez une base de données : Exercices et corrigés

IBM System i. DB2 Web Query for System i : le successeur de Query/400? Oui, mais bien plus!!!

Optimisations des SGBDR. Étude de cas : MySQL

Business & High Technology

NoSQL. Introduction 1/23. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

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

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

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

Transcription:

Module BDR Master d Informatique (SAR) Cours 6- Bases de données réparties Anne Doucet Anne.Doucet@lip6.fr 1

Bases de Données Réparties Définition Conception Décomposition Fragmentation horizontale et verticale Outils d interface SGBD extracteurs, passerelles Réplication SGBD répartis hétérogènes 2

BD réparties (1) Principe : BD locales, avec des accès locaux rapides, et possibilité d accéder aux autres SGBD du réseau (accès globaux) Plusieurs niveaux d intégration : Client/serveur : BD centralisée, seuls certains traitements (interface, p.ex.) sont locaux. Accès distant (Remote Data Access) Vues réparties : extension du mécanisme de vues pour définir des vues sur plusieurs sites. 3

BD Réparties (2) BD réparties : Plusieurs bases sur plusieurs sites, mais une seule BD «logique». Les ordinateurs (appelés sites) communiquent via le réseau et sont faiblement couplés. Chaque site contient des données de la base, peut exécuter des transactions locales et participer à l exécution de transactions globales 4

SGBD réparti SGBDR SGBD1 SGBD2 Rend la répartition (ou distribution) transparente dictionnaire des données réparties traitement des requêtes réparties gestion de transactions réparties gestion de la cohérence et de la sécurité 5

Paramètres à considérer Coût et temps de communication entre deux sites Fiabilité fréquence des pannes des sites, du réseau Accessibilité aux données accès aux données en cas de panne des sites, du réseau. accès aux sites les moins encombrés, les plus puissants 6

Evaluation de l'approche BDR avantages extensibilité partage des données hétérogènes et réparties performances avec le parallélisme disponibilité avec la réplication inconvénients administration complexe complexité de mise en œuvre et de développement distribution du contrôle difficulté de migration surcharge (l échange de messages augmente le temps de calcul) 7

Migration vers une BDR Décomposition en BD locales BD BD1 BD2 BD3 Intégration logique des BD locales existantes BD BD1 BD2 BD3 8

Architecture de schémas application 1 application 2 Schéma global Schéma local 1 Schéma local 2 Schéma local 3 indépendance applications/bdr schéma global lourd à gérer 9

Architecture fédérée application 1 application 2 Schéma fédéré 1 Schéma fédéré 2 Schéma local 1 Schéma local 2 Schéma local 3 moyen contrôlé de migration 10

Schéma global schéma conceptuel global donne la description globale et unifiée de toutes les données de la BDR (e.g., des relations globales) indépendance à la répartition schéma de placement règles de correspondance avec les données locales indépendance à la localisation, la fragmentation et la duplication Le schéma global fait partie du dictionnaire de la BDR et peut être conçu comme une BDR (dupliqué ou fragmenté) 11

Exemple de schéma global Schéma conceptuel global Client (nclient, nom, ville) Cde (ncde, nclient, produit, qté) Schéma de placement Client = Client1 @ Site1 U Client1 @ Site2 Cde = Cde @ Site3 12

Conception d'une BDR par intégration BD1 BD2 BD3 Traduction de schémas Traducteur 1 Traducteur 2 Traducteur 3 S local 1 S local 2 S local 3 Intégration de schémas Intégrateur Schéma Global 13

Intégration de schémas 1. pré-intégration Les schémas sont transformés pour les rendre plus homogènes identification des éléments reliés (e.g. domaines équivalents) et établissement des règles de conversion (e.g. 1 inch = 2,54 cm) Pbs : hétérogénéité des modèles de données, des puissances d expression, des modélisations 2. comparaison identification des conflits de noms (synonymes et homonymes) et des conflits structurels (types, clés, dépendances) 14

Intégration de schémas 3. conformance résolution des conflits de noms (renommage) et des conflits structurels (changements de clés, tables d'équivalence) Définition de règles de traduction entre le schéma intégré et les schémas initiaux. 4. fusion et restructuration fusion des schémas intermédiaires et restructuration pour créer le "meilleur" schéma intégré 15

Conception par décomposition Table globale fragmentation allocation Site 1 Site 2 16

Objectifs de la décomposition fragmentation trois types : horizontale, verticale, mixte performances en favorisant les accès locaux équilibrer la charge de travail entre les sites (parallélisme) duplication (ou réplication) favoriser les accès locaux augmenter la disponibilité des données 17

Types de Fragmentation horizontale verticale mixte 18

Fragmentation correcte Complète chaque élément de R doit se trouver dans un fragment Reconstructible on doit pouvoir recomposer R à partir de ses fragments Disjointe chaque élément de R ne doit pas être dupliqué 19

Fragmentation Horizontale Fragments définis par sélection Client1 = Client where ville = Paris Client2 = Client where ville not= Paris Client nclient nom ville C 1 C 2 C 3 C 4 Dupont Martin Martin Smith Paris Lyon Paris Lille Reconstruction Client =Client1 U Client2 Client1 nclient nom ville C 1 C 3 Client2 Dupont Martin Paris Paris nclient nom ville C 2 C 4 Martin Smith Lyon Lille 20

Fragmentation Horizontale Dérivée Fragments définis par jointure Cde1 = Cde where Cde.nclient =Client1.nclient Cde2 = Cde where Cde.nclient = Client2.nclient Reconstruction Cde = Cde1 U Cde2 Cde ncde nclient produit D 1 D 2 D 3 D 4 C 1 C 1 C 2 C 4 P 1 P 2 P 3 P 4 qté 10 20 5 10 Cde1 Cde2 ncde nclient produit qté ncde nclient produit qté D 1 D 2 C 1 C 1 P 1 P 2 10 20 D 3 D 4 C 2 C 4 P 3 P 4 5 10 21

Fragmentation Verticale Fragments définis par projection Cde1 = Cde (ncde, nclient) Cde2 = Cde (ncde, produit, qté) Reconstruction Cde = [ncde, nclient, produit, qté] where Cde1.ncde = Cde2.ncde Cde ncde nclient produit D 1 D 2 D 3 D 4 C 1 C 1 C 2 C 4 P 1 P 2 P 3 P 4 qté 10 20 5 10 Cde1 Cde2 ncde nclient ncde produit qté D 1 D 2 D 3 D 4 C 1 C 1 C 2 C 4 D 1 D 2 D 3 D 4 P 1 P 2 P 3 P 4 10 20 5 10 22

Allocation des Fragments aux Sites Non-dupliquée partitionnée : chaque fragment réside sur un seul site Dupliquée chaque fragment sur un ou plusieurs sites maintien de la cohérence des copies multiples Règle : si le ratio Lectures/màj est > 1, la duplication est avantageuse 23

Allocation de Fragments Problème: Soit F un ensemble de fragments S un ensemble de sites Q un ensemble d applications et leurs caractéristiques trouver la distribution "optimale" de F sur S Optimum coût minimal de communication, stockage et traitement Performance = temps de réponse ou débit Solution allouer une copie de fragment là où le bénéfice est supérieur au coût 24

Exemple d'allocation de Fragments Client1 nclient nom ville C 1 C 3 Dupont Martin Paris Paris Client2 nclient nom ville C 2 C 4 Martin Smith Lyon Lille Cde1 ncde client produit qté D 1 D 2 C 1 C 1 P 1 P 2 10 20 Cde2 ncde client produit D 3 D 4 C 2 C 4 P 3 P 4 qté 5 10 Site 1 Site 2 25

Outils d'interface SGBD Extracteur données Transformation table Passerelle procédure données Select SQL résultat Réplicateur données Select copie1 copie2 26

Extracteurs et Passerelles Fonctions définition des procédures de transformation (dictionnaire) et exécution dans l'environnement cible conversion de formats et de valeurs filtrage et fusion de fichiers ou de tables données calculées et résumés Fournisseurs indépendants Evolutionary Technology Inc. (ETI), Information Builders Inc. (IBI), Prism, Carleton, etc. extracteurs indépendants entre les données sources et les outils cibles Editeurs de SGBD Oracle, DB2, Sybase, etc. passerelles entre le SGBD et les données sources 27

La réplication Objectifs Fonctions Modèles d'appartenance fixe, dynamique ou partagé Détection des modifications Produits Data Propagator Relational (DProp R) d'ibm Informix OnLine CA-OpenIngres Replicator Oracle Sybase Replication Server Multi Server Option d'afic Technologies 28

Objectifs de la réplication + Accès simplifié, plus performant pour les lectures + Résistance aux pannes + Parallélisme accru + Evite des transferts - Overhead en mise à jour - Cohérence des données - Toujours bien si on privilégie les lectures 29

Objectifs de la réplication Problème : comment partager des données entre p sites? Solution 1 : sans duplication stockage sur un site et accès réseau depuis les autres sites problèmes de performances et de disponibilité Solution 2 : duplication manuelle propagation des mises à jour d'un site vers les autres par une transaction multisite avec validation 2PC problèmes liés au 2PC : bloquant et cher Solution 3 : réplication automatique et transparente depuis un site primaire vers des sites cibles 30

Fonctions d'un réplicateur Définition des objets répliqués table cible = sous-ensemble horizontal et/ou vertical d'une ou p tables Définition de la fréquence de rafraichissement immédiat (après mise à jour des tables primaires) à intervalles réguliers (heure, jour, etc.) à partir d'un événement produit par l'application Rafraichissement complet ou partiel (propagation des modifications) push (primaire -> cibles) ou pull (cible -> primaire) Support des données hétérogènes via les passerelles 31

Modèle d'appartenance fixe Seul le site primaire peut mettre à jour, les sites cibles ne recevant que des copies en lecture Diffusion primaire cible1 cible2 Consolidation primaire1 primaire2 cible 32

Modèle d'appartenance dynamique Le site primaire peut être différent au cours du temps, en fonction d'événements: panne d'un site, état de la données, etc. Appartenance à l'instant t1 primaire cible1 cible2 Appartenance à l'instant t2 cible2 primaire cible1 33

Modèle d'appartenance partagée Une donnée appartient à plusieurs sites, qui peuvent chacun mettre à jour et diffuser aux autres sites augmente la disponibilité peut produire des conflits, qui doivent être détectés et résolus primaire1 primaire2 primaire3 34

Détection des modifications Solution 1 : utilisation du journal les transactions qui modifient écrivent une marque spéciale dans le journal détection périodique en lisant le journal, indépendamment de la transaction qui a modifié modification de la gestion du journal Solution 2 : utilisation de triggers la modification d'une donnée répliquée déclenche un trigger mécanisme général et extensible la détection fait partie de la transaction et la ralentit 35

SGBD réparti hétérogène Outils SGBDR Interface réseau Interface réseau Interface SGBD1 SGBD1 Interface réseau Interface SGBD2 SGBD2 36

Produits SGBD relationnels Oracle, Ingres, Sybase, DB2, Informix DataJoiner (IBM) basé sur DB2 VirtualDB (Enterworks) basé sur GemStone, vue objet des tables Open Database Exchange (B2Systems) Disco (GIE Dyade Bull-Inria) utilisé par Kelkoo 37

Oracle/Star SGBD Oracle gestion du dictionnaire de la BDR SQL*Net transparence au réseau connexion client-serveur, login à distance automatique évaluation de requêtes réparties validation en deux étapes et réplication SQL*Connect : passerelle vers les bases non-oracle 38

Database link Lien à une table dans une BD distante specifié par : nom de lien nom de l'utilisateur et password chaîne de connexion SQL*Net (protocole réseau, nom de site, options, etc ) Exemple CREATE DATABASE LINK empparis CONNECT TO toto IDENTIFIEDBY monpw USING Paris.emp 39

Oracle/Star : architecture Outils Oracle SQL*Net SQL*Net SQL*Connect DB2 SQL*Net SQL*Connect Informix 40

Conclusions et perspectives Applications classiques décisionnel (data warehouse) transactionnel Applications nouvelles intégration de données du Web grand nombre de sources hétérogénéité très forte intégration des données semistructurées (HTML, XML) intégration de la recherche documentaire 41