Académique Documents
Professionnel Documents
Culture Documents
Introduction GeoKettle
{etienne.dube,thierry.badard}@scg.ulaval.ca
Groupe de recherche GeoSOA Universit Laval Qubec (Qubec), Canada Tutoriel prsent OGRS 2009, Nantes Juillet 2009
(http://geosoa.scg.ulaval.ca)
Plan
Historique et introduction Fonctionnalits de base de Kettle Fonctionnalits spatiales de GeoKettle Exemples avec GeoKettle Conclusion
Historique
2006-2007 quipe GeoSOA (Universit Laval) projets de recherche sur la gomatique dcisionnelle en mobilit :
Absence d'outils BI (ETL et OLAP) supportant nativement les donnes spatiales Inventaire de l'existant : outils open source de Pentaho (ETL : Kettle, OLAP : Mondrian) But : tendre ces logiciels pour qu'ils prennent en charge les donnes spatiales
Historique (suite)
Ainsi est n GeoKettle : une version spatialise de Kettle (Pentaho Data Integration) Mai 2008 premire version diffuse en open source : 2.5.2-20080531 Novembre 2008 3.1.0-20081103 Juin 2009 3.2.0-20090609
+
extensions spatiales
Un ETL peut grer autant l'insertion de nouvelles donnes que la mise jour de donnes existantes.
Installation
Prrequis : Java JRE version 5 ou plus rcente Dcompresser le contenu de l'archive (distribution binaire) dans un rpertoire Lancement de Spoon : spoon.sh (Linux / UNIX) ou spoon.bat
Transformations (1/3)
Les processus ETL de base sont nomms transformations. tapes de transformation: steps (tapes) Liens entre les tapes: hops (liens) Excution parallle (threads) des steps.
hops
steps
Transformations (2/3)
Les steps comportent des paramtres configurables (double-clic pour ouvrir la bote de dialogue) :
connexion la BD nom de fichier ouvrir critres de filtrage code source d'un script (JavaScript) etc. entres sorties transformations contrle de flux scripting etc.
Catgories de steps :
Transformations (3/3)
Les hops lient les steps les uns aux autres, afin de dfinir les flux de donnes. Pour crer un hop : glisser-dplacer d'un step l'autre avec le bouton du milieu (ou Maj.+bouton gauche) Dans un hop:
les donnes circulent de la sortie d'un step l'entre du step suivant, range par range la dfinition des champs (nombre, noms, types) est toujours identique d'une range l'autre
Types de hops:
copie
distribution
sortie conditionnelle
Jobs
Un job (tche) dfinit une srie de tches excuter squentiellement. Ces tches peuvent tre :
des transformations des requtes SQL des manipulations de fichiers (copie, suppression, tlchargement, etc.) des tests conditionnels des scripts (shell, JavaScript) des envois / rceptions de mails d'autres jobs etc.
Le rfrentiel
Les transformations et jobs sont normalement stocks dans des fichiers XML (.ktr/.kjb) Alternative : stockage d'un rfrentiel dans une BD
Les transformations, jobs et paramtres de connexions aux SGBD sont stocks dans une BD ddie
Support des SGBD spatiaux intgr dans le noyau d'E/S pour SGBD (utilisant JDBC)
Tous les steps pouvant accder aux BD supportent les colonnes gomtriques de manire transparente.
Entres / sorties
Lecture/criture de gomtries :
SGBD spatiaux:
PostgreSQL/PostGIS MySQL spatial Oracle Spatial / Locator
Note : il n'y a pas de steps distincts et ddis spcifiquement aux E/S PostGIS, Oracle Spatial et MySQL, puisque tous les steps de BD existants ont accs aux colonnes gomtriques. Philosophie : ne pas ajouter inutilement de nouveaux steps quand ceux existants font dj le travail tout en tant plus versatiles !
Analyses spatiales
Scripting sur objets gomtriques en langage JavaScript. Fonctions d'analyse spatiale:
Prdicats topologiques : intersects, touches, within, etc.
exploitables partir des steps de filtrage et de jointure
Fonctions spatiales : union, intersection, length, buffer, etc., soit toutes celles offertes par la librairie JTS
accessibles en JavaScript
SRS et projections
Gestion native des systmes de rfrence spatiaux (SRS) dans les mtadonnes des champs Geometry (librairie GeoTools referencing) Reprojection / changement de systme de rfrence spatiale Affectation d'un SRS Lecture et criture des mtadonnes de SRS :
Lecture des SRS depuis les sources de donnes : SGBD et Shapefile (.prj) Validation du SRS lors de l'insertion de donnes dans PostGIS et Oracle criture du fichier .prj lors de la cration d'un Shapefile
Exemple 5 Reprojection
Exemple 7 job
Conclusion
Amliorations venir
Prvisualisation cartographique Autres formats de fichiers (GML, MapInfo, etc.) Accs aux services WFS Steps avec dialogues pour fonctions d'analyse spatiale (buffer, union, etc.).
http://kettle.pentaho.org/ La documentation de Kettle est galement pertinente pour GeoKettle ! http://sourceforge.net/projects/geokettle/ Listes de diffusion :
geokettle-users geokettle-users-fr (en franais) geokettle-devel