La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

AFNOR Java Serveurs - D1 - 24/03/2000 France Télécom R&D Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation.

Présentations similaires


Présentation au sujet: "AFNOR Java Serveurs - D1 - 24/03/2000 France Télécom R&D Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation."— Transcription de la présentation:

1 AFNOR Java Serveurs - D1 - 24/03/2000 France Télécom R&D Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation de ce document par son destinataire implique, de la part de ce dernier, la reconnaissance du caractère confidentiel de son contenu et l'engagement de n'en faire aucune reproduction, aucune transmission à des tiers, aucune divulgation et aucune utilisation commerciale sans l'accord préalable écrit de France Télécom R&D Persistance d'objets répartis Alexandre Lefebvre (DTL/ASR) 24 mars 2000

2 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D2 - 24/03/2000 France Télécom R&D Plan è Présentation de DTL/ASR è Problèmes qui nous préoccupent è Supports de persistance répartis ‡ Noah : gestion de la persistance ‡ SRS : gestion de la répartition è Conclusion

3 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D3 - 24/03/2000 France Télécom R&D Positionnement du département ASR è France Telecom R&D ‡ Centre de R&D de France Télécom ; environ 3800 personnes ‡ Rattaché à la Branche Développement è Direction des Techniques Logicielles (DTL) ‡ Environ 180 personnes en R&D ‡ Quatre départements dans les domaines suivants : Maquettage, Spécification et Validation Développement Logiciel, Intelligence artificielle et connexionnisme Sécurité des Services et des Réseaux Architecture des Systèmes Répartis (ASR)

4 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D4 - 24/03/2000 France Télécom R&D Profil du département ASR è Centre de compétence “systèmes répartis et systèmes logiciels de base” ‡ Plates-formes d’exécution réparties (ORB) ‡ Moniteurs transactionnels et bases de données répartis ‡ Systèmes (d’exploitation) sous contraintes (QoS, embarqués) è Missions ‡ Recherche & Développement avancé ‡ Veille technologique ‡ Assistance technique (conseil interne) è Effectif = ~ 55 personnes (~ 40 ingénieurs, 10 thésards, post-doc, chercheurs invités)

5 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D5 - 24/03/2000 France Télécom R&D ASR participe à l'initiative ObjectWeb è Initiative « middleware open source » Java ‡ « ObjectWeb Group » initialisé par Bull, FT-R&D et l’INRIA ‡ Base logicielle Jonathan = ORB ouvert (support de Corba et de RMI) JOnAS = plate-forme EJB Coopération avec Enhydra  plate-forme J2EE è Informations ‡ ‡

6 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D6 - 24/03/2000 France Télécom R&D BD réparties : quelques sujets en panne è Support de persistance réparti è BD relationnelles ‡ liaisons entre données : calculées par jointures ‡ répartition : modèles de partitionnement (placement) horizontal (  union) vertical (  jointure) ‡ pas d'objets = mauvais candidat pour BD réparties è BD à objets ‡ liaisons entre données : liaisons système ‡ bon candidat mais peu de travail sur la répartition (Versant, Thor)

7 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D7 - 24/03/2000 France Télécom R&D Notre contexte de recherche è BD réparties ‡ contexte intranet plutôt qu’Internet (connaissance exhaustive du monde) ‡ objectif = faire inter-opérer des bases d’objets hétérogènes è Deux catégories de problèmes ‡ gestion des chaînes de liaison entre objets références persistantes réparties chaînes d’activation ‡ gestion de l’interrogation (SQL++) modèle de placement optimisation  BD parallèles

8 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D8 - 24/03/2000 France Télécom R&D Quelques principes directeurs è Séparation claire des rôles métier / technique  Architecture multi-tiers  BD gère les données (pas de code applicatif) ‡ BD extensible OK pour interrogation (indexes spécialisés) ‡ LPBD (Pjama) KO (modèle de programmation trop différent) orthogonalité / persistance mais pas de contrôle possible è Serveurs applicatifs : besoin d'une couche intermédiaire ‡ cache d’objets persistants ‡ problème : le serveur de données impose modèle d’échange (format, politique de pré-chargement,...) synchronisation (CBL, verrouillage optimiste, etc) ‡ approche composants (EJB, Corba Components, COM+?) è Besoin d'une couche intermédiaire

9 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D9 - 24/03/2000 France Télécom R&D Nos axes de travail actuels è Les chaînes de liaisons entre objets ‡ Références entre objets persistants ‡ Gestion des caches d’objets è Gestion des noms répartis è Synchronisation entre les différentes mémoires è Définition d’invariants architecturaux è Standardisation des interfaces Serveurs applicatifs (EJB) Serveurs de données (BDRO, BDO) gestion des caches (BDO) Objets applicatifs répartis : ORB (Corba, RMI) objets persistants répartis

10 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Vision architecturale pour le support de persistance è Objectif = ouvrir le support d’échanges entre les parties “client” et “serveur” d’un SGBD à objets è Support d’échanges entre serveur applicatif et serveur de données ‡ “vision BD” = schéma externe ‡ interface d’accès à objet : SDL (State Definition Language) ‡ interface de synchronisation ‡ interface pour support de transactions client applicatif serveur applicatif serveur de données disque schéma externe schéma logique schéma physique http (html, xml), IIOP

11 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Persistance : quels besoins ? è Transparence langage (orthogonalité) è Support de l’objet (Noah) ‡ gestion implicite des références ‡ gestion de l’héritage et du polymorphisme è Indépendance vis-à-vis du support de stockage ‡ modèle objet de base (définition d’état) ‡ portabilité binaire de l'accès réparti (SRS) ‡ accès réparti (standard réseau) è Services ‡ de persistance - Noah ‡ de réplication d’objet (état) entre mémoires réparties hétérogènes - SRS

12 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Transparence à la conteneur EJB

13 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D è Contexte : EJB avec persistance container-managed è Limitations de la specification EJB 1.1 ‡ pas d'héritage entre beans ‡ références entre beans gérées par le programmeurs, ou spécifiques aux conteneurs è But : augmenter la transparence pour le programmeur du bean pour : ‡ les références entre objets ‡ l'héritage entre beans ‡ les attributs multi-valués ‡ en bref, retrouver l'abstraction de l'ODMG, mais dans une autre architecture Etendre la persistance des EJB (1)

14 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D è Exemple: class ProductBean { class OfferBean { float price; Collection products; //set of products public float getPrice(){ public Collection getProducts() { return price; } return products; } } } Etendre la persistance des EJB (2) class PurchaseOfferBean{ Offer offer ; public float totalPrice() throws RemoteException { int theTotal = 0 ; //get the set of product objects Collection products = offer.getProducts(); Iterator productsI = products.iterator(); //for each such product, add the product price to the total while (productsI.hasNext()){ theTotal += ((Product)productsI.next()).getPrice(); } //finally, return the total return theTotal ; } }

15 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Noah (persisteNt Object mApping tecHnology) Liaisons pour objets persistants è Modèle de données structurel objet è Descriptions XML : ‡ de la structure des classes persistantes ‡ du mapping vers le support de persistance è Gère la liaison entre les objets dans la base de données et les objets en mémoire è Notion de PId (persistent object identifier) ‡ étend la notion de primary key ‡ introduit le contexte de nommage

16 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Noah : modèle de données è Classes et interfaces (pour héritage multiple) è Types de base : integer, loats, strings, etc è Tout ce qui n'est pas d'un type de base est un objet è Ensemble extensible de classes génériques ‡ set, array interface person {class invoice { string(30) LastName; customer Customer; array FirstNames; set Purchases; } interface customer { class purchase { set Invoices; product Product; } integer Quantity; interface product { float Total; float Price; }} serialized Picture;class client }implements person, customer { }

17 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Noah : utilisation è Dans la hiérarchie des classes EJB pour fournir la persistance container-managed ‡ au niveau de la couche d'interception du container è Autres approches ‡ PSS CORBA ‡...

18 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Noah : vision logique

19 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Noah dans le context EJB

20 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Utilisation de Noah : Compilation persistent class mapping information persistent class structure persistent class mapping information persistent class structure persistent class mapping information 2) call of meta-object initialization reflexive information java files for persistent class PMC XML parser 1) creation of meta-objects meta-objects NOAH

21 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Utilisation de Noah : creation d'objets (1) Home_XXX PFactory_XXX 1-create EJBObject_XXX PObject_XXX 2-new 3-init void PID 4- setPID Bean instance 5-new, EJBCreate

22 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Utilisation de Noah : creation d'objets (2) Home_XXX PFactory_XXX EJBObject_XXX PObject_XXX 1-export 3-setPID PID 2-new

23 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Utilisation de Noah pour trouver et utiliser des objets Home_XXX PFactory_XXX 2-find 1-find data store PID 3 4-bind 5-bind EJBObject_XXX PObject_XXX 6-create 7-business method 8-read Bean instance 9-data from data store 10-setattr 11-EJBLoad + business method

24 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Quelques propriétés de Noah è Réflexivité ‡ les méta objets décrivant les classes persistantes sont eux-même persistants è Les méta-objets sont auto-suffisants : ‡ regénération du fichier de description XML ‡ regénération du code Java

25 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Noah : état des travaux è Première version en cours de développement ‡ mapping objet-relationnel implicite ‡ identifiants d'objets ‡ mapping horizontal ‡ attributs multi-valués transformés en collections d'objets mappés dans une table séparée ‡ héritage multiple è Limitations : ‡ pas de support de bases de données legacy ‡ mapping non customisable dans cette version

26 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Plan de travail pour Noah è février 00: spécifications è avril 00: premier prototype è été 00: ‡ integration avec JOnAS è plus tard : évolution pour support de persistance sur : ‡ bases de données objet ‡ mapping explicite vers les BD relationnelles legacy ‡ LDAP ?

27 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Service de réplication (SRS) è Objectifs ‡ gérer des liaisons entre réplicas ‡ réplicas  mémoires réparties hétérogènes ‡ échanges d’états entre réplicas (gestion de la cohérence) è Modèle de programmation à la ORB ‡ échange d'états au lieu d'appels de procédures à distance è Ce que le SRS ne fait pas, mais permet de programmer ‡ politique de cohérence ‡ politique de synchronisation ‡ mécanisme de transparence langage

28 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Exemple d’utilisation du SRS

29 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D SRS : état des travaux è Spécifications du SRS en cours è Implantation ‡ Personnalité de l’ORB Java Jonathan ‡ Utilisation de GIOP bidirectionnel è Application à l’implantation d’un cache d’objets applicatif ‡ Serveur EJB JOnAS ‡ Choix du serveur d’objets ? è Application à l’implantation de réplication d’objets entre BD ‡ Serveur EJB Jonas ‡ Serveurs de données hétérogènes

30 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Autres travaux è Relation avec ‡ les specifications EJB 2.0 ‡ Java Data Objects ? è Autres travaux sur la persistance : PSS ‡ approche très différente ‡ par d'orthogonalité / persistance

31 La communication de ce document est soumise à autorisation de France Télécom R&D Alexandre Lefebvre - AFNOR Java Serveurs - D /03/2000 France Télécom R&D Conclusion è Objectif : concevoir et construire un middleware d'accès à des mémoires d'objets ‡ répartis ‡ répliqués ‡ persistants è Principes architecturaux : ‡ d'ouverture ‡ d'adaptabilité è Trouver les bons invariants architecturaux è En déduire les bonnes interfaces


Télécharger ppt "AFNOR Java Serveurs - D1 - 24/03/2000 France Télécom R&D Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation."

Présentations similaires


Annonces Google