fme world tour 2016: découvrez fme

Post on 12-Jan-2017

421 Views

Category:

Data & Analytics

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

11

Introduction à FME

Introduction FME - 2016 - GIM

Van Oudenhove Jean-Pierre

22

FME = ETL spatial

Introduction FME - 2016 - GIM

ETL pour:▶ Extract:

- Lecture de données sources- Requête de données

▶ Transform:- Transformations alphanumériques

et géométriques- Modification de données- Validation de données- Combinaison de données

▶ Load- Ecriture au format désiré

Spatial pour: ▶ Gestion des géométries et localisation

33

ETL spatial complet

Introduction FME - 2016 - GIM

1. Process

2. Automate

3. Notify

Les défis ETL :▶ Intégration des systèmes CAD et SIG▶ Migration de données▶ Validation et correction de données ▶ Intégration et traitement de données▶ Automatisation

44

Process

Introduction FME - 2016 - GIM

1. Que peut-on faire?

2. Avec quelles données?

3. Comment travailler?

55

Que peut-on faire?

Introduction FME - 2016 - GIM

1. Transformation▶ Agrégation▶ Extraction▶ Conversion▶ Modèle de données

2. Publication▶ Webservices▶ Data Ware House

3. Intégration▶ Systèmes (SOA)▶ Réplication, synchro

4. Validation▶ Qualité▶ Modèle de donnée▶ Règles métier

66

Process

Introduction FME - 2016 - GIM

1. Que peut-on faire?

2. Avec quelles données?

3. Comment travailler?

77

Quelles données?

Introduction FME - 2016 - GIM

Plus de 325 formats:▶ DB▶ CAD▶ BIM▶ GIS▶ Web▶ Generic: xml, Json▶ Courant: pdf, xls…

88

Plus de 325 formats pris en charge

Introduction FME - 2015 - GIM

99

Plus de 325 formats pris en charge

Introduction FME - 2016 - GIM

SIG (vecteur)▶ ESRI shape▶ Mapinfo MIF/MID▶ Mapinfo TAB▶ Adobe Geospatial PDF▶ GML, XML, KML▶ …

CAD▶ AutoCAD DWG/DXF▶ AutoCAD Civil 3D (Read)▶ Bentley Microstation Desgin DGN▶ …

1010

Plus de 325 formats pris en charge

Introduction FME - 2016 - GIM

Raster▶ ESRI grid▶ GeoTIFF▶ IMG▶ MrSID (read only)▶ JPG, JPEG 2000▶ ECW▶ NetCDF▶ …

Point Cloud▶ LIDAR LAS▶ Pointcloud XYZ▶ …

3D /BIM (Building Information Modeling)▶ CityGML▶ GoogleSketchup▶ Adobe 3D PDF (write only)▶ AutoCAD civil 3D (read only)▶ …

1111

Plus de 325 formats pris en charge

Introduction FME - 2016 - GIM

Base de données▶ ESRI Geodatabases▶ Oracle▶ Smallworld▶ Informix▶ Geomedia Warehouse▶ Teradata▶ PostGIS

Non spatial format▶ csv, txt▶ Excel▶ Access▶ Dossiers (Copy/paste)▶ …

1212

Process

Introduction FME - 2016 - GIM

1. Que peut-on faire?

2. Avec quelles données?

3. Comment travailler?

1313

Composants multi-plateforme

Introduction FME - 2016 - GIM

▶ FME Desktop▶ Modélisation de processus▶ Visualisation de données▶ Traitement de données

▶ FME Server*▶ WebUI▶ API REST et SOAP▶ Intégré dans Active directory

▶ FME Cloud*▶ FME server sur AWS▶ Evolutif▶ Paiement à la consommation

▶ FME Mobile (free app)▶ Android / iOS API▶ Report to FME server (location…)▶ Get notified by FME server

*Uniquement possible en combinaison avec au moins un licence FME desktop

1414

Concrètement

Introduction FME - 2015 - GIM

Composants de FME desktop▶ FME Data Inspector

▶ FME.exe▶ FME quick translator▶ FME Workbench

1515

FME desktop Interroperabilité - Démo

Introduction FME - 2016 - GIM

MITAB: provinces

Shapefile: communes

Tableau Excel: hab./commune

Inputs Output: KML

1616

FME Transformers

Introduction FME - 2016 - GIM

▶ « Transformers »= outils pour restructurer des données

▶ Transformers géométriques▶ Restructurer la composante spatiale

d'un ensemble de données

▶ Transformers attributs▶ Restructurer la composante non-spatiale

d'un ensemble de données

▶ Plus de 500 Transformers (3D, Calculators, Filters, Geometric operators, Coordinate systems,, Lists, Point Cloud, Rasters, ...)

Source Destination

1717

FME Transformers

Introduction FME - 2016 - GIM

▶ FME montre le nombre d’objets (no black box)

▶ C’est simple d’ajouter des transformers difficiles

1818

FME Custom Transformers

Introduction FME - 2016 - GIM

▶ Modularisation du code▶ Permet de mutualiser les développements▶ Facilite le testing▶ Déploiement spécifique:

▶ Linked (lié)▶ Embeded (embarqué)

1919

ETL spatial complet

Introduction FME - 2016 - GIM

1. Process

2. Automate

3. Notify

2020

Automate

Introduction FME - 2016 - GIM

1. Automatisation avec FME desktop

2. Automatisation avec FME server

2121

Automate – FME Desktop

Introduction FME - 2016 - GIM

▶ Chaînage de transformer = automatisation de traitements▶ Requêtes et opérations spatiales▶ Mapping attributs▶ Application des règles métiers

▶ Modèles paramétrables et réutilisables▶ Fonction « prompt and run »▶ FME Quick translator▶ Déclenchement par batch

▶ Ecriture en fanout

2222

Automate – FME Desktop

Introduction FME - 2016 - GIM

▶ Exemple ▶ Fonction « Fanout »

BelgianRailroads

BelgianCommunesSimple model

Simple et rapide!

2323

Automate – FME Desktop

Introduction FME - 2015 - GIM

▶ Chaînage des processus ▶ Utilisation de batch complexes▶ Utilisation du WorkspaceRunner dans un controler▶ Utilisation de la class workspace runner en python

2424

Automate – FME Server

Introduction FME - 2016 - GIM

▶ Gestions des tâches▶ Echéancier, triggers▶ Gestion des priorités▶ SOA exposition de webservices

▶ Datastreaming▶ Temps réel (websocket)

2525

Monitor – Notification (FME Server)

Introduction FME - 2016 - GIM

Notification▶ Déclenchement suite à un évènement

▶ Message IMAP, SMTP▶ Message UDP (streaming, xml, JSON)▶ Message dans un dossier ou FTP (directory

watch)▶ Suite à l'exécution d'un processus

▶ e-mail, SMS à l'utilisateur▶ HTTP push▶ FTP upload

2626

Monitor - Reporting

Introduction FME - 2015 - GIM

Reporting▶ Historique des « logs » des transformations▶ Reporting (Statistics, rapport) métier

spécifique▶ Xlsx, Pdf, DB,…

2727

Liens utiles

Introduction FME - 2016 - GIM

▶ https://knowledge.safe.com/▶ http://blog.safe.com/

2828

Exemples de projets FME réalisés par GIM

Introduction FME - 2016 - GIM

▶ Validations de données▶ Projet VMM: Amélioration de la base données

égouttage▶ Intégration de données

▶ Projet AGIV: Wegenregister

▶ Chargement de données▶ Projet SPW

2929

Example

Inleiding FME - 2015 - GIM

Validations de données

Projet VMM

Amélioration de la base données égouttage

3030

Contrôle Qualité de données et automatisation

Introduction FME - 2016 - GIM

CONTEXTE▶ Amélioration de la base données égouttage: VMM -

Vlaamse Milieu Maatschappij (Agence flamande de l’environnement)

▶ Base de données du réseau d’égouttage▶ Planification et suivi du traitement de l'eau et des

infrastructures d'assainissement ▶ Dimensionnement en fonction du nbre habitant

Traitement de données CAD Stockage dans la base de données

spatiales AWIS (Informix)

3131

Contrôle Qualité de données et automatisation

Introduction FME - 2016 - GIM

PROBLÉMATIQUE▶ Traitement manuel, pas de corrections automatiques▶ Accès aux données que le lendemain (après traitement

Informix)▶ Erreur de chargement fichiers SHAPE dans Informix ▶ Contrôle via ETL alphanumérique et code Java → pas de

contrôle de la topologie▶ Flux de données complexe

Demande de VMM▶ Automatisation de la validation des données▶ Contrôle de la géométrie des objets, de la topologie

et de l’analyse géographique par un logiciel ETL, ▶ Résolution du problème de chargement des fichiers

SHAPE

3232

Contrôle Qualité de données et automatisation

Introduction FME - 2016 - GIM

SOLUTIONSPhase 1: Analyse

▶ Analyse des données et traitement avec FME▶ Amélioration du flux de données et du travail opérationnel

avec FME▶ Résultats

▶ Correction partiellement automatisée avec FME▶ FME peut charger correctement et lire les objets de la base de

données Informix ▶ FME peut effectuer toutes les règles existantes en matière de

validation alphanumérique et affiner les règles topologiques

▶ Amélioration de la diffusion de données avec FME Server

3333

Contrôle Qualité de données et automatisation

Introduction FME - 2015 - GIM

SOLUTIONSPhase 2: Corrections topologiques automatisées

▶ « Accrochage »▶ Fusion des segments en fct de conditions

▶ Les segments appartiennent au même réseau▶ Les segments sont alignés▶ …

▶ Identification des boucles▶ Résultats

▶ Réseau topologiquement correct!• 60426 segments « snapped »• 21 % des segments étaient combinés

▶ Toutes les boucles détectées!

3434

Contrôle Qualité de données et automatisation

Introduction FME - 2016 - GIM

SOLUTIONSPhase 3: Processus de flux de données

User/Editor using ArcGIS

FME Server

Download MyData

Validate MyData

Upload MyData

Extract & Lock

Upload & Unlock

User uses web interface to interact with FME

Author using FME Desktop to model

Validateddata

Data being edited

Data editor environment

FME Author environmentPublish Workbench to FME Server

Data to be edited

Data ready for upload

Database Server

PC

Citrix

Network Disk

Query

Server administratormonitoring FME server

NoYes

Log file

AWISInformix

Spatial DatabladeProductie

AWISInformix

Spatial DatabladeStaging

ETL

Cancel Download

3535

Contrôle Qualité de données et automatisation

Introduction FME - 2016 - GIM

SOLUTIONSPhase 3: Validation Rapport (HTML) Shapefile (Avec erreurs)

3636 Introduction FME - 2016 - GIM

Exemple de règle topologique: Un segment ne peut pas se croiser.

Contrôle Qualité de données et automatisation

3737

Contrôle Qualité de données et automatisation

Introduction FME - 2016 - GIM

INTÉRÊTS DE LA SOLUTION▶ Maintien des éléments de base du système

▶ Outil d’édition dans ArcMap ▶ Base de données AWIS

Outils ETL existants comme contrôle supplémentaire▶ Maintenance

▶ Ajout ou modification des règles de validation▶ Gain de temps

▶ Grâce à la validation (Traitement immédiat)▶ Grâce aux fichiers log (shapefiles)

▶ Processus de chargement sans erreurs

3838

Example

Inleiding FME - 2016 - GIM

Intégration de données

Projet AGIV

Wegenregister

3939

Intégration de données: Wegenregister

Inleiding FME - 2016 - GIM

But: ▶ Intégration de 2 sources différents

▶ GRB (AGIV) ▶ Géométrie: Uniquement routes primaires (voitures)▶ Attributs: Axe de la route (code de la route, type de

recouvrement, type de morphologie)

▶ ITGI (NGI)▶ Géométrie: Routes primaires et secondaires (piste cyclable et

chemins)▶ Attributs: Largeur, nombre de voies, type de route

4040

Intégration de données: Wegenregister

Inleiding FME - 2016 - GIM

Résultaat:

4141

Example

Inleiding FME - 2016 - GIM

Chargement de données

Projet SPW

Geoportail

4242

Chargement de données

Introduction FME - 2016 - GIM

CONTEXTE

▶ Mise à jour du Géoportail de la Wallonie▶ Les différentes directions générales sont producteurs

et responsables des données▶ Le Service Public de Wallonie est responsable de la

diffusion

4343

Chargement de données

Introduction FME - 2016 - GIM

PROBLÉMATIQUE:▶ Les directions générales prennent la décision de mettre à

jour les données disponibles sur WalOnMap▶ Une procédure en partie manuelle est déclenchée par un

opérateur▶ Les données sont chargées dans InfraSIG, la base oracle de

diffusion.

4444

Chargement de données

Introduction FME - 2016 - GIM

DEMANDE:▶ Déclenchement automatique du chargement données dans

l’infrastructure de diffusion InfraSIG▶ Pas de chargement partiel de jeux de données▶ Développement générique et configurable▶ Mise à jour automatique des métadonnées dans MetaWal▶ La plateforme doit pouvoir être appelée par une application

web

4545

Chargement de données

Introduction FME - 2016 - GIM

RÉALISATION:Architecture modulaire

▶ Générique:▶ Chargement de la configuration (CT)▶ Vérification de qualité géométrique (CT)▶ Chargement dans staging (WS)▶ Mise à jour de InfraSIG (WS)▶ Mise à jour de Metawal (WS)▶ Reporting des activités (WS)▶ Notification

▶ Spécifique:▶ Transformation et traitement particuliers

Workflow géré par des WS controllers dans FME server

4646

Chargement de données

Introduction FME - 2016 - GIM

CONFIGURATION MÉTIER:▶ Un fichier de configuration unique▶ Lu par un custom transformer

4747

Chargement de données

Introduction FME - 2016 - GIM

QUALITÉ GEOMÉTRIQUE:▶ Self intersection▶ Coordonnées dupliquées▶ Géométries dupliquées▶ Slivers, slivers donut, point donut▶ Spikes, donut spikes▶ Polygones non fermés▶ Donut hors géométries▶ Snapping, accrochage

4848

Chargement de données

Introduction FME - 2016 - GIM

Mise à jour InfraSIG:▶ FULL, UPDATE, APPEND, MIXED▶ Une seule transaction pour tout le jeux de données

▶ Un script python crée dynamiquement un « statement » SQL à faire exécuter par ORACLE.

▶ Le « roll back » est complet en cas d’erreur▶ 100% dans FME

4949

Chargement de données

Introduction FME - 2016 - GIM

WORKSPACE CONTROLLER:▶ Il reçoit les instructions pour une demande de chargement

▶ Jeux de données▶ Producteur, email

▶ Il construit les paramètres pour chaque module et les appelle dans la séquence nécessaire pour le jeux de données

5050

GIM et Safe software

Introduction FME - 2016 - GIM

GIM▶ VAR-partner depuis 1999 (Value added reseller)▶ Distributeur et contact en Belgique▶ Maintenance et support annuel▶ Informe les clients de nouvelles fonctionnalités et

modifications

▶ +- 10 développeurs FME

5151

Formations FME de GIM

Introduction FME - 2016 - GIM

▶ Matériel de formation de qualité de Safe Software (anglais)

▶ Formateur = FME Certified Trainer

▶ Formations disponibles▶ FME Desktop (2 jours)▶ FME Server (2 jours)

▶ Formation sur mesure/à la demande▶ FME Advanced Module

En savoir plus www.gim.be

5252

Références Belges

Introduction FME - 2016 - GIM

5353

Conclusions: Pourquoi FME?

Introduction FME - 2016 - GIM

▶ Economiser de l’argent et du temps▶ L’échange et le traitement de données est un jeu d’enfant!

▶ Augmenter la productivité▶ Automatiser les processus

▶ Aller droit au but▶ Aucune expérience de programmation requise

▶ Obtenir plus de vos données▶ Combiner de multiples sources de données à de nouvelles informations

▶ Améliorer les processus ETL▶ Optimiser les flux de données

▶ Automatiser les tâches▶ Débarrassez-vous de fastidieuses tâches répétitives en les remplaçant

par des processus automatisés

5454

Conclusions

Introduction FME - 2015 - GIM

www.gim.bejean-pierre.vanoudenhove@gim.be

top related