Transcations réparties. Concept de transaction. Exemple de transaction. Propriétés des transactions (ACIDité) Page 1



Documents pareils
Module BDR Master d Informatique (SAR)

Gestion de données réparties. Cours 1

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

Transactionnel et transactionnel réparti. Source R.CHEVANCE G.Gardarin

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

Bases de données et sites WEB Licence d informatique LI345

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

Les transactions 1/46. I même en cas de panne logicielle ou matérielle. I Concept de transaction. I Gestion de la concurrence : les solutions

Implémentation des SGBD

Réplication des données

UNION INTERCEPT SELECT WHERE JOINT FROM ACID

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

Bases de données avancées Concurrence d'accès et reprise

Projet gestion d'objets dupliqués

Procédures Stockées WAVESOFT ws_sp_getidtable Exemple : ws_sp_getnextsouche Exemple :... 12

Données Réparties. Thibault BERNARD.

Cours Bases de données

Cours de Base de Données Cours n.12

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

Année Universitaire 2009/2010 Session 2 de Printemps

Le Network File System de Sun (NFS)

3. La SGA ou System global Area

Module BDR Master d Informatique (SAR)

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Mysql. Les requêtes préparées Prepared statements

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

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

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

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

SQL Serveur Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise

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

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

Synchronisation Mysql (Replication)

SYSTÈME DE GESTION DE FICHIERS

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

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

Attaques applicatives

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Guide d'installation et de configuration de Pervasive.SQL 7 dans un environnement réseau Microsoft Windows NT

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

TP Contraintes - Triggers

Gestion des utilisateurs et de leurs droits

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

Java et les bases de données

ORTIZ Franck Groupe 4. Terminal serveur pour administrer un serveur Windows à distance, client rdp linux.

Introduction à la programmation concurrente

GNS 3 Travaux pratiques

Eléments de base de la sécurité des bases de données

Description de SQL SERVER. historique

Addenda du Guide de l administrateur

Configuration du serveur FTP sécurisé (Microsoft)

Cours de Systèmes d Exploitation

Cours Informatique Master STEP

Configurer la supervision pour une base MS SQL Server Viadéis Services

PROJET 1 : BASE DE DONNÉES REPARTIES

Installation FollowMe Q server

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP

AP70/AP80 Guide rapide

Systèmes de Gestion de Bases de Données (SGBD) relationnels Maude Manouvrier

4. Outils pour la synchronisation F. Boyer, Laboratoire Lig

SQL Historique

1. Utilisation du logiciel Keepass

CESI Bases de données

Administration des bases de données relationnelles Part I

NanoSense. Protocole Modbus de la sonde Particules P4000. (Version 01F)

Java DataBaseConnectivity

Jean-Louis Cech descente des Princes des Baux Orange Orange : 20 juin 2014.

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

Info0604 Programmation multi-threadée. Cours 5. Programmation multi-threadée en Java

Devoir Data WareHouse

Note d Application. Bascule d ALOHA via injection de route en BGP

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

MODE OPERATOIRE CORIM PROGRESS / SECTION MEI. Exploitation Informatique

J2SE Threads, 1ère partie Principe Cycle de vie Création Synchronisation

Bases de Données Avancées

HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM. Manuel d'utilisation

CHAPITRE 1 ARCHITECTURE

4D Server et les licences : fonctionnement et environnement

C-JDBC. Emmanuel Cecchet INRIA, Projet Sardes.

COMMENT INSTALLER LE SERVEUR QIPAIE

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)

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Installation 1K-Serveur

REPARTITION DE CHARGE LINUX

Intégrité des données

INSTALLATION DE L APPLICATION DU CONTEXTE ITASTE

Phone Manager Soutien de l'application OCTOBER 2014 DOCUMENT RELEASE 4.1 SOUTIEN DE L'APPLICATION

Les bases de l optimisation SQL avec DB2 for i

SSL. Secure Socket Layer. R. Kobylanski janvier version 1.1 FC INPG. Protocole SSL Application avec stunnel

Algorithmique des Systèmes Répartis Protocoles de Communications

KeePass - Mise en œuvre et utilisation

Présentation du SC101

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

SQL Server 2000, Analysis Services et DTS

Processus. Intégration et Tests Nat. Approuvé par : Patrick Atlan Fonction : Directeur Général V isa :

SQL SERVER PRECONISATIONS A L INSTALLATION.2 VERIFICATION INSTALLATION...2 CONNEXION RESEAU.4 EMPLACEMENTS DOSSIERS & SAUVEGARDES...

PHP. Bertrand Estellon. 26 avril Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril / 214

Transcription:

Transcations réparties Concept de transaction Gestion de transactions Transactions dans un système réparti Une transaction est une collection d'actions qui transforment la BD (ou des fichiers) depuis un en un autre BD cohérente (garantie par le système) transaction cohérente (garantie par le programmeur) BD dans un Begin exécution de la transaction BD dans un End Page 1 Page 2 Exemple de transaction Propriétés des transactions (ACIDité) Réduire la cde no 10 de 5 unités et les reporter à la cde 12 Transaction Report-qté begin exec sql UPDATE Cde SET qte = qté - 5 WHERE ncde = 10; exec sql UPDATE Cde SET qté = qté + 5 WHERE ncde = 12; exec sql COMMIT WORK; end. ATOMICITE tout (COMMIT) ou rien (ABORT) COHERENCE les contraintes d'intégrité sont respectées ISOLATION les mises à jour concurrentes sont invisibles DURABILITE les mises à jour validées persistent Page 3 Page 4

Isolation par verrouillage 2 Phases Performances verrous T temps Les verrous en lecture sont partageables; ceux en écriture sont exclusifs Règle 1 avant d'accèder un granule x, une transaction doit acquérir un verrou sur x. Si x est déjà verrouillé de façon exclusive, la transaction attend Règle 2 dès qu'une transaction relâche un verrou, elle ne peut plus acquérir de nouveau verrou L'objectif est de réduire: les blocages une transaction attend qu'une autre transaction relâche ses verrous les inter-blocages un ensemble de transactions attend que l'une d'entre elles relâche ses verrous Page 5 Page 6 Degrés d isolation Exemple de transaction distribuée Degré 0 verrou en écriture sur x relâché après écriture de x pas d écritures "sales" Degré 1 verrouillage en écriture à deux phases pas de pertes de mise à jour Degré 2 verrou en lecture sur x relâché après lecture de x pas de lectures "sales" Degré 3 verrouillage en lecture à deux phases Transaction: transfert CC-CE Vue globale de l info. client Trans. multi-base SGBDR Comptes courants (DB2/AIX) Comptes d épargne (Oracle/Linux) les lectures sont répétables Serveurs de données Page 7 Page 8

Gestion de transactions réparties Protocole de validation en 2 étapes (2PC) Begin Read Write application Transactions Globales résultats Objectif : Exécuter COMMIT pour une transaction répartie Phase 1 Préparer à écrire les résultats des mises à jour dans la BD Phase 2 Ecrire ces résultats dans la BD STrans. Transactions Locales STrans. Transactions Locales composant système d un site qui applique le protocole composant système d un autre site qui participe dans l'exécution de la transaction Page 9 Page 10 Protocole 2PC : messages échangés Actions du protocole Coordinator INITIAL INITIAL t.commit Initial prepare Initial NOK write begin_commit VOTE-ABORT PREPARE No Ready to? prepare* NOK OK* Wait abort* commit* OK abort Ready commit WAIT Any No? No write commit COMMIT Yes VOTE-COMMIT GLOBAL-COMMIT ACK ABORT ACK GLOBAL-ABORT Yes write ready READY Type of msg? write commit Légende: message reçu message envoyé * = de/à tous les participants write end_of_transaction ABORT COMMIT Page 11 Page 12

Points clé du protocole 2PC Validation normale Lorsque le participant envoie OK au coordinateur Le participant s engage à Le participant valide ssi le coordinateur le lui ordonne Le coordinateur peut demander au participant d abandonner Lorsque le participant envoie NOK au coordinateur Le participant peut abandonner unilatéralement Le coordinateur décide de ssi tous les participants sont OK Chaque site doit maintenir un journal des messages échangés reprise après panne Page 13 Page 14 Panne d'un participant avant d'être Prêt Panne d'un participant après s'être déclaré Prêt abandon timeout abandon } reprise panne fait } panne reprise Page 15 Page 16

Panne du coordinateur Page 17