Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parTristand Guillon Modifié depuis plus de 11 années
1
Serge Abiteboul, Grégory Cobena, Benjamin Nguyen, Antonella Poggi
Construction and Maintenance of a SPIN (Set of Pages of Interest) using Active XML Serge Abiteboul, Grégory Cobena, Benjamin Nguyen, Antonella Poggi INRIA-FUTURS, Projet Gemo B. Nguyen BDA 2002
2
Qui? Travaux au sein de l’ex-projet Verso (Gemo)
Serge Abiteboul Grégory Cobena Antonella Poggi Benjamin Nguyen Collaboration au projet RNTL e.dot avec le labo BIA de l’INRA sur le risque alimentaire B. Nguyen BDA 2002
3
Quoi? Développer une approche:
Flexible, générique, déclarative de spécification d’un entrepôt de données du Web Simplifier l’acquisition de ces données du Web + Utilisation de services Proposer une plate-forme de développement d’entrepôts de données. B. Nguyen BDA 2002
4
Comment? B. Nguyen BDA 2002
5
Plan de la Présentation
1- Une nouvelle problématique… 2- SPIN Idées de base Architecture Exemple 3- Objectifs futurs B. Nguyen BDA 2002
6
1- Une nouvelle problématique…
B. Nguyen BDA 2002
7
Problématique générale des entrepôts de données 1/
“The topic of data warehousing encompasses architectures, algorithms and tools for bringing together selected data from multiple databases or other information sources into a single repository, called a Data Warehouse.” J.Widom, Research Problems in Data Warehousing, CIKM 1995 B. Nguyen BDA 2002
8
Problématique générale des entrepôts de données 2/
Info source Data Warehouse Wrapper INTEGRATOR B. Nguyen BDA 2002
9
Sujets de Recherche Wrappers/Monitors Integrator
Warehouse specification (WHIPS-SIGMOD 1997) Diverses optimisations B. Nguyen BDA 2002
10
SPIN: Les différences Un travail autour du document plutôt que dans le document Intégration Plus grand nombre de sources (chaque document web/Service) Moins de structure dans chacune des pages Des thèmes très variés Ergonomie et simplicité Une architecture simple et modulaire Une approche pour utilisateur ‘novice’ B. Nguyen BDA 2002
11
Brefs rappels XML (W3C) WSDL (W3C) ActiveXML
Format XML pour décrire des services Orienté document ou procédural Utilisé avec d’autres protocoles (SOAP) ActiveXML B. Nguyen BDA 2002
12
ActiveXML Travaux en cours: AXML = XML + Appels de services
S.Abiteboul, T.Milo, O.Benjelloun, I.Manolescu, A.Bonifati, L.Segoufin…+ équipe SPIN! AXML = XML + Appels de services Langage déclaratif Peer-to-peer Mise en oeuvre très simple de services web B. Nguyen BDA 2002
13
2- SPIN B. Nguyen BDA 2002
14
Le projet Une volonté de généricite et de simplicité dans la construction d’un entrepôt Un langage déclaratif permettant de spécifier un SPIN Implémentation des services (modules) constituant la base du système Approche modulaire Implémentation en Java, XML, XSLT (B. Zhu) Spécification ‘haut niveau’ en Active XML (langage ‘data-centric’, calcul distribue) B. Nguyen BDA 2002
15
Entrepôt=Intention+Extension
Définition déclarative a base de services existants (SOAP, WSDL, UDDI… AXML) Écriture de services propres Extension Pages webs stockées dans un répositoire XML Enrichissement continu de l’extension Interrogation via requêtes XOQL (V. Aguillera) B. Nguyen BDA 2002
16
Architecture Internet Web Service Application AXML Client
AXML processor Web Services Crawler XOQL Service XyDiff Xyleme Services SPIN Services Google XOQL Engine Xml repository B. Nguyen BDA 2002
17
Exemple : Sèvres Un utilisateur veut créer un entrepôt de données sur la ville de Sèvres… Comment faire cela en quelques lignes? B. Nguyen BDA 2002
18
Fil conducteur Description de l’entête de l’entrepôt
Description de l’intention Manière très générale Réutilise comme paramètre Description des services Services génériques Services particuliers a l’entrepôt B. Nguyen BDA 2002
19
Modèle de données: Entête
<spin:warehouse name="Sèvres"> <spin:head> <spin:owner id="Serge" /> <spin:title>Sèvres Warehouse</spin:title> <spin:accessControlList> <spin:access group="friends" mode="call"/> <spin:access group="all" mode="read"/> </spin:accessControlList> </spin:head> <spin:spin name="sevres"> <spin:intension> ... </spin:intension> <spin:extension> ... </spin:extension> <spin:services> ... </spin:services> </spin:spin> <spin:spin name="sevres-sculpture"> ... </spin:spin> </spin:warehouse> B. Nguyen BDA 2002
20
Modele de données: Intention (‘pur’ XML)
<spin:spin name="sevres"> <spin:intension> <spin:bound>3000</spin:bound> <keywords> <keyword>Sèvres</keyword> <keyword>92310</keyword> </keywords> <interestingSites> <site> <site> </interestingSites> </spin:intension> ... </spin:spin> B. Nguyen BDA 2002
21
…les services utilisent les données de l’intention
<spin:services> % Keyword Query let askGoogle($name) be { for each $X in <axml:sc name=" <axml:params> <axml:param name="keyword" xpath="//spin:spin[name=$name]/keywords" /> </axml:params> </axml:sc> do insert (//spin:spin[name=$name]/spin:extension/<spin:url id=$X>) } B. Nguyen BDA 2002
22
Services (suite) % Interesting sites
let crawlInterestingSites($name) be{ for each $X in <axml:sc name=" <axml:params> <axml:param name="url" xpath="//spin:spin[name=$name]/spin:intension/interestingSites/site/" /> <axml:param name="depth">5</axml:param> <axml:param name="bound" xpath="//spin:spin[name=$name]/spin:intension/spin:bound/" /> </axml:params> </axml:sc> do insert (//spin[name=$name]/spin:extension/<spin:url id=$X opinion="yes">) } </spin:services> </spin:warehouse> B. Nguyen BDA 2002
23
Services supplémentaires
Classification Annotations de l’utilisateur Évolution temporelle Requêtes (préecrites) sur le document résultat avec XOQL B. Nguyen BDA 2002
24
Un service avancé: La gestion des M-A-J de manière transparente
let aggregate($name, $D1, $D2) be { insert //spin:spin[name=$name]/spin:extension[date=$D1]/ <delta from=$D1 to=$D2> ... %the delta </delta> </spin:extension> //spin:spin[name=$name]/spin:extension[date=$D2]/ <axml:sc name="applyDelta"> <axml:params> <axml:param name="from" xpath="../spin:extension[date=$D1]" /> <axml:param name="delta-loc" xpath="../delta[from=$D1 && tp=$D2]" /> </axml:params> <validity>CLONE VALUE</validity> <refreshPolicy>ON DEMAND</refreshPolicy> </axml:sc> delete //spin:spin[name=$name]/spin:extension[date=$D2]/spin:url} B. Nguyen BDA 2002
25
Extension (résultat) <spin:extension date="31 jul 2001">
<spin:url id=" % En utilisant d’autres services <content>...</content> <link> <link> <type>HTML</type> <last_update>28 jul 2001</last_update> <classification>Resume</classification> <site> </spin:url> ... </spin:extension> B. Nguyen BDA 2002
26
Implémentation Bibliothèque de services web ‘génériques’ pour l’aide a la création d’entrepôts Crawler Classification (THESUS) Diff (evolution temporelle de l’entrepôt) Moteur de requêtes Présentation (XSLT) AXML (O. Benjelloun) B. Nguyen BDA 2002
27
3- Objectifs futurs B. Nguyen BDA 2002
28
Quelques pistes… Méthodologique: Approche ‘a la UML’
Définition de concepts simples Présentation graphique compréhensible/ ergonomique Solution d’implémentation directe Quel modèle/langage conceptuel? Amélioration des services Plus évolues Plus interdépendants Gestion du travail coopératif Gestion des utilisateurs Problèmes de sécurité B. Nguyen BDA 2002
29
Questions? B. Nguyen BDA 2002
Présentations similaires
© 2025 SlidePlayer.fr Inc.
All rights reserved.