Cerchi opzioni per ETL spaziale (Estrai, Trasforma, Carica)?


33

Sono interessato ai pro e contro di vari strumenti spaziali ETL (estrarre, trasformare, caricare). Se hai usato gli articoli elencati qui (o aggiungi i tuoi), cerco le tue opinioni ed esperienze. In particolare, vorrei vedere confronti sull'usabilità di:

Non è necessario fornire una revisione di TUTTI i software citati. Se hai esperienza anche con uno, sarà molto utile prendere una decisione su quale direzione andare.

Esempio: sto cercando di creare una funzione di conversione dello schema che mi permetta di selezionare il livello di input, creare una traduzione e produrre un nuovo schema predefinito. In modo ottimale, dopo aver creato lo script di traduzione, vorrei avere un modulo interattivo in cui posso "mappare" i campi nel mio livello di input al livello di output (ovvero: il livello di output avrà un campo chiamato "Indirizzo", come si chiama nel livello di input?)

Alcuni sono stati citati nelle Domande e risposte in Quali strumenti sono disponibili per il caricamento dei dati gis in un database?

E qui ci sono un paio di articoli correlati che ho trovato.

Risposte:


17

Questa domanda è stata convertita in Wiki della comunità e wiki bloccato perché è un esempio di una domanda che cerca un elenco di risposte e sembra essere abbastanza popolare da proteggerlo dalla chiusura. Dovrebbe essere trattato come un caso speciale e non dovrebbe essere visto come il tipo di domanda che è incoraggiata su questo o su qualsiasi sito Stack Stack, ma se desideri contribuire con più contenuti ad esso, sentiti libero di farlo modificando questa risposta .


Parlerò solo di ciò che ho visto in un contesto professionale. Un mio studente ha lavorato con un'azienda incaricata di ricevere, convalidare e integrare enormi quantità di dati spaziali, da una fonte ben nota (TeleAtlas) nel loro GIS. Ha utilizzato diversi flussi di lavoro utilizzando FME, eseguendo verifiche e trasformazioni molto complicate al volo, da un formato all'altro, come la selezione delle funzionalità, la verifica della topologia, la rimozione dei duplicati, ecc. Successivamente il flusso di lavoro è stato in grado di elaborare automaticamente set di dati in entrata.

Ero in giuria per un rapporto di prova vivo (scusate, google traduction di "soutenance de rapport de stage"), in cui lo studente ha descritto un altro flusso di lavoro FME come questo, ma questa volta per convalidare i set di dati regionali inviati a livello nazionale per l'integrazione alla banca dati nazionale sui rischi. La differenza principale è che in questo ultimo esempio il set di dati era in formati di file molto diversi, raster e vettoriale, scale e stili.

Infine, ho testato Spatial Data Integrator, l'ETL open source basato su Talend Open Studio. Le funzionalità erano numerose, tuttavia meno di quelle FME, ma penso che le differenze principali riguardassero la documentazione e la facilità d'uso della creazione del flusso di lavoro. Spesso sono stato costretto a modificare l'origine del codice java dei componenti del flusso di lavoro. Ma era una versione precedente di SDI, e le carenze che descrivo qui sono piuttosto comuni con i progetti open source all'inizio, e non possiamo confrontare sullo stesso livello software proprietario ben affinato e giovani contendenti open source gratuiti.


24

Per un recente progetto che lavora con diversi GB di dati spaziali, ho iniziato il caricamento / riproiezioni dei dati con FME. Ha funzionato bene, ma c'è una curva di apprendimento.

Alla fine del progetto stavo usando gli script Python per automatizzare i processi di risoluzione. La FME può essere gestita da script, ma se hai le basi di Python perché complicare ulteriormente le cose? Python ti offre la massima flessibilità e con ogni script di importazione scritto le tue abilità in Python stanno migliorando.

Ho trovato i seguenti pacchetti Python inestimabili quando si lavora con trasformazioni di dati:

Se hai un background di programmazione / programmatore, ti consiglio di usare Python, se preferisci lavorare con una GUI (che può anche generare belle immagini per la documentazione), raccomanderei FME.


11

Adoro l'open-source ma FME vince facilmente contro gli ETL opensource come meglio posso dire. In realtà è abbastanza economico anche per la manutenzione e il supporto (almeno rispetto alla maggior parte delle altre soluzioni aziendali che abbiamo per le cose).

Se stai cercando traduzioni tra formati, OGR potrebbe farlo (con alcune tubazioni in GDAL per le trasformazioni). Certo, questa è la riga di comando .

Per la modellazione visiva oltre a quelle elencate nel commento "possibile duplicato", stanno lavorando su un generatore di modelli QGIS / SEXTANTE; video di prova del concetto: https://www.youtube.com/watch?v=LTUu-I2ouqU

(No, non lavoro per Safe, sono solo un cliente relativamente felice).


il collegamento video è interrotto. Puoi aggiustarlo?
GeoStoneMarten


6

Ho fatto un confronto di vari strumenti circa un anno fa che contiene anche la maggior parte delle opzioni menzionate in questo thread.

Come risposta più diretta, utilizzo FME molto per la sua versatilità. Tuttavia, quando lavoro con strutture dati complesse come in CityGML, INSPIRE GML o modelli di database più grandi, utilizzo HALE , un'app open source sviluppata per ETL e in particolare l'armonizzazione.

inserisci qui la descrizione dell'immagine

Attualmente (dalla versione 2.9.0) si confronta con FME (2014 SP1) come segue:

  • HALE ha un numero inferiore di formati (HALE: 20, FME 200) e trasformatori (HALE: 30+, FME: più di 400), ma un ottimo supporto per tutti i dialetti XML / GML
  • HALE visualizza in anteprima i risultati della trasformazione in modo interattivo in una mappa e nelle viste tabella e convalida l'output direttamente
  • HALE è generalmente molto più veloce, poiché viene mantenuto il contesto locale per ogni attributo, ad esempio risparmiando molte FeatureMerger
  • HALE è Open Source e in uso dal 2010
  • HALE utilizza un'interfaccia utente di mappatura dichiarativa, che porta a un numero inferiore di input utente richiesti rispetto agli approcci procedurali

Nota che faccio parte del team HALE da diversi anni.


Come pensi che si accumuli oggi contro FME? Soprattutto per i feed di dati web e geoRSS?
Dr.YSG,

@ Dr.YSG la manutenzione di hale è stata rilevata da wetransform GmbH nel 2015, quindi c'è un team dedicato dietro il suo sviluppo. C'è stato un notevole sviluppo negli ultimi quattro anni. Le modifiche sono documentate nelle note di rilascio di GitHub. Supporta l'elaborazione di dati JSON / GeoJSON. GeoRSS è un semplice formato XML che riutilizza alcune parti di GML, quindi è completamente supportato. Per elaborare automaticamente i feed GeoRSS, dovresti esaminare hale-cli (l'interfaccia della riga di comando e altre API).
tr_xsdi,

5

Se guardi il link duplicato di blah238 troverai maggiori informazioni. Direi che Talend Open Studio e Pentaho GeoKettle sono le soluzioni open source più importanti che si possano scegliere. Di questi due obiettivi di Talend oltre a ETL e GeoKettle, un po 'più facile da usare per quanto ho letto.

Il mio comune sta per dare a GeoKettle una possibilità di scrivere un dialetto GML messo insieme dall'associazione svedese delle autorità e regioni locali (SALAR) e abbiamo bisogno di questo formato per consegnare i geodati a diversi interessi commerciali.

Credo che GeoKettle abbia il supporto per OGR / GDAL dalla versione 2.0.


5

FME è probabilmente il miglior prodotto da utilizzare in questo spazio. Dopodiché è GDAL / OGR. Un altro prodotto open source in questo spazio è geokettle - http://www.spatialytics.org/projects/geokettle/ anche se non l'ho mai usato con rabbia (essere abbastanza fortunato da avere menzionato entrambi gli altri prodotti).

Se nessuna di queste opzioni generiche funziona, probabilmente si desidera utilizzare uno strumento di conversione specifico.


3

Geokettle usato religiosamente per un piccolo progetto con curva di apprendimento elevata a meno che tu non sia abituato a un'interfaccia utente Eclipse ... Davvero potente in quanto compilato contro GDAL1.10 supporta tutti i tipi di geo ... Quello che mi è piaciuto è stato il supporto sia per i dati memorizzati che per i dati tramite servizi ... L'ho usato per ricreare e sincronizzare i set di dati del server ArcGIS su un'istanza postgis locale tramite ESRI json su GeoJSON ... Il flusso di lavoro può essere creato in condizioni e validazioni impostarlo per eseguire una query per # di objectid e in base alla compilazione di un CSV predefinito per iterare una richiesta di post per 500 funzionalità alla volta a seconda della prima query è stato in grado di consolidare tutte le richieste in un file geojson, eseguire ogr2ogr per caricare su postgis persino postgrip con script per eseguire il vuoto e indicizzarlo con esso ... Non affiliato solo un tifoso

È possibile eseguirlo e mappare un flusso di lavoro su gui desktop e utilizzare gli strumenti del server pentahos per configurarlo su Hadoop e farlo funzionare come script o cron job.


3

QGIS (almeno dalla versione 2.6 attuale) ora ha anche un generatore di modelli integrato. Attraverso questo toolbox puoi accedere a centinaia di algoritmi (GDAL, GRASS, SAGA, strumenti vettoriali, ecc.). Puoi anche aggiungere il tuo script.

Devo ammettere di non averlo usato ampiamente, ma se stavo cercando un modellista lo considererei degno di indagine.


0

[ATTENZIONE: una promozione gratuita di un prodotto con cui sono coinvolto]

Abbiamo lavorato su uno strumento per fare ETL. Ha un sapore simile a FME ma è progettato per compiti più semplici e richiede meno esperienza da utilizzare. Alcuni dettagli sono disponibili su https://www.geoactive.it basta cercare informazioni su Data Dragon. Questa applicazione utilizza GDAL / OGR nel back-end e stiamo spingendo eventuali aggiunte che facciamo di nuovo a GDAL / OGR.

L'uso commerciale richiede che sia acquistato, ma abbiamo licenze accademiche disponibili gratuitamente, quindi se vuoi usarlo per motivi di studio inviami un messaggio e ti fornirò alcuni dettagli in più.

Questo è nella fase di rilascio anticipato, quindi ci sono ancora alcuni bug minori, quindi per favore sii gentile con noi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.