1 / 28

Omar Boussaid – Riadh Ben Messaoud – Rémy Choquet – Stéphane Anthoard

Conception et construction d’entrepôts en XML. Omar Boussaid – Riadh Ben Messaoud – Rémy Choquet – Stéphane Anthoard Laboratoire ERIC, Université Lyon 2 Campus Porte des Alpes, 69676 Bron Cedex Omar.Boussaid@univ-lyon2.fr - rbenmessaoud@ericuniv-lyon2.fr

janus
Download Presentation

Omar Boussaid – Riadh Ben Messaoud – Rémy Choquet – Stéphane Anthoard

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Conception et construction d’entrepôts en XML Omar Boussaid – Riadh Ben Messaoud – Rémy Choquet – Stéphane Anthoard Laboratoire ERIC, Université Lyon 2 Campus Porte des Alpes, 69676 Bron Cedex Omar.Boussaid@univ-lyon2.fr - rbenmessaoud@ericuniv-lyon2.fr {remy.choque|stephanea}@gmail.com http://eric.univ-lyon2.fr/ EDA - Versailles, juin 2006

  2. Motivation Données complexes : formats différents, supports différents. Exemple : dossier d’un patient (informations générales sur le patient : age, sexe, etc, + images de scanner, des interrogatoires sous forme d’enregistrements sonores + compte-rendus manuscrits de médecins) Il est alors nécessaire de les structurer et de les homogénéiser.  XML représente les données de façon semi-structurée. Sa capacité d’auto-description et sa structure arborescente donne à ce formalisme une grande flexibilité et une puissance suffisante pour décrire des données complexes, hétérogènes et réparties EDA, Versailles 19 juin 2006

  3. Motivation EDA, Versailles 19 juin 2006

  4. Plan Motivation Etat de l’art Notre approche X-Warehousing Formalisation Construction d’un cube XML Implémentation Etude de cas Conclusion et prespectives EDA, Versailles 19 juin 2006

  5. Etat de l’art Baril et Bellahsène (2000) : Dawax, Modèle de vues (View Manager) Pokorny (2001) : XML Stars schema Golfarelli et al. (2001) : Modèle Dimensionnel de Faits ; arbres d’attributs Hümmer et al. (2003) : Xcube Rajugan et al. (2003) : utilisation des packages UML Trujillo et al. (2004) : l’approche orientée objet(OO) Nassis et al. (2004) :approche OO , repository xFacts et Dimensions virtuelles Rusu et al. (2005) : Entrepôts XML Park et al. (2005) : XML-OLAP EDA, Versailles 19 juin 2006

  6. Etat de l’art • Deux approches différentes : • 1°) Stockage physique des documents XML dans des ED. • Les documents XML alimentent alors les ED et XML est considéré comme une technologie efficace supportant des données faiblement structurées et adaptée à l’interopérabilité et à l’échange des données. • 2°) Utilisation du formalisme XML pour concevoir des ED. •  Selon les modèles multidimensionnels classiques tels que les schémas en étoile ou en flocons de neige. EDA, Versailles 19 juin 2006

  7. L’approche X-Warehousing Contexte général de notre approche pierre.jouve@eric.univ-lyon2.fr EDA, Versailles 19 juin 2006

  8. Formalisation Définition : Schéma en étoile XML Soit(F,D)un schéma en étoile, où : F est un ensemble de faits ayant m mesure {F.Mq, 1 ≤ q ≤ m}et D = {Ds, 1 ≤ s ≤ r}un ensemble de r dimension où chaqueDscontient un ensemble densattributs {Ds.Ai, 1 ≤ i ≤ ns}. Le Schéma en étoileXML de(F,D)est un schéma XML tel que : – Fdéfinit l’élément racine dans le schéma XML ; –  q {1, . . . ,m}, F.Mqdéfinit un attribut XML inclus dans l’élément racine ; – s {1, . . . , r}, Dsest un sous éléments XML de l’élément racine XML. Il y a autant de sous éléments XML que de dimensions liées à l’ensemble des faitsF ; • – s  {1, . . . , r} et i {1, . . . , ns}, Ds.Ai définit un attribut XML inclus dans l’élément XML Ds. EDA, Versailles 19 juin 2006

  9. Description d’un cube par un schéma XML <xs:element name="F"> <xs:complexType> <xs:sequence> <xs:element name="D1" type="D1_Type" /> <xs:element name="D2" type="D2_Type" /> <xs:element name="D3" type="D3_Type" /> <xs:element name="D3" type="D3_Type" /> <xs:element name="D4" type="D4_Type" /> </xs:sequence> <xs:attribute name="F.M1" type="xs:integer" /> <xs:attribute name="F.M2" type="xs:integer" /> </xs:complexType> </xs:element> <xs:complexType name="D1_Type"> <xs:attribute name="D1.A1" type="xs:string" /> </xs:complexType> <xs:complexType name="D2_Type"> <xs:attribute name="D2.A1" type="xs:string" /> <xs:attribute name="D2.A2" type="xs:string" /> </xs:complexType> <xs:complexType name="D3_Type"> <xs:attribute name="D3.A1" type="xs:string" /> <xs:attribute name="D3.A2" type="xs:string" /> </xs:complexType> <xs:complexType name="D4_Type"> <xs:attribute name="D4.A1" type="xs:string" /> </xs:complexType> EDA, Versailles 19 juin 2006

  10. Formalisation Définition Dimension Hiérarchisée XML : Soit H = {D1, . . . ,Dt, . . . ,Dl }une dimension hiérarchisée. La dimension hiérarchiséeXML est une partie d’un schéma XML tel que : – D1définit un élément XML ; –   t  {2, . . . , l },Dt définit un sous élément XML de l’élément XMLDt−1 ; –  t {1, . . . , l },chaque attribut dans Dt définit un attribut XML inclus dans l’élément XMLDt. Définition Modèle en flocons de neige XML : Soit (F,H), un modèle en flocons de neige où F est un ensemble de faits ayantmmesures {F.Mq, ≤ q ≤ m} et H = {Hs, ≤ s ≤ r}est un ensemble derhiérarchies indépendantes. Le modèle en flocons de neige XML de (F,H) est un schéma XML tel que : – Fdéfinit l’élément XML racine du schéma XML ; – q  {1, . . . ,m}, F.Mqdéfinit un attribut XML inclus dans l’élément racine XML ; – s  {1, . . . , r},Hsdéfinit autant de fois des dimensions hiérarchisées XML, comme des sous éléments de l’élément XML racine qu’elle est liée à l’ensemble de faitsF. EDA, Versailles 19 juin 2006

  11. Exemple d’un fait XML <?xml version="1.0" encoding="UTF-8" ?> <Suspicious_region Region_length="287" Number_of_regions="6"> <Patient Patient_age="60" > <Age_class Age_class_name="Between 60 and 69 years old" /> </Patient> <Lesion_type Lesion_type_name="calcification type round_and_regular distribution n/a"> <Lesion_category Lesion_category_name="calcification type round_and_regular" /> </Lesion_type> <Assessment Assessment_code="2" /> <Subtlety Subtlety_code="4" /> <Pathology Pathology_name="benign_without_callback" /> <Date_of_study Date="1998-06-04"> <Day Day_name="June 4, 1998"> <Month Month_name="June, 1998"> <Year Year_name="1998" /> </Month> </Day> </Date_of_study> <Date_of_digitization Date="1998-07-20"> <Day Day_name="July 20, 1998"> <Month Month_name="July, 1998"> <Year Year_name="1998" /> </Month> </Day> </Date_of_digitization> <Digitizer Digitizer_name="lumisys laser" /> <Scanner_image Scanner_file_name="B_3162_1.RIGHT_CC.LJPEG" /> </Suspicious_region> EDA, Versailles 19 juin 2006

  12. Construction des cubes XML  MCM : besoins d’analyses  Documents XML Algorithmes d’appriement basés sur des opérations de fusion par élagage et de fusion par greffe Notion d’arbre d’attributs(Golfarelli et al. 1998, Golfarelli er Rizzi 1999, Golfarelli et al. 2001 EDA, Versailles 19 juin 2006

  13. Construction des cubes XML Fusion des arbres d’attributs : MCM : besoins d’analyses  arbre d’attributs Documents XML  arbre d’attributs  Schéma XML d’un cube XML • Opérations de fusion des arbres d’attributs • Notion de contenu minimal EDA, Versailles 19 juin 2006

  14. Fusion par élagage (pruning) : • supprimer des parties des 2 arbres. • : sommets communs conservés dans l’arbre fusionné. • : sont élagués avec les sous-arbres associés cercles noirs cercles blancs Fusion par greffe (grafting) : sous-arbres communs n’ayant pas la même structure de relations. - : certains sommets non communs sont éliminés et • : sommets identiques et leurs relations sont maintenus dans l’arbre fusionné. Les descendants d’un sommet éliminé sont conservés dans l’arbre fusionné. cercles blancs cercles noirs Construction des cubes XML • Fusion des arbres d’attributs EDA, Versailles 19 juin 2006

  15. Construction des cubes XML • Contenu minimal d’un document XML Le document XML doit contenir suffisamment d ’information pour répondre aux besoins d’analyse de l’utilisateur : contrôle sur l’arbre d’attributs. L’’utilisateur définit les éléments (mesures, dimension, hiérarchis et leurs attributs) dans le MCM nécessairesou pas (obligatoires ou optionnels) pourses objectifs d’analyse. Le contenu minimal d’un document XML corresponds donc à la partie obligatoire de l’arbre d’attributs associé au MCM. EDA, Versailles 19 juin 2006

  16. Implémentation EDA, Versailles 19 juin 2006

  17. Implémentation Function WriteTreeDeep(document,tree) root=GetRootElement(document) nodeList=GetNodes(tree,root) While Not(end(nodeList)) Graphe.AddVertex(nodeList.name) Call Function ReadTreeDeep(nodeList.name,tree) End While End Function Function ReadTreeDeep(root,tree) nodeList=GetNodes(tree,root) While Not(end(nodeList)) Graphe.AddVertex(nodeList.name) Call Function ReadTreeDeep(nodeList.name,tree) End While End Function - Fonctions recursives WriteTreeDeepet ReadTreeDeeppour manipuler les arbres d’attributs EDA, Versailles 19 juin 2006

  18. Implémentation Function MergeTree(tree1,tree2) tree3=DuplicateTree(tree1) While Not(end(nodeList(tree3))) vertex1=GetVertex(tree3) While Not(end(nodeList(tree2))) vertex2=GetVertex(tree2) If vertex2=vertex1 Then vertex1.arc = 0 End While End While Tree3=WriteTree(tree3) End Function - Fonction MergeTreepour fusionner deux arbres d’attributs EDA, Versailles 19 juin 2006

  19. Etude de cas : Contexte DDSM(Digital Database for Screening Mammography) : une BD complexes(2 604dossiers de patients ; Un volume total de230,9 Go) • Un dossier est composé de : • 1 fichier .ics décrivant en format ASCII, les informations générales d’un dossier de patient. • 4 fichiers images .LJPEG (LOSSLESS JPEG) des radios numérisées. Chaque radio présente uneangle de vuedu sein :Left_CC, Left_MLO, Right_CC, Right_MLO(CC: Cranio-Caudal ; MLO: Medio-Latral Oblique). • Pour chaque radio présentant une ou des zones anormales, est associé un fichier .OVERLAY en format ASCII, décrivant une anomalie du sein. • 1 fichier image .16_PGM regroupant les 4 radios et présentant un aperçu rapide pour la visualisation d’un dossier de patient. EDA, Versailles 19 juin 2006

  20. Etude de cas : Contexte EDA, Versailles 19 juin 2006

  21. Etude de cas : Corpus XML Documents XML (http ://eric.univ-lyon2.fr/rbenmessaoud/ ?page=donnees&section=3) EDA, Versailles 19 juin 2006

  22. Etude de cas : Modèle Conceptuel des besoins Cas des ”Régions suspectées” EDA, Versailles 19 juin 2006

  23. Étude de cas : arbres d’attributs - Arbre d’attributs associé au MCM des ”Régions suspectes”. - Arbre d’attributs des documents XML en entrée EDA, Versailles 19 juin 2006

  24. Etude de cas : Modèle logique du cube XML .Schéma XML du cube “Régions susupectes” : <?xml version=”1.0” encoding=”UTF-8” ?> <xs:schema xmlns=”http://www.w3schools.com”> <xs:element name=”Suspicious region”> <xs:complexType> <xs:sequence> <xs:element name=”Patient” type=”Patient Type” /> <xs:element name=”LesionType” type=”Lesion Type” /> <xs:element name=”Subtlety” type=”Subtlety Type” /> <xs:element name=”Pathology” type=”Pathology Type” /> <xs:element name=”Dateofstudy” type=”Date Type” /> <xs:element name=”Dateof digitization” type=”Date Type” /> <xs:element name=”Digitizer” type=”Digitizer Type” /> <xs:element name=”Scanner image” type=”Scanner Type” /> </xs:sequence> <xs:attribute name=”Region length” type=”xs:integer” /> <xs:attribute name=”Number of regions” type=”xs:integer” /> </xs:complexType> </xs:element> <xs:complexType name=”Patient Type”> <xs:sequence> <xs:element name=”Age class”> <xs:complexType> <xs:attribute name=”Age class name” type=”xs:string”/> </xs:complexType> </xs:element> </xs:sequence> EDA, Versailles 19 juin 2006

  25. Etude de cas : Modèle logique du cube XML ….. <xs:complexType name=”Lesion Type Type”> <xs:sequence> <xs:element name=”Lesion category”> <xs:complexType> <xs:attribute name=”Lesion category name” type=”xs:string”/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=”Lesion type name” type=”xs:string”/> </xs:complexType> <xs:complexType name=”Subtlety Type”> <xs:attribute name=”Subtlety code” type=”xs:integer”/> </xs:complexType> <xs:complexType name=”Pathology Type”> <xs:attribute name=”Pathology name” type=”xs:string”/> </xs:complexType> <xs:complexType name=”Digitizer Type”> <xs:attribute name=”Digitizer name” type=”xs:string”/> </xs:complexType> <xs:complexType name=”Scanner Type”> <xs:attribute name=”Scanner file name” type=”xs:string”/> </xs:complexType> ….. EDA, Versailles 19 juin 2006

  26. Etude de cas : Modèle logique du cube XML .Schéma XML du cube “Régions susupectes” : <xs:complexType name=”Date Type”> <xs:sequence> <xs:element name=”Day”> <xs:complexType> <xs:sequence> <xs:element name=”Month”> <xs:complexType> <xs:sequence> <xs:element name=”Year”> <xs:complexType> <xs:attribute name=”Year name” type=”xs:integer”/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=”Month name” type=”xs:string”/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=”Day name” type=”xs:string”/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=”Date” type=”xs:date”/> </xs:complexType> </xs:schema> EDA, Versailles 19 juin 2006

  27. Conclusion et perspectives Conclusion :  méthodologie basée sur le formalisme XML pour entreposer des données complexes. • Exprimer un niveau d’abstraction intéressant pour préparer les données à l’analyse. • Alimenter une structure multidimensionnelle à l’aide de documents XML. • Une formalisation des schémas en étoile ou en flocons de neige en XML. ( utilisation des arbre d’attributs, Golfarelli et al., 2001a,b) • Une applicationJavaqui produit un modèle logique et un modèle physique pour un cube composé de documents XML homogènes • Une étudede cas sur les régions suspectes sur des mammographies a montré l’intérêt de notre approche sur des applications réelles EDA, Versailles 19 juin 2006

  28. Conclusion et perspectives Perspectives : Interrogation du cube XML : une extension du langage XQuery est nécessaire pour permettre de réaliser l’opération du Group-by. Mesures non numériques : recours à des opérateurs appropriés. L’exemple de l’opérateur OpAC ( Ben Messaoud et al., 2004), Une étude de performance des requêtes OLAP dans le cadre de cube XML Problème de mise à jour du cube XML lors des changements dans les données sources ou des besoins d’analyse de l’utilisateur Modèle physique du cube XML EDA, Versailles 19 juin 2006

More Related