l'approximation de jointure de documents xml

32
L'approximation de jointure de documents XML Jean-Francois Lapalme Hugo Plante Leila Saddi INF7115 – 26 avril 2004

Upload: daphne

Post on 21-Jan-2016

25 views

Category:

Documents


0 download

DESCRIPTION

L'approximation de jointure de documents XML. Jean-Francois Lapalme Hugo Plante Leila Saddi INF7115 – 26 avril 2004. Introduction. XML est le standard de donnée interchangeable du futur. Corrélation des sources de données XML engendre une complexité - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: L'approximation de jointure de documents XML

L'approximation de jointure de documents

XML

Jean-Francois Lapalme

Hugo Plante

Leila Saddi

INF7115 – 26 avril 2004

Page 2: L'approximation de jointure de documents XML

Introduction

XML est le standard de donnée interchangeable du futur.

Corrélation des sources de données XML engendre une complexité

Les méthodes de jointure traditionnelles ne s’appliquent pas facilement au problème de jointure flexible XML.

Une jointure approximative permet la corrélation entre des éléments semblables mais pas identiques.

Page 3: L'approximation de jointure de documents XML

Introduction

Figure 1 : Les données visées peuvent provenir de sources différentes, les requêtes des utilisateurs ne doivent pas en subir les conséquences

Ref: [7]

Page 4: L'approximation de jointure de documents XML

Problématique 1/3Communication Communication

VLDC

Conférence

Auteur

Alice

Titre

XML pour tous

Auteurs

Robert

Publication

Auteur

Conférence AuteursTitre

VLDC XML pour tous

Auteur

Alice

(a) (b)

(c)

Type

Conférence

VLDC

Titre

XML pour tous

AuteursAuteurs

Nom

Alice Vobert

Nom

Figure 1 : Exemple de documents XML

Page 5: L'approximation de jointure de documents XML

Problématique 2/3

Trouver une métrique qui effectue un calcul efficace et suffisamment générique pour pouvoir interpréter les divers types de différences entre les documents XML.

Page 6: L'approximation de jointure de documents XML

Problématique 3/3

Quelques définitions importantes.

Présentation des étapes pour résoudre le problème: La technique de base. Le concept de bornes inférieures et supérieures. La notion d’ensemble de référence. Les nouvelles techniques de jointure approximative entre

sources de données XML. L’évaluation expérimentale pour mesurer et comparer la

performance des différentes techniques.

Page 7: L'approximation de jointure de documents XML

Distance d’édition

La distance d’édition, entre deux chaînes de caractères, δ1 et δ2: ed(δ1, δ2) est le nombre minimal d’opérations d’édition requises sur chacun des caractères d’une chaîne pour la transformer en une autre.

Exemple : ABC ADCE modifier de B en D ajouter E

Page 8: L'approximation de jointure de documents XML

Distance d’édition d’arbre

La version générique de la distance d’édition de chaînes de caractères.

La distance d’édition d’arbre, T1 et T2 :

TDist(T1 ,T2) est le coût minimal d’opérations

d’édition requises sur chacun des nœuds d’un arbre pour transformer l’arbre en une autre.

Page 9: L'approximation de jointure de documents XML

Distance d’édition d’arbre

La valeur du treedist() est de 3 suppression de B insertion de H modification de C en I

Page 10: L'approximation de jointure de documents XML

Présentation de l’approche

Le besoin est de trouver une technique qui effectue la jointure approximative de sources XML en utilisant la distance d’édition d’arbres en tant que prédicat de jointure.

Une distance seuil est utilisé pour évaluer la jointure.

Page 11: L'approximation de jointure de documents XML

Technique de Base

For each d1 Є S1For each d2 Є S2 O( |S1||S2| )

if(TDist(d1,d2) ≤ τ) O( n4 )jointure(d1,d2)

Soit deux ensembles XML S1, S2, il est nécessaire d’évaluer la distance d’édition entre chaque paire de document.

Coût: O( |S1||S2| ) ; chaque fois l’évaluation de treedist est nécessaire -> O( n4 ) où O(n) est la taille des documents

Page 12: L'approximation de jointure de documents XML

Borner la distance édition d’arbre

Temps d’exécution beaucoup trop grand pour des arbres très développés.

Chercher à réduire le coût de l’évaluation de la distance d’édition.

Utiliser des algorithmes moins coûteux pour estimer la distance treedist.

Trouver les valeurs qui borne les différences entre les paires de document XML.

Page 13: L'approximation de jointure de documents XML

Borne inférieure

La méthode utilise la différence entre la traversée pré-fixe et/ou post-fixe des deux arbres à comparer.

Les traversées pré-fixe et post-fixe sont représentées par des chaînes de caractères.

Page 14: L'approximation de jointure de documents XML

Borne inférieure (suite)

S’il existe une différence entre la traversée pré-fixe ou post-fixe des deux arbres, alors il y a des différences entre ces mêmes arbres.

Si deux arbres sont à une distance d’édition k, alors la distance maximale entre leurs traversées pré-fixe et/ou post-fixe est au plus k.

max(ed(pre(T1),pre(T2) ), ed(post(T1),post(T2) ) ) < TDist(T1, T2)

Coût: O(n2)

Page 15: L'approximation de jointure de documents XML

Borne inférieure (exemple)

pre(a) = ABDECFG et post(a) = DEBFGCApre(b) = ADHEIFG et post(b) = DEFGIHA

pré-fixe = (enlever B, ajouter H, remplacer C par I ) = 3post-fixe = (enlever B, remplacer C par I, ajouter H ) = 3

LBDist = max(ed(pre(a),pre(b) ), ed(post(a),post(b) ) )

= max(3, 3)

= 3 < TDist(a, b)

Page 16: L'approximation de jointure de documents XML

Borne supérieure

Restreindre le choix du mapping dans l’algorithme treedist()

Deux sous-arbres de T1 sont associés à deux sous-arbres de T2

DistinctTreeEditDistance calcule la borne supérieure entre deux arbres en temps O(n2)

Page 17: L'approximation de jointure de documents XML

Borne supérieure (suite)

• Pour chaque paire d’arbre T1, T2,TDist(T1, T2) < UBDist(T1, T2)

Exemple:

DistinctTreeEditDistance = 5

(enlever B, enlever E, ajouter H, ajouter E, remplacer C par I )

Page 18: L'approximation de jointure de documents XML

Améliorer l’algorithme de Base avec les bornes

Avant de calculer le TDist, on évalue les bornes, moins coûteuses.

Permet de réduire le nombre d’appel a TDist.

Algorithme Borne Pour chaque di S1

Pour chaque dj S2

Si (UBDist(di,dj)< ) Joindre(di,dj) Si (LBDist(di,dj)< ) Si (TDist(di,dj)< ) Joindre(di,dj)

Page 19: L'approximation de jointure de documents XML

Définition d’une métrique en utilisant un ensemble de référence

Choisir un ensemble représentatif des documents XML.

Utiliser un algorithme de regroupement (cluster).

Utiliser la triangulation pour réduire le nombre d’appels à TDist.

Page 20: L'approximation de jointure de documents XML

Ensemble de référence

Soit K un ensemble de référence, prenons vi le vecteur de distance pour di

viL= TDist(di ,KL) 1 L |K|,

| viL - vjL | TDist(di, di) viL + vjL

BorneSup, Ut = minL,1 L |k| viL + vjL

BorneInf, Lt = maxL,1 L |k| |viL - vjL|

Page 21: L'approximation de jointure de documents XML

Améliorer l’algorithme de Base avec l’ensemble de référence.

Complexité réduite à O( |S’| |K| ) La taille de K varie selon la répartition de S

Algorithme EnsReference Pour chaque vi S1

Pour chaque vj S2

Si (BorneSup < ) Joindre(di,dj) Si (BorneInf(di,dj)< ) Si (TDist(di,dj)< ) Joindre(di,dj)

Page 22: L'approximation de jointure de documents XML

Utiliser les bornes et l’ensemble de référence

Compléter l’algorithme EnsReference par l’application des bornes de TDist.

Utiliser les bornes lors de la création du vecteur V.

Page 23: L'approximation de jointure de documents XML

Test et évaluation de la performance

Ensemble A : Un ensemble de données qui contient 500 documents générés de façon aléatoire.

Ensemble B : Un ensemble de 500 documents construit artificiellement pour contenir 8 groupements de documents.

Ensemble de données réelles : Des données réelles d’une grandeur de 55MB. (DBLP)

Page 24: L'approximation de jointure de documents XML

Test et évaluation de la performance

Algorithmes Base Borne (B) Ensemble de référence (ER) Ensemble de référence + Borne (ERB) Combiné (C)

Page 25: L'approximation de jointure de documents XML

L’évaluation des bornes

(a) Étroitesse de la borne LBDist (b) Étroitesse de la borne UBDist

Figure 7 : Évaluation de l’étroitesse des bornes supérieure et inférieure

Ref: [1]

Page 26: L'approximation de jointure de documents XML

Test de performance des bornes

Taille des documents XML (nombre de nœuds)

Figure 8 : Temps de calcul de treedist() et ses bornes pour des tailles de document variables

Se

con

de

s (lo

g)

Ref: [1]

Page 27: L'approximation de jointure de documents XML

Évaluation de la taille de l’ensemble de référence

Ra

tio à

Ba

se

Taille de l’ensemble de référence

Ref: [1]

Page 28: L'approximation de jointure de documents XML

Test de la distance seuil R

atio

à B

ase

Distance seuil Ref: [1]

Page 29: L'approximation de jointure de documents XML

Test de performance

Distance seuil

Se

con

de

s

Ref: [1]

Page 30: L'approximation de jointure de documents XML

Conclusion - apports

Les principes des bornes inférieures et supérieures de la distance d’édition entre des arbres étiquetés, qui sont plus performants à calculer, est un apport important au niveau de la performance des jointures.

La technique de la distance d’édition entre arbres a été utilisée comme métrique vu son universalité et c’est une technique qui a fait ses preuves.

Page 31: L'approximation de jointure de documents XML

Conclusion – l’avenir

La généricité de la technique a des lacunes qui peuvent être réglées en incorporant d’autres métriques.

La technique pourrait être améliorée en utilisant des index sur les données XML.

Page 32: L'approximation de jointure de documents XML

Bibliographie [1] Sudipto Guha ,H. V. Jagadish, Nick Koudas, Divesh Srivastava, Ting Yu :

Approximate XML joins International Conference on Management of Data and Symposium on Principles of Database System

[2] L. Gravano, P. Ipeirotis, H. Jagadish, N. Koudas, S. Muthukrishnan, and D. Srivastava.Approximate strings joins in a database (almost) for free. Proceedings of VLDB, 2001

[3] K. Zhang and D. Shasha.

“Approximate Tree Pattern Matching” in Pattern Matching in Strings, Trees, and Arrays, pp.341 -

371 Apostolico and Galil Editors, Oxford Univesity Press, 1997. [4] S. Guha, N. Koudas, D. Srivastava, and T. Yu.

Index-Based Approximate XML Joins. ATT Labs Research Technical Report.

[5] Minos Garofalakis, Amit KumarCorrelating XML Data Streams Using Tree EditDistance Embeddings, Proceedings of the twenty-second ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems

[6] Jaroslav PokornýApproximate treatment of XML collections, Proceedings of BIS 2003.

[7] Elisabeth Métais, Florence SèdesAppariement d’informations dans les entrepôts de données : quelques approches pour le filtrage flexible, Information-Interaction-Intelligence, Volume 2, n°2.