Intégration ActiveXML - Xyleme

Slides:



Advertisements
Présentations similaires
Master SIR (M2) Année Développement en environnement J2EE de Web services pour l'interopérabilité du projet CASTORE ce stage de fin d’étude a.
Advertisements

« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
Nouveautés pour les développeurs Office System Scott Burmester Responsable des programmes PSPS.
Xavier Blanc Web Services Xavier Blanc
Première expérience d’utilisation des Web Services dans SmartTools Didier Parigot Projet OASIS INRIA Sophia www-sop.inria.fr/oasis/SmartTools Journée.
La machine virtuelle virtuelle utopie et/ou réalité ?
Julien HERON.
Les Web Services.
Architecture Technique de la plate-forme CASTOR Projet Castor © Ecole des Mines de Nantes
JAV - TD 6 Structures de données JAVA
Design Pattern MVC En PHP5.
Intégrer vos données avec.
TP 3-4 BD21.
Serge Abiteboul, Grégory Cobena, Benjamin Nguyen, Antonella Poggi
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
PROJET HANDICAPS Certificat de Qualification Professionnelle
Le Téléphone Russe Le Téléphone Russe. Le Téléphone Russe Le Téléphone Russe.
E.Dot – juillet 2005 Page 1 Projet R.N.T.L. e.Dot – Entrepôts de Données Ouverts sur la Toile – Organisation et Structuration.
Etude des Technologies du Web services
Communiquer avec ELYX.
Contrôles d'accès aux données
L’utilisation des bases de données
XML-Family Web Services Description Language W.S.D.L.
Archimède : dépôt institutionnel de la Bibliothèque de lUniversité Laval Par Rida Benjelloun Chef de la section recherche.
Annotations sémantiques pour le domaine des biopuces
L’utilisation des bases de données
Services fournis par le SI et technologies associées
Soutenance Orale, TER 2002 Equipe TENEBRION / J.P. Arcangeli
ISICIL SWEETDEKI Intégration du logiciel Mindtouch Core dans la plate-forme ISICIL Guillaume HUSSON.
A L I M E N T A T I O N A G R I C U L T U R E E N V I R O N N E M E N T Réseau BD 11/12/08 Hibernate Search Réunion dunité – 23/10/2008 Erik Kimmel.
Développement d’application web
Séminaire Service Interoperability on Context Level in Ubiquitous Computing Environments Davide Bazzi IIUF Etude de larticle: Service Interoperability.
La face cachée des systèmes de recherche Martin Bouchard, président Janvier 2003.
Projet de Master première année 2007 / 2008
Adaptée du cours de Richard Grin
LEGO – Rennes, 18 Septembre 2006 Un outil de monitoring pour le déploiement dynamique de JuxMem Loïc Cudennec IRISA / INRIA, PARIS project-team Stage de.
Présentation du projet edot Revue intermédiaire - 29 Juin 2004.
E.Dot – juillet 2005 Page 1 Conclusion [ Lot 4. Validation et Évaluation ] Rapport Final 4 juillet 2005.
Organisation de l’entrepôt edot
Gestion active de l’entrepôt edot avec ACWare Revue edot du 29 Juin 2004 Lot 3 : Création de l’entrepôt S. Abiteboul, B.Amann, N. Azis, B. Nguyen, G. Ruberg.
GDS – Paris, 13 Octobre 2006 Un outil de monitoring pour le déploiement dynamique de JuxMem Loïc Cudennec IRISA / INRIA, PARIS project-team Stage de M2RI.
CENTRALISATION DES CANDIDATS LOCATAIRES
API StarOffice 6.0 Beta Franck COURTES Christophe DECIS Thomas FOREY Patrice SEURAT ESSI 2002.
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Content Management System CMS. Pourquoi ? Obligation de ressaisir des contenus publiés à plusieurs endroits Pas d’outils de gestion de qualité de l’information.
Cours n°4M2. ESCE (S. Sidhom) Séminaire ( 6-12 Février 2007 ) Promo. M2 ESCE-Tunis 2006/07 Conception d’un système d'information sur Internet Architecture.
09/11/2006 CMS Content Management System Système de Gestion de Contenu.
MEMOIRE INDUSTRIEL ESIEA
1 Extension du modèle de composants CORBA avec accès concurrent à des données partagées Travail réalisé par : Landry BREUIL PFE, ISIMA Encadrants : Gabriel.
Mastère Professionnel Systèmes de Communication et Réseaux
Acquisition d’information sur internet
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
Introduction au socle MEAN
XML fortement adopté en tant que format indépendant d’échange de données. Utilisation de XML pour la modélisation de données structurées et non structurées.
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
Présentation ESTRABOX
Un service de partage de données pour DIET : GDS basé sur JuxMem Mathieu Jan Projet PARIS Lyon, 5 décembre 2003.
1 Interface Web-Service pour une application génie logiciel Equipe : LIP6 Team Move Date : 02/09/2008 Auteur : S. HONG Encadrants : F. KORDON / J.B. VORON.
PaCO++ André Ribes Réunion Hydrogrid Rennes 15/09/03.
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
L T I Laboratoire de Téléinformatique 2 Projet de semestre Parseur XML basé sur la DTD : Buts –Utiliser la grammaire définissant un type de fichiers XML.
Mac OS X : Aperçu du système
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
Séance /10/2004 SGBD - Approches & Principes.
Gestion des documents internes avec SQL Server 2005 Date de publication : janvier 2006.
SOAP et les RPC XML SOAP WSDL RPC. Rappels sur le XML Langage avec des balises Très lisible Pour stocker des données Séparation entre contenu et présentation.
Tuteur : Jean-Philippe Prost Soutenance de Projet Licence Professionnelle Assistant de Projet Informatique Développement d’Applications E-Business Année.
Parquet Geoffrey 3 ARIL EXIA.CESI ARRAS. Présentation du MLD Présentation de la persistance Présentation récapitulatif du projet JSP/SERVLET MVC Cycle.
PROJET DE SESSION PRÉSENTÉ PAR : Rosemarie McHugh DANS LE CADRE DU COURS : SCG Réalisation d’applications en SIG 16 avril 2007.
Transcription de la présentation:

Intégration ActiveXML - Xyleme Dan Vodislav Xyleme

Plan Contexte et objectifs Architectures possibles Réalisation Conclusions et perspectives Dan VODISLAV --- Intégration ActiveXML - Xyleme

Xyleme Entrepôt de données XML à très large échelle Architecture Très efficace pour la gestion de gros volumes de données API de programmation XyDK Architecture Documents XML Requêtes XyQL XyLoader XyQuery XyIndex XyStore Dan VODISLAV --- Intégration ActiveXML - Xyleme

ActiveXML Modèle de documents XML dynamiques XML + appels de services + modèle d'évaluation Plate-forme pour applications distribuées Communication par services web XOQL processor AXML engine query WSDL service descriptions read update consults SOAP wrapper AXML peer service SOAP client service call service result AXML store AXML XML <info> <ville>Paris</ville> <axml:sc service=“Temperature” mode=“append” frequence=“every day” > <axml:param name=“ville”> <axml:xpath>../ville/text()</ axml:xpath> </axml:param> </axml:sc> </info> Dan VODISLAV --- Intégration ActiveXML - Xyleme

Objectifs Rôles dans e.dot Xyleme: stockage et interrogation de données XML ActiveXML: distribution de l'application, communication, workflow Objectif: intégrer les rôles de stockage et de communication Intérêt pour ActiveXML Créer une plate-forme plus puissante, utilisant une vraie base de données Système actuel: documents en mémoire Étudier différentes architectures de couplage avec une base de données Intérêt pour Xyleme Modèle ActiveXML intéressant pour Xyleme Données dynamiques compatibles avec le stockage XML Intégration transparente de données et services web Ouverture vers de nouveaux types d'applications, architectures distribuées, services web Dan VODISLAV --- Intégration ActiveXML - Xyleme

Architecture ActiveXML Pair ActiveXML Stockage de documents ActiveXML: mémoire (DOM) + fichiers Mise-à-jour dynamique des documents: appels de services Interrogation: langage XOQL Wrapper SOAP XOQL processor AXML engine query WSDL service descriptions read update consults SOAP wrapper AXML peer service SOAP client service call service result AXML store AXML XML Moteur AXML interrogation XOQL mise-à-jour DOM Mémoire Fichiers XML Dan VODISLAV --- Intégration ActiveXML - Xyleme

Intégration de stockage Remplacer le système de fichiers par XyStore Avantage: les documents ActiveXML sont interrogeables par des applications Xyleme (exemple: Miel++) XOQL processor AXML engine query WSDL service descriptions read update consults SOAP wrapper AXML peer service SOAP client service call service result XyStore AXML XML Wrapper SOAP Moteur AXML interrogation XOQL mise-à-jour DOM Mémoire XyStore Dan VODISLAV --- Intégration ActiveXML - Xyleme

Stockage et interrogation Utilisation du moteur d'interrogation XyQL de Xyleme Avantages: Pas besoin de charger les documents en mémoire pour les interroger Utilisation de l'index et de la puissance d'interrogation Xyleme Problème: les mises-à-jour ont besoin de la mémoire  cache Problèmes de synchronisation cache - XyStore Wrapper SOAP XyQL processor AXML engine query WSDL service descriptions read update consults SOAP wrapper AXML peer XyStore/XyIndex AXML cache Xyleme Moteur AXML mise-à-jour interrogation Cache DOM XyQL XyStore Dan VODISLAV --- Intégration ActiveXML - Xyleme

Stockage, interrogation et mise-à-jour Mises-à-jour directement dans Xyleme Module XyUpdate (janvier 2005) Pas besoin de maintenir un cache, de le synchroniser avec XyStore Séparation architecturale "propre" ActiveXML – base de données Difficultés pratiques: Optimisation de l'accès disque pour les mises-à-jour Modification du modèle de document XS QL processor AXML engine query WSDL service descriptions read update consults SOAP wrapper AXML peer XyStore/XyIndex XyUpdate Xyleme Wrapper SOAP Moteur AXML mise-à-jour interrogation XyUpdate XyQL XyStore Dan VODISLAV --- Intégration ActiveXML - Xyleme

Réalisation Intégration de stockage, interrogation et mise-à-jour Stage d'ingénieur CNAM d'Eric Darondeau (depuis sept. 2005) Étude approfondie du code Java ActiveXML Intégration au niveau des principales fonctionnalités ActiveXML Conception d'une solution plus générique Séparation des fonctionnalités ActiveXML "pur" de celles liées à la base de données Classes clé à spécialiser / remplacer: ActiveXMLDocument ActiveXMLServiceCall DocumentRepository Rendre possible le couplage avec d'autres bases de données Dan VODISLAV --- Intégration ActiveXML - Xyleme

Résultat Pair ActiveXML + Xyleme Fonctionnalités serveur Code utilisable pour lancer, au choix, un pair ActiveXML classique ou un pair ActiveXML+Xyleme Réalisation des fonctionnalités ActiveXML de base Fonctionnalités serveur Stockage et indexation de documents ActiveXML dans Xyleme Offre de services web réalisées par des requêtes XyQL paramétrées Fonctionnalités client Détection d'appels de service dans les documents ActiveXML du pair Planification et exécution d'appels de service avec paramètres Mise-à-jour des documents ActiveXML avec le résultat des appels Dan VODISLAV --- Intégration ActiveXML - Xyleme

Exemple: un service web Xyleme <?xml version=“1.0” encoding=“UTF-8”?> <serviceDefinition type=“XZSQuery”> <parameters> <param name=“citizenship”> </parameters> <definition> <XZSQuery> <![CDATA select element(“players” v_player/name) from ATPRace in atpStore, v_player in ATPRace//player where v_player/citizenship contains “$citizenship$”; ]]> </XZSQuery > </definition> </serviceDefinition> Dan VODISLAV --- Intégration ActiveXML - Xyleme

Difficultés rencontrées Complexité du code ActiveXML Langage XyQL Axes XPath "parent" et "frère" non supportées Découverte, enregistrement, mise-à-jour services web  moins efficaces Langage XyUpdate Insertion/suppression au niveau des "frères" non supportée Opération de base à l'exécution de services web Optimisation des performances Chaque mise-à-jour se fait par une requête XyUpdate séparée Dan VODISLAV --- Intégration ActiveXML - Xyleme

Enseignements et perspectives Intégration qui profite aux deux systèmes Puissance et passage à l'échelle pour ActiveXML avec Xyleme Ouverture vers des applications distribuées pour Xyleme avec ActiveXML Améliorations suggérées pour Xyleme: langage de requêtes, fonctionnalités XyUpdate, cache DOM, etc. Perspectives Extension de l'intégration à d'autres fonctionnalités ActiveXML, amélioration de la généricité Intégration de fonctionnalités ActiveXML dans Xyleme Validation par des applications ActiveXML – Xyleme à grand volume de données, à large distribution, etc. Dan VODISLAV --- Intégration ActiveXML - Xyleme

Exemple: mise-à-jour Un appel de service insère son résultat dans le document Traitement générique de la mise-à-jour, en utilisant l'API XyUpdate static private String insertSc = "SELECT TAG2URL(parentSc) " + "FROM xyDoc IN AtpStore, parentSc IN xyDoc//NAMEPARENTSC " + "WHERE parentSc/axml:sc/id CONTAINS \"IDSC\";"; String queryInsertSc = replaceWithConcreteService(insertSc, serviceName, serviceId); UpdateIterator itGroup = queryMgr.openUpdateQuery(new QueryInfo(queryInsertSc)); while (itGroup.hasNext()) { UpdatePlan plan = new UpdatePlan(); Iterator itResult = (Iterator)itGroup.next(); while (itResult.hasNext()) { String parentSc = (String)itResult.next(); plan.add(UpdateKind.INSERTCHILD, 0, tuple, parentSc); } docMgr.updateDocument(plan, null); Dan VODISLAV --- Intégration ActiveXML - Xyleme