Procurando opções para ETL espacial (extrair, transformar, carregar)?

33

Estou interessado nos prós e contras de várias ferramentas espaciais de ETL (extrair, transformar, carregar). Se você usou os itens listados aqui (ou adicione os seus), busco suas opiniões e experiências. Em particular, eu gostaria de ver comparações de usabilidade de:

Não há necessidade de revisar TODOS os softwares mencionados. Se você tiver experiência com um, isso será muito benéfico para tomar uma decisão sobre qual direção seguir.

Exemplo: Estou procurando criar uma função de conversão de esquema que permita selecionar a camada de entrada, criar uma conversão e gerar um novo esquema predefinido. De maneira ideal, depois de criar o script de tradução, gostaria de ter um formulário interativo onde possa "mapear" os campos da minha camada de entrada para a camada de saída (ou seja, a camada de saída terá um campo chamado "Endereço", como é chamado na camada de entrada?)

Alguns foram mencionados nas perguntas e respostas em Quais ferramentas estão disponíveis para carregar dados GIS em um banco de dados?

E aqui estão alguns artigos relacionados que eu encontrei.

RyanDalton
fonte

Respostas:

17

Esta pergunta foi convertida em Wiki da Comunidade e a wiki bloqueada porque é um exemplo de pergunta que busca uma lista de respostas e parece ser popular o suficiente para protegê-la do fechamento. Ele deve ser tratado como um caso especial e não deve ser visto como o tipo de pergunta incentivada neste ou em qualquer site do Stack Exchange, mas se você deseja contribuir com mais conteúdo, sinta-se à vontade editando esta resposta .


Vou falar apenas sobre o que vi em um contexto profissional. Um estudante meu trabalhou com uma empresa encarregada de receber, validar e integrar grandes quantidades de dados espaciais, de uma fonte bem conhecida (TeleAtlas) em seus SIG. Ela usou vários fluxos de trabalho usando o FME, realizando verificações e transformações muito complicadas em tempo real, de um formato para outro, como seleção de recursos, verificação de topologia, remoção de duplicatas etc. O fluxo de trabalho foi capaz de processar posteriormente os conjuntos de dados recebidos automaticamente.

Eu participei de um júri de um relatório de liberdade condicional viva (desculpe, tradução do google para "pesquisa de relacionamento"), onde o aluno descreveu outro fluxo de trabalho de FME como este, mas desta vez para validar os conjuntos de dados regionais enviados ao nível nacional para integração à base de dados nacional de riscos. A principal diferença é que, neste último exemplo, o conjunto de dados estava em diversos formatos de arquivo, varredura e vetor, escalas e estilos.

Por fim, testei o Spatial Data Integrator, o ETL de código aberto baseado no Talend Open Studio. Os recursos eram numerosos, porém menores que os do FME, mas acho que as principais diferenças estavam na documentação e na facilidade de uso da criação do fluxo de trabalho. Fui muitas vezes forçado a modificar a fonte de código java dos componentes do fluxo de trabalho. Mas era uma versão anterior do SDI, e as deficiências que descrevo aqui são um tanto comuns nos projetos de código aberto no início, e não podemos comparar no mesmo nível software proprietário aprimorado e jovens candidatos a código aberto gratuitos.

PolyGeo
fonte
24

Para um projeto recente trabalhando com vários GBs de dados espaciais, iniciei o carregamento / reprojeção de dados com o FME. Funcionou bem, mas há uma curva de aprendizado.

No final do projeto, eu estava usando scripts Python para automatizar os processos de recuperação. O FME pode ser roteirizado, mas se você tem o básico do Python, por que complicar ainda mais as coisas? O Python oferece flexibilidade completa e, com cada script de importação escrito, suas habilidades em Python estão melhorando.

Eu achei os seguintes pacotes Python inestimáveis ​​ao trabalhar com transformações de dados:

Se você tem experiência em programação / desenvolvedor, recomendo usar o Python, se preferir trabalhar com uma GUI (que também pode gerar boas imagens para a documentação), recomendo o FME.

geografia
fonte
11

Eu amo código aberto, mas o FME vence com facilidade contra os ETLs de código aberto da melhor maneira que posso dizer. Na verdade, é muito barato também para manutenção e suporte (pelo menos em comparação com a maioria das outras soluções corporativas que possuímos).

Se você estiver procurando por traduções entre os formatos, o OGR poderá fazê-lo (com algumas alterações no GDAL para transformações). Claro, isso é linha de comando .

Para modelagem visual além das listadas no comentário "possível duplicata", eles estão trabalhando em um construtor de modelos QGIS / SEXTANTE; vídeo de prova de conceito: https://www.youtube.com/watch?v=LTUu-I2ouqU

(Não, não trabalho para a Safe, sou apenas um cliente relativamente feliz).

GIS-Jonathan
fonte
link do vídeo está quebrado. Consegues consertar isso?
GeoStoneMarten
6

A maioria das operações simples pode ser realizada por esses utilitários de código aberto

  • ogr2ogr para vetor
  • gdal_translate e gdalwarp para varredura

Obtenha o FWtools http://fwtools.maptools.org/ e experimente.

pensamentos espaciais
fonte
6

Fiz uma comparação de várias ferramentas há cerca de um ano, que também contém a maioria das opções mencionadas neste tópico.

Como resposta mais direta, uso muito o FME devido à sua versatilidade. No entanto, quando trabalho com estruturas de dados complexas, como CityGML, INSPIRE GML ou modelos de banco de dados maiores, uso o HALE , um aplicativo de código aberto desenvolvido para ETL e particularmente para harmonização.

insira a descrição da imagem aqui

Atualmente (a partir da versão 2.9.0), ele se compara ao FME (2014 SP1) da seguinte maneira:

  • O HALE possui um número menor de formatos (HALE: 20, FME 200) e transformadores (HALE: 30+, FME: mais de 400), mas com muito bom suporte para todos os dialetos XML / GML
  • O HALE visualiza os resultados da transformação interativamente em um mapa e nas visualizações de tabela e valida a saída diretamente
  • O HALE geralmente é muito mais rápido, pois o contexto local para cada atributo é mantido, economizando muitos FeatureMergers, por exemplo
  • HALE é Open Source e está em uso desde 2010
  • O HALE usa uma interface do usuário de mapeamento declarativo, o que leva a um número menor de entradas necessárias do usuário em comparação com abordagens procedimentais

Observe que estou na equipe da HALE há alguns anos.

tr_xsdi
fonte
Como você acha que ele está hoje contra o FME? Especialmente para feeds de dados da web e geoRSS?
precisa saber é
@ Dr.YSG a manutenção do hale foi assumida pela wetransform GmbH em 2015, então agora há uma equipe dedicada por trás do seu desenvolvimento. Houve um desenvolvimento substancial nos últimos quatro anos. As alterações estão documentadas nas notas de versão do GitHub. Ele suporta o processamento de dados JSON / GeoJSON. O GeoRSS é um formato XML simples que reutiliza algumas partes do GML, portanto também é totalmente suportado. Para processar automaticamente os feeds do GeoRSS, convém consultar o hale-cli (a interface da linha de comandos e outras APIs).
tr_xsdi
5

Se você olhar o link duplicado do blah238s, encontrará mais informações. Eu diria que o Talend Open Studio e o Pentaho GeoKettle são as soluções de código aberto mais importantes que se pode escolher. Desses dois destinos, o Talend é mais do que apenas ETL e GeoKettle, um pouco mais fácil de usar, até onde eu li.

Meu município está prestes a testar o GeoKettle para escrever um dialeto GML elaborado pela associação sueca de autoridades e regiões locais (SALAR) e precisamos desse formato para fornecer dados geográficos a diferentes interesses comerciais.

Acredito que o GeoKettle tenha suporte para OGR / GDAL da versão 2.0.

FishHead
fonte
5

FME é provavelmente o melhor produto para usar neste espaço. Depois disso, é GDAL / OGR. Outro produto de código aberto nesse espaço é o geokettle - http://www.spatialytics.org/projects/geokettle/, embora eu nunca o tenha usado com raiva (tendo a sorte de ter os outros dois produtos mencionados).

Se nenhuma dessas opções genéricas funcionar, você provavelmente desejará usar uma ferramenta de conversão específica.

Rob Booth
fonte
3

Usei Geokettle religiosamente para uma pequena curva de aprendizado de projeto pequeno, a menos que você estivesse acostumado a uma interface do Eclipse ... Realmente poderoso, pois compilado com o GDAL1.10 suporta todos os tipos geográficos ... O que eu gostei foi o suporte a dados armazenados e dados por meio de serviços ... usei-o para recriar e sincronizar conjuntos de dados do servidor ArcGIS em uma instância local do postgis via ESRI json para GeoJSON ... O fluxo de trabalho pode criar condições e validação configurá-lo para consultar # of objectid e com base nessa compilação de um csv predefinido para iterar uma solicitação de postagem para 500 recursos por vez, dependendo da primeira consulta, foi capaz de consolidar todas as solicitações em um arquivo geojson, execute ogr2ogr para carregar no postgis e até mesmo postgis com script para executar o vácuo e indexar com ele ... Não é afiliado apenas um fã

Você pode executá-lo e mapear um fluxo de trabalho na GUI da área de trabalho e usar as ferramentas do servidor pentahos para configurá-lo no Hadoop e executá-lo como um script ou tarefa cron.

user33290
fonte
3

O QGIS (pelo menos desde a versão atual 2.6) agora também possui um construtor de modelos integrado. Através desta caixa de ferramentas, você pode acessar centenas de algoritmos (GDAL, GRASS, SAGA, ferramentas vetoriais, etc.). Você também pode adicionar seu próprio script.

Devo admitir que não o usei extensivamente, mas se estivesse procurando por um construtor de modelos, consideraria digno de investigação.

congelamento
fonte
0

[AVISO: promoção gratuita de um produto em que estou envolvido]

Estamos trabalhando em uma ferramenta para fazer ETL. Tem sabor semelhante ao FME, mas foi projetado para tarefas mais simples e requer menos experiência para usar. Alguns detalhes podem ser encontrados em https://www.geoactive.it, basta procurar informações sobre o Data Dragon. Este aplicativo usa GDAL / OGR no back-end e estamos enviando quaisquer adições que fizermos de volta ao GDAL / OGR.

O uso comercial exige que ele seja comprado, mas temos licenças acadêmicas disponíveis gratuitamente. Se você quiser usá-lo para estudar, envie uma mensagem para mim e forneceremos mais alguns detalhes.

Esta é a fase inicial de lançamento, então ainda existem alguns pequenos bugs, então seja gentil conosco.

Darkcylde
fonte