2.2 Etat de l'art en intégration de données



Documents pareils
Architectures d'intégration de données

Intégration de données hétérogènes et réparties. Anne Doucet

Intégration de données

Bases de données avancées Introduction

Business & High Technology

Gestion de données réparties. Cours 1

UE 8 Systèmes d information de gestion Le programme

Entrepôt de données 1. Introduction

Les Entrepôts de Données

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

Chapitre 1 : Introduction aux bases de données

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1

ETL Extract - Transform - Load

Chapitre 9 : Informatique décisionnelle

Didier MOUNIEN Samantha MOINEAUX

Module BDR Master d Informatique (SAR)

Un datawarehouse est un entrepôt de données (une base de données) qui se caractérise par des données :

Introduction à la B.I. Avec SQL Server 2008

BD réparties. Bases de Données Réparties. SGBD réparti. Paramètres à considérer

Bases de Données Avancées

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Objectif. Participant. Prérequis. Oracle BI Suite EE 10g R3 - Développer des référentiels. 5 Jours [35 Heures]

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

BUSINESS INTELLIGENCE

Analyse comparative entre différents outils de BI (Business Intelligence) :

Les nouvelles architectures des SI : Etat de l Art

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

Mercredi 15 Janvier 2014

Module BD et sites WEB

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

En synthèse. HVR pour garantir les échanges sensibles de l'entreprise

Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza

Enterprise Intégration

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

Introduction aux bases de données

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Diplôme de Comptabilité et de Gestion. D é c r e t N d u 2 2 d é c e m b r e A r r ê t é d u 8 m a r s

Introduction aux Bases de Données

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques

SAP BusinessObjects Web Intelligence (WebI) BI 4

Définition d'un système générique de partage de données entre systèmes existants

Architectures web/bases de données

DataStudio. Solution d intégration des données et de diffusion de l information

Business Intelligence : Informatique Décisionnelle

Business Intelligence avec Excel, Power BI et Office 365

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Urbanisation des Systèmes d'information

Information utiles. webpage : Google+ : digiusto/

Présentation du module Base de données spatio-temporelles

QU EST-CE QUE LE DECISIONNEL?

L INTELLIGENCE D AFFAIRE DANS LA VIE QUOTIDIENNE D UNE ENTREPRISE

LES ENTREPOTS DE DONNEES

27 janvier Issam El Hachimi Ludovic Schmieder

Projet M1 Sujet 21 : Développement d'un logiciel simplifié de type Business Object

Pentaho : Comparatif fonctionnel entre la version Communautaire (gratuite) et la version Entreprise (payante) Table des matières

Entrepôts de données. NEGRE Elsa Université Paris-Dauphine

SQL SERVER 2008, BUSINESS INTELLIGENCE

Intelligence Economique - Business Intelligence

BI = Business Intelligence Master Data-ScienceCours 2 - ETL

Bases de Données. Plan

Business Intelligence avec SQL Server 2012

Formation en Logiciels Libres. Fiche d inscription

Bases de données cours 1

Java et les bases de données

BUSINESS INTELLIGENCE. Une vision cockpit : utilité et apport pour l'entreprise

Plan. Introduction Eléments de la théorie des systèmes d'informations Les entrepôts de données (Datawarehouse) Les datamart Architecture Modélisation

Les technologies du Big Data

Département Génie Informatique

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Oracle Database 11g pour l'entreposage des données et la Business Intelligence (BI)

Business & High Technology

Introduction: 1. définition d un ETL 2. importance et diversité des données spatiales utilitédes ETL géographiques

Cours Bases de données

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Réplication E-maj Foreign Data Wrapper PostGIS PostgreSQL-f

Les Architectures Orientées Services (SOA)

Introduction à l Informatique Décisionnelle - Business Intelligence (7)

PROSOP : un système de gestion de bases de données prosopographiques

ORACLE DATA INTEGRATOR ENTERPRISE EDITION - ODI EE

Le "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique

Lettre d'annonce ZP d'ibm Europe, Moyen-Orient et Afrique, datée du 2 mars 2010

Méthodologie de conceptualisation BI

Chapitre Introduction : Notion de Bases de données. 2. Définition : BD Répartie. 3. Architecture des SGBD. 4. Conception des bases réparties

1 Introduction. Business Intelligence avec SharePoint Server 2010

Introduction : présentation de la Business Intelligence

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

Sécurité des entrepôts de données dans le Cloud Un SaaS pour le cryptage des données issues d un ETL

Petit Déjeuner Pépinière du Logiciel Libre. 25 juin 2008

Bases de Données relationnelles et leurs systèmes de Gestion

MYXTRACTION La Business Intelligence en temps réel

BES WEBDEVELOPER ACTIVITÉ RÔLE

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

Conduite de projets informatiques Développement, analyse et pilotage (2ième édition)

Travail de diplôme 2011 Business Intelligence Open Source SpagoBI/Talend Résumé

L A B U S I N E S S. d a t a g i n f o r m a t i o n g a c t i o n

INTRODUCTION AUX TESTS DE PERFORMANCE ET DE CHARGE

Transcription:

Recueil de l état de l art en Intégration de données Patrice BUCHE (2006) http://metarisk.inapg.inra.fr/content/view/full/104 2.2 Etat de l'art en intégration de données Depuis le début des années 1990, la communauté de recherche en informatique (notamment en bases de données) et l'industrie ont proposé deux approches complémentaires pour concevoir la couche d'intégration de données présentée dans l'introduction de ce mémoire : - l'approche distribuée à base de médiateurs (Wiederhold 1992; Garcia-Molina et al. 1995; Levy et al. 1996b; Ullman 2000) et - l'approche centralisée par la construction d'entrepôts de données (Widom 1995; Chaudhuri & Dayal 1997; Wu & Buchmann 1997; Vassiliadis 2000). Dans l'approche médiateur, l'intégration des données s'effectue en deux étapes: - Le système d'intégration récupère la requête de l'utilisateur, détermine l'ensemble des sources de données susceptibles de répondre µa cette requête et génère l'ensemble des sous- requêtes appropriées qui sont soumises aux sources de données sélectionnées. - Le système récupère ensuite les résultats transmis par les sources de données, effectue les transformations, filtrages et fusions nécessaires afin de pouvoir retourner la réponse finale à l'utilisateur. On parle d'une approche médiateur en référence à Wiederhold (1992) qui a été le premier à proposer ce terme pour décrire la décomposition d'une requête en sous-requêtes et la combinaison des résultats obtenus par l'exécution de ces sous-requêtes. L'autre caractéristique importante de cette approche est que l'information n'est extraite de la source de données que lorsqu'une requête est posée par l'utilisateur. On peut alors parler d'une approche de l'intégration de données à la demande. L'alternative naturelle à cette approche est l'intégration de données dite par avance ou encore par construction d'entrepôt de données. Dans l'approche entrepôt de données, l'intégration se fait également en deux étapes: - Les informations pertinentes sont extraites par avance de chaque source de données. Elles subissent les transformations et filtrages nécessaires, avant d'être fusionnées et stockées dans un entrepôt de données centralisé. - La requête de l'utilisateur est alors posée directement à l'entrepôt de données sans accès aux sources de données d'origine. L'approche médiateur est bien adaptée dans les cas suivants: lorsque l'information change rapidement, lorsque les requêtes des utilisateurs correspondent à des besoins difficiles à prévoir, et lorsque, µa la fois le nombre de sources et le nombre de données concernées sont très élevés. Par contre, cette approche peut se révéler inefficace lorsque le temps d'accès aux sources de données est long, lorsque l'accès est coûteux ou indisponible ou lorsque le temps de traitement des requêtes générées par le médiateur est long. L'approche entrepôt de données est bien adaptée pour le traitement de requêtes prédéfinies, dont le temps de réponse doit être rapide (ceci est garanti par le fait que les données sont locales). Cette approche est également bien adaptée lorsque les utilisateurs veulent accéder à une information qui a été annotée ou synthétisée. Elle est indispensable si les utilisateurs veulent accéder à un historique de l'information qui n'est pas maintenu dans les sources de données (par exemple: un entrepôt de données d'achat cumulées sur plusieurs années constitué à partir de sources de données qui gèrent uniquement des données d'achat sur l'année en cours). Par contre, cette approche est mal adaptée si l'utilisateur veut accéder aux informations les plus récentes publiées dans un ensemble de sources de données qui sont fréquemment mises à jour. Il y a en effet toujours un décalage temporel

incompressible entre la mise à jour de la source de données et l'intégration de cette mise à jour dans l'entrepôt. Les deux approches sont donc toutes les deux pertinentes pour traiter le problème de l'intégration de données. Le choix de l'approche à adopter dépend des particularités du problème d'intégration à traiter. La communauté de recherche en informatique a été tout particulièrement active dans les années 1990 pour traiter un problème commun µa ces deux approches (voir Halevy 2001 pour une synthèse) qui peut être résumé par la question suivante: comment répondre à une requête en utilisant des vues (relations définies par combinaison de relations élémentaires)? Dans l'approche entrepôt de données, cette question a été abordée dans l'optique d'optimiser des requêtes incluant notamment des opérations d'agrégation, par l'utilisation de vues matérialisées. A la différence d'une vue abstraite, relation virtuelle dont le contenu n'est jamais effectivement calculé, une vue matérialisée est une relation définie à partir de relations élémentaires dont le contenu est calculé et stocké en base. Si, dans une vue matérialisée, une partie des calculs nécessaires pour exécuter une requête a déjà été réalisée, alors il peut être intéressant d'utiliser cette vue pour optimiser l'exécution de la requête. Dans le cadre de l'approche médiateur, la question de l'utilisation de vues pour répondre à une requête a été abordée avec pour objectif de transformer une requête utilisateur exprimée en termes de vues d'un schéma global d'intégration sous la forme d'une requête exprimée en termes de vues sur les sources de données. Considérons l'exemple suivant dans lequel le schéma global d'intégration est constitué de 3 vues : - Film(Titre, Année, Réalisateur) qui contient une liste de titres de films avec son année de sortie et le nom de son réalisateur, - Européen(Réalisateur) qui contient une liste de noms de réalisateurs européens, - Revue(Titre, Critique) qui contient une liste de critiques d'oeuvres variées (film, livre, musique, etc). Dans ce système d'intégration, deux sources de données sont accessibles par les vues V 1 et V 2 : - V1(Titre, Année, Réalisateur) qui rassemble des films réalisés par des réalisateurs européens depuis 1960, - V2(Titre, Critique), contenant des critiques de films depuis 1990. Dans l'approche médiateur, la requête utilisateur Q est toujours exprimée dans les termes du schéma global. Par exemple, la requête Liste des critiques de films sortis en 1998 s'exprime, dans un formalisme proche du calcul relationnel (défini dans Ullman 1988), en termes de vues du schéma global de la manière suivante: Q = {C, T Film(T, 1998;R) ^ Revue(T,C) } Le problème de la transformation de la requête en terme de vues sur les sources de données a été traité de deux façons différentes: - Les vues sur les sources de données sont définies comme une conjonction de vues du schéma global: on parle d'une approche centrée sur les sources (ou LAV pour Local-As-View). - Les vues du schéma global sont définies comme une conjonction de vues sur les sources : on parle d'une approche centrée sur le schéma global (ou GAV pour Global-As-View). Dans l'approche LAV, les deux vues V 1 et V 2 de l'exemple précédent sont définies de la manière suivante : - V1 { T, A,R Film(T, A,R) ^ Europeen(R) ^ A 1960}, - V2 {T, A,R Film(T, A,R) ^ Revue(T,C) ^ A º 1990}. Dans l'approche GAV, les vues du schéma d'intégration sont définies µa partir des vues sur les sources de données de la manière suivante: - Film(T, A,R) {T, A,R V1(T, A,R)}, - Europeen(R) {R V1 (T, A,R)}, - Revue(T,C) {T,C V2(T,C)}.

Ullman (2000) effectue une comparaison détaillée des deux systèmes pionniers représentant les deux approches: Information Manifold (Levy et al. 1995, 1996b,a) architecture de type LAV et Tsimmis (Garcia-Molina et al. 1995; Papakonstantinou et al. 1995a,b), architecture de type GAV. Dans l'approche LAV, la requête utilisateur Q est réécrite sous la forme d'une requête conjonctive Q' portant sur les vues correspondant aux sources de données (voir Halevy 2001 pour une synthèse sur les algorithmes de réécriture). La solution finale pour Q est l'union des résultats obtenus pour toutes les requêtes Q', réécritures possibles de Q. Dans l'approche GAV, la requête utilisateur Q est simplement transformée en remplaçant les noms des vues du schéma global par leur définition en terme de sources de données (voir Ullman 2000). Quelle que soit l'approche utilisée, GAV ou LAV, la requête de l'exemple précédent, exprimée en terme de vues du schéma global d'intégration, est transformée pour donner la requête suivante, exprimée en terme des vues sur les sources de données: Q = {T,C V1(T, 1998,R) ^ V2(T,C)}:

Dan VODISLAV (Université de Cergy-Pontoise Master Informatique M2)

Intégration de données Contexte Sources d information nombreuses et variées SGBD relationnels/xml, pages HTML, LDAP, tableurs, fichiers, applications, Interfaces d accès variées Langages d interrogation: SQL, XPath, XQuery, URL, Modèle de données: relationnel, XML, HTML, tableurs Protocoles de communication: JDBC, ODBC, SOAP, HTTP Interfaces d appel: ligne de commande, API, formulaire, interface graphique Objectif général : utiliser plusieurs sources comme si elles constituaient une seule base de données homogène l intégration de données doit fournir un accès (requêtes, éventuellement mises-à-jour) uniforme (comme si c était une seule BD homogène) à des sources (pas seulement des BD) multiples (déjà deux est un problème) autonomes (sans affecter leur comportement, indépendant des autres sources ou du système d intégration) hétérogènes (différents modèles de données, schémas) structurées (ou semi-structurées) Page 3 Exemple SQL tuples OQL objets XQuery Moteur de XML recherche HTML API instances SGBD relationnel Agence de voyage SGBD objet Chaine hôtelière SGBD Semi-Structuré Site horaire des vols Fichiers Fichiers texte Fichiers texte texte Informations Pays Application Météo Page 4

Enjeux Dans l entreprise Données dispersées dans une grande variété de sources hétérogènes: internes à l entreprise (protégées) externes, chez des fournisseurs, des partenaires ou des clients Objectif «business intégration»: accès efficace, facile et sûr à ces données Études: une partie très importante des budgets IT sont dépensés en intégration Grand public Accès simple, rapide et efficace aux informations disponibles sur le web Texte/HTML, images, vidéo, XML, fils RSS, cartes Le web caché, services web Commerce électronique: comparateurs de prix, intégration de magasins en ligne Page 5 Applications Données d entreprise Données scientifiques + le Web! moteurs de recherche, agrégateurs Page 6

Caractéristiques des sources de données qui rendent l intégration de données difficile Distribution Répartition géographique des sources sur le réseau Échelle Autonomie Les sources décident de ce qu'elles partagent, comment et quand Hétérogénéité De format, de structure, de mode d'accès, de capacité de traitement Page 7 Architecture générale d intégration requête réponse Modèle global Niveau d intégration Données matérialisées Adaptateur 1 Modèle S 1 Adaptateur n Modèle S n Source 1........ Source n Page 8

Degré d intégration des données Données transférées vers le niveau d intégration Intégration matérialisée Données qui restent dans les sources Intégration virtuelle SGBD universel Entrepôt de données Système fortement intégré Système faiblement intégré Recherche d information BD locale BD fédérée Moteur de recherche Intégration forte Intégration faible Page 9 Intégration matérialisée et virtuelle Intégration matérialisée entrepôt de données Les données provenant des sources sont transformées et stockées sur un support spécifique (entrepôt de données). L interrogation s effectue comme sur une BD classique Intégration virtuelle médiateur Les données restent dans les sources Les requêtes sont exprimées sur le schéma global, puis décomposées en sous-requêtes sur les sources Les résultats des sources sont combinés pour former le résultat final En pratique on peut avoir des architectures intermédiaires, entre ces deux extrêmes Page 10

Architecture d entrepôt Q R Entrepôt D 1 + +D n Chargeur 1 Source 1 D 1........ D n Chargeur n Source n Migration de données Page 11 Architecture de médiation Q R=f(R 1,, R n ) Médiateur Adaptateur 1 Q 1 R 1 Q n R n Adaptateur n Migration de requêtes Source 1........ Source n Page 12

Entrepôt ou médiateur? Médiateur : accès direct aux sources approche «paresseuse», pas de matérialisation migration de requêtes vers les sources avantages : données toujours fraîches, plus facile d ajouter de nouvelles sources, plus grande échelle, distribution de l effort inconvénients : performances, traduction de requêtes, capacités différentes des sources Entrepôt de données : accès efficace à une copie des données matérialisation des sources au niveau du modèle global migration de données vers l entrepôt avantages : performances, personnalisation des données (nettoyage, filtrage), versions inconvénients : données pas toujours fraîches, cohérence, gestion des mises-à-jour, gestion de gros volumes de données Page 13 Entrepôts de données L approche la plus populaire d intégration de données Gros avantages: performances, contrôle plus facile à réaliser sur l hétérogénéité des données Utilisation pour les systèmes décisionnels OLAP Transformation de données pour alimenter l entrepôt Chargeurs = systèmes ETL («Extract, Transform, Load») Outils graphiques pour définir des flots de traitements/transformations Une fois le flot de traitement défini appliqué au contenu des sources Page 14

Exemple d ETL : Kettle Page 15 Médiateurs Bien que moins utilisés en pratique, ils ont plus de potentiel Meilleur passage à l échelle Acceptent mieux les changements dynamiques (nouvelles sources) mieux adaptés à l intégration de sources web En entreprise: EII «Enterprise Information Integration» Ex. BEA Liquid Data, IBM Websphere Information Integrator Page 16

Architecture plus détaillée Modèle de données global Requête sur le schéma global Traduction de requêtes Modèle de données local exporté Catalogue Optimisation Exécution Requêtes sur les schémas locaux exportés Requête sur l ensemble des schémas des sources Plan d exécution réparti Adaptateur 1 Requête sur le schéma local Adaptateur n Modèle de données local Source 1........ Source n Page 17 Décomposition des requêtes Exemple : chercher l adresse de tous les propriétaires de voiture verte No_carte_grise = no Nom_conducteur = nom Union Select no_carte_grise from voiture where couleur = vert Select no, nom_conducteur from Carte_grise Select nom, adresse from personne Select nom, adresse from personne Source 1 Voiture (no_carte_grise, couleur, immatriculation) Source 2 Carte_Grise (no, nom_conducteur, date_etabl, prefecture) Source 3 Personne (nom, prenom, poids, adresse) Source 1 Personne (nom, age, adresse) Page 18

Schémas d intégration Problèmes Intégration de schéma: comment définir un schéma global d intégration à partir des schémas des sources? Fusion de données: comment rendre compatibles, transformer les données en provenance des sources? Mappings/vue d intégration: comment décrire le lien entre le schéma global et les schémas des sources? Page 19 Définition de la vue d intégration Le lien entre schéma global et schémas locaux est défini à travers des vues Mapping entre ces schémas Deux façons principales de définir ce lien Le schéma global en fonction des schémas locaux «global as view» Approche ascendante: on part des sources pour produire le schéma global Les schémas locaux en fonction du schéma global «local as view» Approche descendante: on fixe le schéma global et on décrit les sources par rapport à ce schéma fixé Page 20

«Global-as-View» Le modèle global = vue sur les sources élément global = f(éléments des sources) M = V(S 1,, S n ) Avantages approche naturelle la traduction de requêtes se fait facilement Inconvénients nouvelle source modification du modèle global il faut considérer l interaction de la nouvelle source avec les autres Page 21 Exemple «Global-as-View» Sources de données : S1: FilmTitre (fid, titre) FilmDetails (fid, année, genre, réalisateur) Acteur (aid, nom, pays) Joue (aid, fid) S2: FilmInfo (titre, année, genre) S3: Realisateur (nom, titre) Modèle global du médiateur GAV: M: Film (titre, année, genre, réalisateur) Acteur (nom, titre) Description GAV: M:Film(t, a, g, r) :- S1:FilmTitre(fid, t) S1:FilmDetails(fid, a, g, r) :- S2:FilmInfo(t, a, g) S3:Realisateur(r, t) M:Acteur(n, t) :- S1:FilmTitre(fid, t) S1:Joue(aid, fid) S1:Acteur(aid, n, p) Page 22

Requêtes GAV Exemple: les titres des films de James Cameron Q(t) = M:Film(t, a, g, "James Cameron") Méthode: remplacement direct dans la description du médiateur M:Film(t, a, g, "James Cameron") :- S1:FilmTitre(fid, t) S1:FilmDetails(fid, a, g, "James Cameron") :- S2:FilmInfo(t, a, g) S3:Realisateur("James Cameron", t) Remarque: l interrogation de S2 est inutile! Résultat: Q(t) S1:FilmTitre(fid, t) FilmDetails(fid, a, g, "James Cameron") S3:Realisateur("James Cameron", t) Page 23 «Local-as-View» Les sources = vues matérialisées du modèle global une source décrit les données du modèle global qu elle peut fournir élément source = f(éléments modèle global) S i V i (M) Avantages les sources sont décrites indépendamment les unes des autres très simple de rajouter une nouvelle source Inconvénients traduction de requêtes plus complexe Page 24

Exemple «Local-as-View» Modèle global du médiateur LAV: M: Film (titre, année, genre, réalisateur) Acteur (nom, titre) Sources de données : S1: titre, années et réalisateurs de comédies S2: acteurs avec le titre et année des films où ils ont joué S3: réalisateurs, titres des films et acteurs qui y jouent S4: titre et genre de films français d'avant 1970 Description LAV: S1(t, a, r) M:Film(t, a, "comédie", r) S2(n, t, a) M:Acteur(n, t) M:Film(t, a, g, r) S3(r, t, n) M:Film(t, a, g, r) M:Acteur(n, t) S4(t, g) M:Film(t, a, g, r), a < 1970 Page 25 Requêtes LAV Exemple: les acteurs dirigés par James Cameron Q(n) = M:Acteur(n, t) M:Film(t, a, g, "James Cameron") Algorithme Bucket identifier les sources pour chaque sous-requête Acteur(n, t) : S 2 (n, t, a ), S 3 (r, t, n) Film(t, a?, g?, r) : S 1 (t, a, r), S 3 (r, t, n ) (a, g inutiles, S2/S4 n ont pas r) union de toutes les combinaisons valides des sources avec élimination des redondances Q(n) S 2 (n, t, a ) S 1 (t, a, "James Cameron") S 3 ("James Cameron", t, n) Les combinaisons S 2 -S 3 et S 3 -S 1 sont plus restrictives que la solution S 3 seule! Remarque : dans GAV, les jointures entre sources sont déjà exprimées, dans LAV il faut les déduire Page 26