l'approximation de jointure de documents xml
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 PresentationTRANSCRIPT
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é
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.
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]
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
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.
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.
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
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.
Distance d’édition d’arbre
La valeur du treedist() est de 3 suppression de B insertion de H modification de C en I
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.
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
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.
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.
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)
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)
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)
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 )
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)
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.
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|
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)
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.
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)
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)
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]
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]
É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]
Test de la distance seuil R
atio
à B
ase
Distance seuil Ref: [1]
Test de performance
Distance seuil
Se
con
de
s
Ref: [1]
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.
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.
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.