3
27 juil 2011

Introduction

Les outils d'Extraction, de Transformation et de Chargement, plus connu sous l'acronyme anglais ETL (Extract, Transform and Load), sont utilisés pour gérer les flux informationnels générés par les organismes. Bien que conçus au départ pour l'univers décisionnel, il est désormais possible de les intégrer à votre architecture de données géographiques. Cela se fait grâce à l'utilisation d'ETL capables de gérer la dimension spatiale.


Source : Spatialytics

Historiquement, le premier produit capable de gérer la dimension spatiale était le fameux logiciel FME développé par la société Safe. Mais, plus récemment, deux alternatives Open Source sont désormais disponibles. Toutes deux s'appuient sur des ETL (non spatiaux) déjà existants et y ajoutent la capacité de traiter des données géographiques. La première alternative, nommée Spatial Data Integrator (SDI) se base sur Talend Open Studio (TOS), la seconde nommée GeoKettle se base elle sur Pentaho data Integration (PDI mais plus connu sous le nom de kettle).

Attardons-nous sur cette dernière. En effet, une nouvelle version de Geokettle est disponible depuis la semaine dernière. Attendue depuis longtemps, celle-ci intègre un grand nombre de nouvelles fonctionnalités grâce notamment à l'intégration de nombreuses librairies Open Source à savoir, OGR, Sextante, JTS, GeoTools et deegree. Découvrons ensemble ce que cette nouvelle version apporte.

geokettle.png

Intégration de nouveaux formats de données

Grâce à l'intégration de la librairie OGR, il est désormais possible d'accéder à une soixantaine de formats de formats de données en lecture et/ou en écriture. A cela s'ajoutent également de nouveaux composants permettant le traitement des données GML et KML ainsi que l'intégration des normes OGC Sensor Observation Service (SOS) et Catalog Web Service (CSW)

ogr_geokettle.png

Analyse spatiale

Grâce à l'intégration des librairies JTS et sextante, Geokettle s'est enrichi d'un grand nombre de fonctions spatiales. Ces fonctions sont dépendantes du type de géométrie comme cela est illustré par les deux images ci-dessous.

sextante_1.png

sextante_2.png

La réalisation d'opérations géométriques sur les entités est également possible :

spatial_analyse.png

Ainsi que des calculs géométriques :

calcul.png

Enrichissement de l'interface

Enfin, concluons cette liste non exhaustive par l'ajout d'un module cartographique permettant de pré-visualiser les résultats des opérations. Cela représente à mon sens, l'une des fonctionnalités majeures de cette nouvelle version.

carto.png

Remarques & Conclusion

Comme le souligne Cedric Darbon d'atolCd, Geokettle entre dans le cour des grands avec cette nouvelle version. De nombreuses fonctionnalités ont été ajoutées et ce logiciel mérite largement sa place dans un système d'information géographique.

Mais, quelques détails mériteraient d'être améliorés. Ces remarques sont très subjectives car résultantes de ma seule opinion. Néanmoins, voici les quelques points que je soulignerai :

  • difficulté à localiser les extensions spatiales : Pentaho Data Integration dispose d'origine d'un grand nombre de modules. Pour un utilisateur novice il peut être difficile et déroutant de ne pas réussir à identifier facilement ceux utiles aux SIG. Il serait peut-être intéressant de n'afficher que les modules spatiaux quand une recherche portant sur les mots "geo" ou "spatial" est effectuée.
  • Regroupement des fonctionnalités : Il pourrait également être intéressant de regrouper les modules en fonction de leurs objectifs par exemple analyses spatiales, modification/création de géométries, etc. Cela permettrait d'identifier plus rapidement l'étape nécessaire.
  • Release early, release often : Enfin, entre cette version et la précédente près de deux ans s'étaient écoulés. A l'avenir, espérons que les futures release seront plus régulières. Mais peut-être est-ce prévu dans cette version 2 ?

Ressources complémentaires

Pour plus d'informations, n'hésitez pas à consulter :

A propos de l'auteur: 
GeoTribu

Toute l'actualité de la géomatique Open Source ! Mais aussi des tutoriels, des billets de blog, des tests et surtout une bonne humeur géographique !

Commentaires

Merci pour votre rapide et imagé survol de GeoKettle 2.0.

Merci aussi pour les commentaires constructifs dans votre conclusion.

Plein de bon sens! ... et pour ce qui est du "release early, release often", c'est notre intention et c'est souligné dans notre billet de blogue du site .ORG.

À suivre.

Luc Vaillancourt
Spatialytics

Merci Arnaud pour ce billet. L'univers des ETL spatiaux est en effectivement pas mal en ébullition ces dernières semaines ;-).

Concernant tes 2 premières remarques, il faut savoir que dans sa version antérieure, GeoKettle disposait d'une catégorie "Geospatial" qui regroupait toutes les étapes (une transformation dans GeoKettle est composée d'étapes - step en anglais) spécifiquement dédiées au traitement des données géospatiales (ex. affectation d'un SRS, transformation de SRS, ...). Elle ne comprenait pas toutes les étapes déjà existantes dans Kettle mais qui ont été enrichies (ex. Table Input qui permet maintenant la lecture dans les SGBD spatiaux, les étapes de filtrage de flux qui peuvent s'appuyer sur des critères spatiaux, ...) pour traiter la donnée spatiale. En effet, le spatial dans GeoKettle est partout ! La géométrie est dans GeoKettle, un type abstrait de données comme un autre (chaîne de caractères, entier, date, ...). La géométrie fait donc maintenant partie de l'ADN de GeoKettle, si je peux m'exprimer ainsi.

Cependant, disposer d'une catégorie Geospatial qui ne regroupait que les étapes purement spécifiques au traitement des données spatiales induisait une fausse perception (effet négatif), à savoir que les capacités spatiales de GeoKettle n'étaient limitées qu'à ces seules étapes, ce qui du fait de ce qui précède, est totalement faux. C'est pourquoi, il a été décidé de la supprimer et de distribuer les étapes qui se trouvaient dans cette catégorie au sein des catégories existantes (Input, Output, Transform, ...). Cela permet également de coller à la logique de classification des étapes déjà en place dans Kettle, qui une fois que l'on se l'aie appropriée, apparaît naturelle et efficace. Tout ceci aide aussi à ce qu'un utilisateur de Kettle qui passe à GeoKettle s'y retrouve très facilement.

J'aime néanmoins beaucoup ton idée que les étapes explicitement liées au géospatial puissent apparaître lorsque l'on fait une recherche par mot clef geo ou spatial dans la boîte à outil des steps. Je viens d'ailleurs de créer un ticket sur le trac du projet (http://trac.spatialytics.com/geokettle/ticket/6) à ce propos. Cela devrait donc être disponible pour la version 2.0 stable ;-).

Pour le release often, release early, Luc a déjà apporté une partie de la réponse. Disons que cette nouvelle mouture de GeoKettle, ainsi que toute l'infrastructure mise en place pour la remontée de bug et le fait que Spatialytics existe et prenne en charge une bonne partie des développements attachés à GeoKettle, aide grandement à se placer dans cette démarche. Pour ceux que compiler son propre code ne rebute pas, je vous invite à récupérer les sources de GeoKettle depuis le repository svn du projet, des corrections de bugs mineurs et ajouts de petites choses sont dores et déjà disponibles.

Encore merci pour ce billet et en espérant avoir apporté des infos complémentaires interessantes,

Au plaisir.

Thierry Badard
Spatialytics

Avec un peu de retard, merci à vous deux pour ces précisions !
A bientôt pour de nouvelles discussions autour du GeoBi

Arnaud