40
Intégration de données Cédric Gueydan - Décembre 2004 -

Intégration de données Cédric Gueydan - Décembre 2004 -

Embed Size (px)

Citation preview

Page 1: Intégration de données Cédric Gueydan - Décembre 2004 -

Intégration de données

Cédric Gueydan

- Décembre 2004 -

Page 2: Intégration de données Cédric Gueydan - Décembre 2004 -

p. 2Intégration de données

Plan

21/12/04

- Hétérogénéité

- Différentes approches

- Médiateurs

Page 3: Intégration de données Cédric Gueydan - Décembre 2004 -

Introduction

Besoin : interroger différentes sources de données simultanément et combiner les résultats obtenus afin de fournir une information non disponible directement

Problème : hétérogénéité des sources

Objectif : donner à l'utilisateur l'illusion qu'il interroge une seule et unique source

p. 3Intégration de données21/12/04

Page 4: Intégration de données Cédric Gueydan - Décembre 2004 -

Conflits sémantiques

Conflits intensionnels

Conflits de données

Conflits schématiques

Conflits de types de données

Conflits de labels

Conflits d’aggregations

Conflits de généralisations

Conflits de nommage

Conflits de graduation/d’échelle

Conflits confondants

Conflits de domaines

Conflits de contraintes d’intégrité

Hétérogénéité – conflits (Goh 1997)

p. 4Intégration de données21/12/04

Page 5: Intégration de données Cédric Gueydan - Décembre 2004 -

Conflits sémantiques

Conflits intensionnels

Conflits de données

Conflits schématiques

Conflits de types de données

Conflits de labels

Conflits d’aggregations

Conflits de généralisations

Conflits de nommage

Conflits de graduation/d’échelle

Conflits confondants

Conflits de domaines

Conflits de contraintes d’intégrité

Hétérogénéité – conflits (Goh 1997)

p. 5Intégration de données21/12/04

Page 6: Intégration de données Cédric Gueydan - Décembre 2004 -

Hétérogénéité sémantique

p. 6Intégration de données

Causes d’hétérogénéité sémantique:

- conflits de confusion: Items d’informations semblant de signification identiques mais différents en réalité

- conflits de graduation/échelle: utilisation de différents référentiels pour mesurer une valeur

- conflits de nommage: exemple : homonymes/synonymes

21/12/04

Page 7: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

- matérialisée (entrepôt de données ou data warehouse)

p. 7Intégration de données

- virtuelle (médiateur)

21/12/04

Page 8: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Approche matérialisée - 1

Idée : l'utilisateur interroge une base de données réelle (l’entrepôt) contenant une copie des données pertinentes des différentes sources considérées

p. 8Intégration de données21/12/04

Page 9: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Source 1

Entrepôt

Utilisateur

Intégrateur

Adaptateur

Source n

Adaptateur

Requête

. . . . . . .

p. 9Intégration de données

Approche matérialisée - 2

21/12/04

Page 10: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Source 1

Entrepôt

Utilisateur

Intégrateur

Adaptateur

Source n

Adaptateur

Requête

. . . . . . .

p. 10Intégration de données

Approche matérialisée - 2

21/12/04

Page 11: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Principales questions :- Peuplement- Mise à jour- Définition du schéma de l’entrepôt

p. 11Intégration de données

Approche matérialisée - 3

21/12/04

Page 12: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Idée : l'utilisateur interroge un médiateur chargé de traduire la requête pour interroger les différentes sources et de combiner les résultats obtenus

p. 12Intégration de données

Approche virtuelle - 1

21/12/04

Page 13: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Source 1

Utilisateur

Médiateur

Adaptateur

Requêtes

. . . . . . .

Requêtes

Requêtes

Source n

Adaptateur

Requêtes

p. 13Intégration de données

Approche virtuelle - 2

21/12/04

Page 14: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Requête formulée dans les termes du schéma global (du médiateur)

Source 1

Utilisateur

Médiateur

Adaptateur

Requêtes

. . . . . . .

Requêtes

Requêtes

Adaptateur

Requêtes

Source np. 14Intégration de données

Approche virtuelle - 2

21/12/04

Page 15: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Source 1

Utilisateur

Médiateur

Adaptateur

Requêtes

. . . . . . .

Requêtes

Requêtes

Adaptateur

Requêtes

Source np. 15Intégration de données

Approche virtuelle - 2

Schéma global

Schéma source n

Schéma source 1

Module de gestion des requêtes

. . .

Reformulation, optimisation, exécution des requêtes

21/12/04

Page 16: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Décomposition en sous-requêtes basées sur les vues abstraites des sources

Source 1

Utilisateur

Médiateur

Adaptateur

Requêtes

. . . . . . .

Requêtes

Requêtes

Adaptateur

Requêtes

Source np. 16Intégration de données

Approche virtuelle - 2

21/12/04

Page 17: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Traduction des sous-requêtes et interrogation des sources

Source 1

Utilisateur

Médiateur

Adaptateur

Requêtes

. . . . . . .

Requêtes

Requêtes

Adaptateur

Requêtes

Source np. 17Intégration de données21/12/04

Approche virtuelle - 2

Page 18: Intégration de données Cédric Gueydan - Décembre 2004 -

Source 1

Utilisateur

Médiateur

Adaptateur

Requêtes

. . . . . . .

Requêtes

Requêtes

Source n

Adaptateur

Requêtes

Différentes approches

Réponse = chemin inverse

p. 18Intégration de données

Approche virtuelle - 2

21/12/04

Page 19: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Les données sont stockées uniquement au niveau des sources

Le médiateur contient des vues abstraites sur ces sources

Les adaptateurs traduisent les requêtes exprimées par les vues dans le langage spécifique de chaque source

p. 19Intégration de données

Approche virtuelle - 3

21/12/04

Page 20: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

p. 20Intégration de données

Principales questions :

- définition du schéma global- définition des schémas sources - mapping schéma global / schémas des sources

Approche virtuelle - 4

21/12/04

Page 21: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Comparaison - 1

Matérialisée Virtuelle

performances

historique

volume

actualisation temps réel

+ -

+ -

-

-

+

+ajout/suppression de sources +-

complexité +-

p. 21Intégration de données21/12/04

Page 22: Intégration de données Cédric Gueydan - Décembre 2004 -

Différentes approches

Comparaison - 2

Approche virtuelle préférable si :- les sources sont mises à jour fréquemment- les sources sont très nombreuses- il est impossible de prédire les requêtes de l'utilisateur

p. 22Intégration de données21/12/04

Page 23: Intégration de données Cédric Gueydan - Décembre 2004 -

Médiateur

Correspondance entre schéma global et schémas sources :- GAV : Global As View schéma global défini en termes des sources- LAV : Local As View sources définies en termes du schéma global

Langage pour modéliser :- le schéma global- les vues sur les sources- les requêtes utilisateur

Choix de conception :

p. 23Intégration de données21/12/04

Page 24: Intégration de données Cédric Gueydan - Décembre 2004 -

Médiateur

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

p. 24Intégration de données

Exemple de requête:

Titres et critiques de film en 1998 :

SELECT Title, Critique FROM movie JOIN reviewWHERE Year=1998

[Lenzerini] [Halevy]

21/12/04

Page 25: Intégration de données Cédric Gueydan - Décembre 2004 -

Règles de mapping GAV:

p. 25Intégration de données

Médiateur

- Mapping – GAV -

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

CREATE VIEW movie (Title; Year; Director) AS

SELECT Title, Year, Director FROM r1

…21/12/04

Page 26: Intégration de données Cédric Gueydan - Décembre 2004 -

CREATE VIEW movie (Title; Year; Director) AS

SELECT Title, Year, Director FROM r1

p. 26Intégration de données

Médiateur

- Mapping – GAV -

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

Règles de mapping GAV:

…21/12/04

Page 27: Intégration de données Cédric Gueydan - Décembre 2004 -

Règles de mapping LAV:

p. 27Intégration de données

CREATE VIEW r1 (Title; Year; Director) AS

SELECT Title, Year, Director FROM movie JOIN europeanWHERE Year >= 1960

Médiateur

- Mapping – LAV -

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

21/12/04

Page 28: Intégration de données Cédric Gueydan - Décembre 2004 -

CREATE VIEW r1 (Title; Year; Director) AS

SELECT Title, Year, Director FROM movie JOIN europeanWHERE Year >= 1960

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

Règles de mapping LAV:

p. 28Intégration de données

Médiateur

- Mapping – LAV -

21/12/04

Page 29: Intégration de données Cédric Gueydan - Décembre 2004 -

Médiateur

p. 29Intégration de données

Comparaison [Knoblock] [Lenzerini]

GAV LAV

Non modulaire: l'addition de nouvelles sources nécessite la modification du schéma global

Bonne modularité: l'addition de nouvelles sources est simple

Simplicité de la reformulation de requête (dépliement)

Difficulté de la reformulation de requête (inférence)

21/12/04

Page 30: Intégration de données Cédric Gueydan - Décembre 2004 -

Médiateur

Architecture : - combinaison entrepôt / médiateur (Xylème)

Conception schéma : - BAV : Both As View- GLAV : Global Local As View- BGLAV : BYU Global Local As View (Brigham Young University)

p. 30Intégration de données

Autres approches :

21/12/04

Page 31: Intégration de données Cédric Gueydan - Décembre 2004 -

p. 31Intégration de données

PicselTsimmisSimsXylemeMomisInformation ManifoldObserverHermesInfomaster…

→ Nombreux systèmes existants:

→ Tous présentent une approche différente

21/12/04

Conclusion

→ Pas de solution « miracle »

Page 32: Intégration de données Cédric Gueydan - Décembre 2004 -

p. 32Intégration de données21/12/04

Page 33: Intégration de données Cédric Gueydan - Décembre 2004 -

Médiateur

p. 33Intégration de données

- Traitement des requêtes – GAV -

Reformulation par simple dépliement VIEW movie (Title; Year; Director) AS

SELECT Title, Year, Director FROM r1

Rappel des règles de mapping :

Exemple de requête utilisateur :SELECT Title, Critique FROM movie JOIN reviewWHERE Year=1998

Niveau schéma global

Requête:SELECT Title, Critique FROM r1 JOIN r2WHERE Year=1998

Niveau schémas sources

21/12/04

Page 34: Intégration de données Cédric Gueydan - Décembre 2004 -

p. 34Intégration de données

Exemple de requête utilisateur :SELECT Title, Critique FROM movie JOIN reviewWHERE Year=1998

Requête:SELECT Title, Critique FROM r1 JOIN r2WHERE Year=1998

Reformulation par simple dépliement

Niveau schéma global

Niveau schémas sources

Médiateur

- Traitement des requêtes – GAV -

VIEW movie (Title; Year; Director) ASSELECT Title, Year, Director FROM r1

Rappel des règles de mapping :

21/12/04

Page 35: Intégration de données Cédric Gueydan - Décembre 2004 -

p. 35Intégration de données

Exemple de requête utilisateur :SELECT Title, Critique FROM movie JOIN reviewWHERE Year=1998

Niveau schéma global

Reformulation nécessitant inférence

Rappel des règles de mapping :

VIEW r1 (Title; Year; Director) ASSELECT Title, Year, Director FROM movie JOIN europeanWHERE Year >= 1960

Niveau schémas sourcesSELECT Title, CritiqueFROM r2 JOIN r1WHERE year = 1998

Requête:

Médiateur

- Traitement des requêtes – LAV -

21/12/04

Page 36: Intégration de données Cédric Gueydan - Décembre 2004 -

VIEW r1 (Title; Year; Director) ASSELECT Title, Year, Director FROM movie JOIN europeanWHERE Year >= 1960

p. 36Intégration de données

Exemple de requête utilisateur :SELECT Title, Critique FROM movie JOIN reviewWHERE Year=1998

Reformulation nécessitant inférence

Niveau schéma global

Niveau schémas sourcesSELECT Title, CritiqueFROM r2 JOIN r1WHERE year = 1998

Requête:

Médiateur

- Traitement des requêtes – LAV -

Rappel des règles de mapping :

21/12/04

Page 37: Intégration de données Cédric Gueydan - Décembre 2004 -

Règles de mapping GAV:

p. 37Intégration de données

CREATE VIEW movie (Title; Year; Director) ASSELECT Title, Year, Director FROM r1

CREATE VIEW european (Director) ASSELECT Director FROM r1

CREATE VIEW review (Title; Critique) ASSELECT Title, Critique FROM r2

Médiateur

- Mapping – GAV -

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

21/12/04

Page 38: Intégration de données Cédric Gueydan - Décembre 2004 -

Règles de mapping GAV:

p. 38Intégration de données

CREATE VIEW movie (Title; Year; Director) ASSELECT Title, Year, Director FROM r1

CREATE VIEW european (Director) ASSELECT Director FROM r1

CREATE VIEW review (Title; Critique) ASSELECT Title, Critique FROM r2

Médiateur

- Mapping – GAV -

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

21/12/04

Page 39: Intégration de données Cédric Gueydan - Décembre 2004 -

Règles de mapping LAV:

p. 39Intégration de données

CREATE VIEW r1 (Title; Year; Director) ASSELECT Title, Year, Director FROM movie JOIN europeanWHERE Year >= 1960

CREATE VIEW r2 (Director) ASSELECT Title, Critique FROM movie JOIN reviewWHERE YEAR >= 1990

Médiateur

- Mapping – LAV -

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

21/12/04

Page 40: Intégration de données Cédric Gueydan - Décembre 2004 -

Global schema: movie(Title;Year; Director)european(Director)review(Title; Critique)

Source 1: r1 (Title;Year; Director ) since 1960, european directors

Source 2: r2 (Title;Critique) since 1990

Règles de mapping LAV:

p. 40Intégration de données

CREATE VIEW r1 (Title; Year; Director) ASSELECT Title, Year, Director FROM movie JOIN europeanWHERE Year >= 1960

CREATE VIEW r2 (Director) ASSELECT Title, Critique FROM movie JOIN reviewWHERE YEAR >= 1990

Médiateur

- Mapping – LAV -

21/12/04