1
2
Introduction :
1. définition d’un ETL
2. importance et diversité des données spatiales � utilité des ETL
géographiques
3
ETL = extracto-chargeur = datadumping
La Business Intelligence, BI, (ou informatique décisionnelle) désigne les moyens,
les outils et les méthodes qui permettent de collecter, consolider, modéliser et
restituer les données d'une entreprise en vue d'offrir une aide à la décision et de
permettre aux responsables de la stratégie d'entreprise d’avoir une vue
d’ensemble de l’activité traitée. (Source Wikipedia)
Les ETL constituent le socle de la BI et permettent d'extraire les données en
provenance de diverses sources et de les transformer sous forme acceptable
pour pouvoir être intégrées à une source cible :
l'ETL doit les faire passer par un tas de moulinettes pour les dé-normaliser, les
nettoyer, les contextualiser, puis de les charger de la façon adéquate dans la
source de donnée cible.
La mise en place d'un ETL constitue 80% du temps de développement d'un projet
décisionnel en moyenne
Sources:
- http://people.cs.aau.dk/~tbp/Teaching/DWML06/4_ETL.pdf
- http://igm.univ-mlv.fr/~dr/XPOSE2010/Extract_Transform_Load/etl.php
4
Evolution caractérisée par un confort d'utilisation accrue grâce aux interfaces
graphiques, la multiplicité des drivers de connexion aux sources de données, et
les traitements de données possibles.
Première suite décisionnelle géographique initiée en 2000 et sortie en 2005 :
JMAP Solap de la société K2 géospatial
Cette suite à été adoptée dans de nombreux domaines: Gestion de domaines
routier, sportifs, fouilles archéologiques, …
Emergence de l’open source business intelligence (OSBI) ->intérêt de la
communauté Open Source
Talend SDI, premier ETL Open Source, sort en 2007
Sources:
- geotribu.net
- http://igm.univ-mlv.fr/~dr/XPOSE2010/Extract_Transform_Load/etl.php
5
Il est estimé qu’environ 80 % des données stockées dans des bases de données
d’entreprises intègrent des informations à caractère géographique. (Franklin ,1992)
il a été démontré que la carte plus que tout autre média, permet de par ses
caractéristiques de stimuler nos capacités cognitives (Bertin & Bonin 1992; Standing
1973; Tufte 1992; T. Buzan & B. Buzan 2003).
Les données géographiques deviennent de plus en plus stratégiques, quelque soit leur
domaine d’utilisation.
Actuellement, tentative de normalisation -> INSPIRE en Europe
Défis majeurs (comme pour SIG)
• Nettoyer les données géospatiales
• Intégrer des données de sources hétérogènes
• d’époques différentes
• de granularités différentes
http://yvanbedard.scg.ulaval.ca/wp-
content/documents/slideshow/publication/593/593.pdf:
6
Besoin utilisateur = accéder à des informations géographiques
Pléthore de données mais accès transparent pour l’utilsateur
7
8
L’extraction est une étape déterminante pour la suite du processus.
Des données provenant de différents systèmes passent par les outils ETL. Chaque
système peut utiliser une organisation des données ainsi que des formats différents. En
général, le but d’un outil ETL est de convertir les données en un format unique
permettant les processus de transformation.
Le parsing, ou décomposition analytique, est une partie intégrante du processus de
transformation qui vérifie que la donnée correspondent à une structure ou un format
déterminé.
9
Durant cette étapes, une série de règles et de fonctions sont appliquées aux
données extraites afin de permettre l’intégration des données extraites dans la
cible finale. Certaines sources de données nécessite peu ou pas de manipulation
de données. Dans d’autres cas, les transformations suivantes sont requises afin
de satisfaire aux besoin techniques :
- Sélectionner des colonnes
- Traduire des attributs en utilisant le nettoyage de données : en effet, la
traduction d’attribut n’est pas manuelle en ETL
- encoder des attributs (e.g., transformer "Male" en "1")
- trier
- faire des jointures de données
- Chercher et valider les données pertinentes des tables ou des fichiers de
références
- Appliquer une validation simple ou complexes sur des données.
A la fin : données filtrées et fédérées afin de les rendre homogènes
(source : http://tranchant.name/2011/11/informatique-decisionnelle/)
10
La phase de load permet de charger les données dans la cible finale (par exemple dans
un entrepôt de données).
Les données sont ensuite disponibles pour les différents outils d'analyse et de
présentation que sont le Data Mining, l'analyse multimensionnelle SOLAP, les analyses
géographiques, les requêteurs et autres reportings et bien sûr les tableaux de bord.
11
Vidéo :http://www.youtube.com/watch?v=ffvBaVfGW7E&feature=player_embedded&noredirect=1
Données sources : un fichier shapefile contenant des informations sous différents formats• des polylignes• des points, porteurs d’attributs• aucun polygone
Script :•Extract � données sources•Tranform :
•Agrégation de lignes•Union de lignes•Création de polygones•Filtre des colonnes•Produit cartésien avec les données sources de type point � Polygones contenant des points label•Filtrage des colonnes
•Load � données cibles
Données cibles : un fichier Shapefile de polygones porteurs d’information • sur les formes• sur les attributs
Autre exemple : http://www.youtube.com/watch?v=VP-lifzypDY&noredirect=1� Création de fichiers Shapefile d'entités administratives à partir d'un fichier Shapefile des communes
12
Analyse de l’existant1. Logiciels existants
2. Critères d'évaluation des ETL
3. Comparaison de deux ETL géographiques libres : SDI et géokettle
13
http://georezo.net/annuaire/etl--extract-transform-load--c-74.html = liste les ETL dans le domaine Spatial
Propriétaires : mise en œuvre rapideLibre : couts réduits à la mise en œuvre d’une hot line technique
Talend : modèle open source commercial avec un « dual-licensing », des versions communautaires puissantes et fiables complétées par des versions « Enterprise » (payantes) dont le but est l’amélioration de la productivité dans le cadre de déploiements à moyenne et grande échelle. (source : http://www.osbi.fr/?p=1114)
3 catégories d’ETL : (Source : http://www.dwfacile.com/Choix_outils.htm)Engine-based : les transformations sont exécutées sur un serveur ETL, disposant en général d’un référentiel. Ce genre de d’outil dispose d’un moteur de transformation ; Database-embedded : les transformations sont intégrées dans la BDD
Code-generators : les transformations sont conçues et un code est généré. Ce code est déployable indépendamment de la base de données.
-Avantages : pas besoin de serveur particulier et son installation consiste en gros en l'installation (copie) de quelques fichiers Java sur une machine, plus rapides
-Note : prévoir de la place de charger les données dans les bases
14
• Coût
• ETL propriétaire : investissement important à l’achat (licence, formation)
• Code spécifique : coût croissant de maintenance, d’adaptation (résultat
sur mesure” mais complexe, long, coûteux, risqué, difficile à maintenir/évoluer,
difficile à adapter)
• ETL open source : pas de licence, coûts de formation et d’adaptation
réduits (inscription à une hot-line technique)
• Accès aux données
• Diversité des formats
• Complexité des données
•Traitement des données � transformations possibles
• Temps de traitement � des tests de comparaison existent
• Ergonomie � simplicité d’utilisation pour un non-informaticien
Source :
• Le livre blanc - ETL Open Source : Une réelle alternative aux solutions
propriétaires – ATOL, Conseil et Développement
• http://grim.developpez.com/articles/concepts/etl/
15
Choix dépend de la typologie de projet -> nécessité d’une analyse préalable (source :
livre blanc Atol 2008)
Tests (réalisés en 2008) :
- Extraction de données d’un fichier CSV/ chargement dans un autre fichier CSV : légère
avance pour SDI
- Extraction de données d’un fichier CSV/ chargement dans un fichier XML : avance
plus marquée pour SDI
- Extraction de données d’un fichier CSV/ chargement dans une table postgresql :
légère avance pour SDI
Talend : référence pour la gestion des données au sein d’une entreprise/organisation
(Intégration, Qualité de la données, Master Data Management)
Kettle : ETL orienté BI, même si globalement, en terme d’intégration de données, la
couverte fonctionnelle est identique à celle de Talend (source :
http://www.osbi.fr/?p=1114)
42 secondes pour Pentaho GéoKettle et 28 secondes pour Talend Open Studio pour
réaliser un traitement d’intégration de données complexe sur un fichier CSV comprenant
un million de lignes
+ http://geotribu.net/node/222
16
Intérêts et limites des ETL géographiques1. Avantages illustrés par des exemples
2. Cas d’utilisation : exemple de Géoplateforme 17
3. TD de prise en main d’un ETL géographique libre (SDI) � Limites
17
Raccourcir de manière considérable le délai entre la collecte de données et leur
valorisation.
Migrer, consolider des infrastructures de données géographiques
Simplifier l'exécution de tâches habituellement chronophages
Éviter les erreurs dûes à la redondance d'opérations manuelles
18
L’alternative avant les ETL était la mise en place de codes/scripts.
19
Contexte :• Besoin croissant d’échange d’information géographique entre de nombreux acteurs du territoire:
• pays, • communautés de communes, • Conseil Général, • services de l'Etat, • gestionnaires de réseaux…
• Directive INSPIRE
Plateforme 17 : service en ligne proposé par le Syndicat Informatique de Charente-Maritime� Partage de données spatiales
ETL utilisé : FME , ETL propriétaire payant
Rôle de FME desktop: assurer l’interopérabilité des données pour l’échange, la transformation, le chargement et le contrôle des données spatiales vectorielles ou raster
Sources : http://www.veremes.com/references/etudes-de-cas/geoplateforme-17
Sources : http://www.veremes.com/references/etudes-de-cas/geoplateforme-17
20
Sources : http://www.veremes.com/references/etudes-de-cas/geoplateforme-17
Contrôle de la qualité des données : A chaque dépôt de données par un partenaire, FME
est utilisé pour analyser la validité de ces dernières notamment en fonction des normes
de l’OGC (garant de l'interopérabilité des données).
� FME répond à toutes les demandes de téléchargements asynchrones (conversion,
projection, découpage…). Les données rasters sont par exemple toujours traitées par
FME, et la décompression de données au format EDIGéO est également assurée par
des scripts FME. Toute demande de téléchargement de données au format GML, dxf,
majic, Géodatabase... est assurée par FME.
�Le contrôle du PCI vecteur des 472 communes du département est également opéré
par FME quatre fois par an : les problèmes de compressions corrompues, les problèmes
de respect de standard d'échange, les problèmes topologiques, les doublons, les erreurs
d’assemblages… sont identifiés via des projets FME qui restituent ensuite des fichiers
localisant et qualifiant l’ensemble des erreurs. Envoyés par la suite à la DGFIP pour
correction, ces fichiers contribuent à une amélioration constante de la qualité du PCI et
assurent ainsi son exploitation.
�FME contribue à l’enrichissement et l’amélioration des différentes bases de données
métiers. FME est utilisé pour apparier les données des différentes bases et accroitre
l’information contenue dans chacune d’elle.
�Les modélisations 3D, l’assemblage d’ortho images, la résolution de problèmes
d’encodage, d’accentuation, de projection, le contrôle d’intégrité de données… sont
autant d’opérations assurées par l’ETL.
21
22
Un job est constitué d'un ensemble de composants (component) permettant de réaliser
une action ou une étape au sein du processus plus large de réalisation d'une tache
particulière.
Source : http://georezo.net/wiki/main/logiciels/sdi/start?s[]=spatialdataintegrator
23
1. barre de menu et d'outils
2. gestionnaire de projets : jobs, méta-données (configuration des connections aux
bases de données, schéma de fichier, etc.), paramètres contextuels, etc.
3. palette de composants, classés par catégorie ;
4. zone de travail où l'on place et interconnecte les components ;
5. zone de gestion des jobs : lancement, configuration des composants, etc.
Source : http://georezo.net/wiki/main/logiciels/sdi/start?s[]=spatialdataintegrator
24
25
26
Pratique :• prise en charge d’une quantités massives de données• interopérabilité des données• identification des erreurs• automatisation• prise en charge de l’implémentation des données cibles
Contraignant :• traitements lourds• logiciels peu intuitifs• ETL libres incomplets
���� Quand (ne pas) utiliser un ETL ?
ETL Tool versus Hand Coding ?The answer is, “It depends".
- Les sources sont-elles susceptibles d'être modifiées ?- Les supports sont-ils hétérogènes ? - Les données doivent-elles être transformées ?
Lorsque le choix est porté sur l'utilisation d'un ETL, c'est dans l'optique de bénéficier de l'un des objectifs visés par ces outils. Le temps de maintenance peut être réduit avec un ETL, mais la maintenance est elle réellement contraignante et inévitable, et les ressources compétentes sont elles réellement insuffisantes ? Le temps de développement peut être réduit avec un ETL, mais la structure des données est-elle assez complexe pour faire appel à une abstraction des supports de données fournie par un ETL ? L'application d'un ETL n'est pas adéquate dans tous les cas de figures : elle dépend de la structure des données, du volume des transferts, des ressources nécessaires à la modélisation, à la maintenance.
http://igm.univ-mlv.fr/~dr/XPOSE2010/Extract_Transform_Load/etl.php
27
28