C-JDBC. Emmanuel Cecchet INRIA, Projet Sardes. http://sardes.inrialpes.fr



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

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Tolérance aux Fautes des Grappes d Applications J2EE. Applications Internet dynamiques

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE

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

JOnAS 5. Serveur d application d

Introduction aux applications réparties

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

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Des solutions J2EE open source professionnelles adaptées à votre système d information d entreprise

«clustering» et «load balancing» avec Zope et ZEO

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

Hibernate vs. le Cloud Computing

JOnAS Day 5.1. Clustering

Cours Bases de données

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

L art d ordonnancer. avec JobScheduler. François BAYART

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Java et les bases de données

Module BDR Master d Informatique (SAR)

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

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

PostgreSQL. Formations. Catalogue Calendrier... 8

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

La Continuité d Activité

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

SECURIDAY 2012 Pro Edition

Systèmes répartis. Fabrice Rossi Université Paris-IX Dauphine. Systèmes répartis p.1/49

Introduction au Déploiement

Session S12 Les bases de l optimisation SQL avec DB2 for i

Système d administration autonome adaptable: application au Cloud

Présentation Alfresco

Les bases de l optimisation SQL avec DB2 for i

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

IBM WebSphere Application Server 5.0 : Administration avancée

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters AVANTAGES

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

Jahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3

Environnements de Développement

Formation en Logiciels Libres. Fiche d inscription

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters

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

Java à Murex: un retour d'expérience. Jean-Pierre DACHER & Craig MORRISON

Introduction à la plateforme J2EE

Architectures d'intégration de données

<Insert Picture Here> Maintenir le cap avec Oracle WebLogic Server

EJBCA PKI. Yannick Quenec'hdu Reponsable BU sécurité

«Clustering» et «Load balancing» avec Zope et ZEO

Java Naming and Directory Interface

Nouvelles Plateformes Technologiques

Architectures n-tiers Intergiciels à objets et services web

PostgreSQL. Formations. Calendrier... 14

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

Open Source Job Scheduler. Installation(s)

Oracle Maximum Availability Architecture

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

Acquisition des données - Big Data. Dario VEGA Senior Sales Consultant

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Cartographie des solutions BigData

Software Engineering and Middleware A Roadmap

Implémentation des SGBD

Tungsten: une implémentation du futur clustering de PostgreSQL

Haute-disponibilité et bases de données

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

Sommaire. La haute-disponibilité. L'offre OpenSource. Les systèmes tiers. MySQL

Projet. But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables. Serveur de diffusion

Caches web. Olivier Aubert 1/35

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Architectures en couches pour applications web Rappel : Architecture en couches

Administration d'infrastructures logicielles avec Jade

Francis Mignault. ! Coauteur : Expert Oracle Application Express. ! Membre du Oracle APEX Advisory Board apex.oracle.com/vote

Présentation des composants WhatsUp Companion & WhatsUp Companion Extended. Version Mars Orsenna

Catalogue Formation «Vanilla»

Load Balancing MASSAOUDI MOHAMED CHAHINEZ HACHAICHI AMENI DHAWEFI ERIJ MAIJED EMNA BOUGHANMI

Documentation de la plate forme JOnAS

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

Compte Rendu d intégration d application

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

GESTION DE LA PERFORMANCE. Albert Amar Avant-vente Middleware

L architecture de Citrix XenApp

Catalogue des Formations Techniques

Proposition d une architecture pour ebay, en mettant l accent sur les notions de scalabilité, de résilience, et de tolérance aux pannes.

BMC Middleware Management

Sommaire. 3. Les grands principes de GFS L architecture L accès de fichier en lecture L accès de fichier en écriture Bilan

ArcGIS 10.1 for Server

NBS System et Zend Technologies Découvrez la scalabilité sans limite pour vos applications PHP grâce au Zend Cloud

Groupe de Discussion Big Data Aperçu des technologies et applications. Stéphane MOUTON

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

Prise en compte des ressources dans les composants logiciels parallèles

Module BDR Master d Informatique (SAR)

2 Chapitre 1 Introduction

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

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

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


Transcription:

Emmanuel Cecchet INRIA, Projet Sardes http://sardes.inrialpes.fr

Plan Motivations Idées principales Concepts Caching Perspectives /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 2

- Motivations clustering J2EE serveur Web (switch L4, RR-DNS, ) serveur de servlets (mod_jk, ) serveur d EJB (travaux de Simon) pas de solution pour les BDs perf des applis J2EE limitée par la BD coût des transactions pas d implantations open-source pour cluster limitation matérielles (petits SMP) solutions commerciales très chères serveur d EJB pas capable d optimiser les accès ou de cacher les résultats si accès à la BD par un autre tiers JDBC est une API bien établie /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 3

Etat de l art clustering BD utilisé pour le partitionnement mais pas pour la réplication pb de perf sur les joins utilisation de views pour améliorer les perfs décision de load balancing centralisée pas d offre open-source les offres commerciales (Oracle, DB2) ont des solutions propriétaires support dans le JDBC en général pas plus que du pooling de connexions clustering ad-hoc dans WebLogic pour Oracle (limité au round-robin) /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 4

Idées = RAIDb fournir à des clients JDBC un accès transparent à un cluster de bases de données performance/disponibilité/tolérance aux fautes gestion des BD hétérogènes caching, logging, monitoring, Hypothèses tous les accès à la BD se font à travers un JDBC Jim Gray a tort : eager consistency peut marcher avec des BD répliquées /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 5

Idées duplication de la BD sur toutes les machines load balancing des reads et broadcast des write Propriétés architecture modulaire, reconfigurable, adaptable aux ressources matérielles et aux besoins des applis, portable (écrit en Java) /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 6

Plan Motivations Idées principales Concepts Caching Perspectives /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 7

Vue d ensemble Manager JDBC /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 8

Oracle + Manager JDBC Oracle JDBC Oracle /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 9

Hétérogénéité Manager JDBC PostGreSQL JDBC Oracle JDBC RMI JDBC RMIJDBC InstantDB JDBC PostGreSQL Oracle Oracle InstantDB /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 10

Manager Administration console (Servlet, EJB,...) Manager lookup Registry Manager XML configuration file Configuration & administration Virtual database Request Manager Request Scheduler Virtual database Request Manager Request Scheduler Bind Manager XML engine Request Cache Request Cache Request Dispatcher Request Dispatcher Database Backend Connection Manager Database Backend Connection Manager Database Backend Connection Manager Database Backend Connection Manager JDBC JDBC Oracle JDBC RMI JDBC RMIJDBC Oracle InstantDB JDBC InstantDB /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 11

Scalabilité verticale Manager JDBC PostGreSQL JDBC PostGreSQL Manager Manager Oracle JDBC DB2 JDBC Oracle Oracle DB2 DB2 /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 12

Scalabilité horizontale Manager JavaGroups Manager JavaGroups Manager JDBC PostGreSQL JDBC Oracle JDBC DB2 JDBC PostGreSQL Oracle Oracle DB2 DB2 /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 13

Pistes de recherche - 1 équilibrage de charge, weighted round-robin, spécialisation selon les requêtes (possibilité de partitionnement de la BD sur la grappe), monitoring/évaluation de la charge des BD. scheduling de requêtes étude des possibilités de réordonnancement des requêtes pour améliorer le taux du hit du cache ou les temps de réponse favorisation des batch-updates retard volontaire des écritures, out-of-order write, passage à l'échelle étude architecturale : cluster horizontal à la JavaGroup, diffusion en arbre, limitation de la diffusion des écritures /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 14

Pistes de recherche - 2 caching caching de requêtes SQL dans le granularités multiples avec BD cache pour requêtes complexes caching de document XML, précalcul de transformations avec feuilles de styles (XSLT) edge-side caching (sujet de recherche à part entière qui aurait plus d intérêt au niveau Web Services) (re)configuration dynamique ajout dynamique d un nœud (maintien de la cohérence) changement de politique au niveau scheduler, cache ou load balancing détection automatique des schémas des BDs /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 15

Pistes de recherche - 3 exploitation de l'hétérogénéité spécialisation de traitement en fonction des spécificités des BDs, réécriture à la volée de requête pour support de l'hétérogénéité synthèse des propriétés de la grappe hétérogène dans le tolérance aux fautes / reprise sur pannes logs transactions sécurité monitoring /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 16

Plan Motivations Idées principales Concepts Caching Perspectives /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 17

Fine-grain caching cacher les réponses des requêtes SQL limiter les invalidations en analysant les requêtes SQL Query Cache dans les BD utilise invalidations sur les tables invalidation sur les colonnes optimisation des SELECT uniques peut être possible d exécuter les UPDATE/DELETE sur le cache dans certains cas possibilité de parser les requêtes dans le JDBC (et de cacher le parsing) /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 18

Fine-grain caching Taux de hits du cache avec RUBiS pas d invalidation (cache non cohérent) : 82% invalidation par table : 15% invalidation par colonne : 53% + unique : 54% ++ BD cache : 57.5% +++ unique update : 71% /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 19

Fine-grain caching TPC-W (papier OSDI) débit amélioré jusqu à x2 temps réponse diminué jusqu à x3 obligé d avoir invalidations à grain fin position du cache (serveur web, bd ou entre les 2) a peu d impact sur les perfs stratégie pour caches multiples : workload fortement read-only : cache à 2 niveaux (serveur web + machine dédiée) workload ayant plus d écritures : cache centralisé partagé suffisant /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 20

Plan Motivations Idées principales Concepts Caching Perspectives /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 21

Etat actuel Code disponible JDBC générique utilisant RMI conflict-aware scheduling load-balancing: simple round-robin scalabilité horizontale et verticale opérationnelle mais non évaluée reconfiguration dynamique embryonnaire caching à granularité variable Manque tolérance aux fautes/reprise sur panne logging monitoring /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 22

Perspectives Lancer comme projet ObjectWeb Peut s interfacer avec n importe quel container Web ou EJB Gros potentiel de diffusion Nécessaire pour le benchmark de JOnAS cluster et/ou transactions réelles avec RUBiS Intégration dans l offre clustering de JOnAS pas de modification de JOnAS possibilité d intégrer l admin/monitoring dans les outils de JOnAS? /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 23