Existem muitos trabalhos ETL que você pode querer acionar a partir do seu mapa e o padrão que exploraremos neste blog vai ajudá-lo a chegar lá.<\/P>
Aqui está um caso de uso, executar uma ferramenta web ETL que aceita feições de área de um mapa como entrada. A ferramenta web acontece de construir um geodatabase móvel que é retornado para minha sessão Pro ou widget de análise do Experience Builder como um arquivo local, mas você pode ETL dados de qualquer lugar para qualquer lugar, em qualquer formato. Os dados não precisam estar no seu mapa, ou mesmo no seu projeto ArcGIS Pro.<\/P>
Executando uma ferramenta web ETL no Pro<\/span><\/span><\/P>O download do blog tem minha caixa de ferramentas de exemplo, então vamos passar pelos passos. Há uma ferramenta modelo e uma ferramenta ETL na caixa de ferramentas do download do blog, o modelo envolve a ferramenta ETL. Usei ArcGIS Pro 3.6 e claro ArcGIS Data Interoperability para Pro 3.6.<\/P>ModelBuilder envolvendo o ETL<\/span><\/span><\/P>As coisas começam com um parâmetro de entrada FeatureSet, no meu caso com geometria poligonal destinada a ser a(s) área(s) de interesse contendo qualquer número de cidades dos EUA. No momento da execução isso permite que você escolha a partir de uma camada do mapa, navegue pelos dados ou crie suas próprias feições do zero. O FeatureSet é então escrito como dados EsriJSON para o caminho %scratchFolder%\\esri.json. <\/STRONG>Se você não está familiarizado com substituição inline de variáveis no ModelBuilder, então
Agora para uma pequena viagem no tempo. Imagine que você está construindo o modelo acima e tudo o que você tem é a entrada FeatureSet e a ferramenta Features to JSON no modelo. Salve e execute e você terá um arquivo esri.json na sua pasta scratch. Agora construa sua ferramenta ETL (incorporada, na mesma caixa de ferramentas que o modelo) que faz o que você quer dado o input EsriJSON. Aqui está a minha.<\/P>
ETL que lê EsriJSON e faz coisas<\/span><\/span><\/P>Como a anotação diz, um leitor EsriJSON (NB: com propriedade de entrada de caminho único) traz meu input do mapa, as feições são agregadas (quero uma feição, multipartes são OK) depois projetadas conforme necessário no meu processamento downstream. No meu caso a feição resultante é usada como iniciadora e filtro espacial em um FeatureReader, que extrai alguns dados do Living Atlas e os escreve em um geodatabase móvel com
Aqui estou editando parâmetros do usuário na ferramenta ETL e o superior é um parâmetro scriptado SCRATCHFOLDER que obtém o que ArcPy está usando, seja localmente no Pro ou em uma pasta de trabalho em uma ferramenta web. Parâmetros scriptados são avaliados antes que qualquer processamento de dados aconteça.<\/P>
Parâmetro scriptado SCRATCHFOLDER<\/span><\/span><\/P>O próximo parâmetro é o caminho do arquivo fonte EsriJSON, que será fornecido pelo modelo mas para garantir defini o caminho padrão para usar o parâmetro scriptado SCRATCHFOLDER. Note que você precisa salvar o estado do parâmetro após adicionar SCRATCHFOLDER e reabrir o diálogo para usar o valor em outros parâmetros.<\/P>Parâmetro de entrada EsriJSON<\/span><\/span><\/P>Agora o truque, o geodatabase móvel de saída é escrito com permissão para sobrescrever na pasta scratch.<\/P>Saída do geodatabase móvel para pasta scratch<\/span><\/span><\/P>Agora voltando ao modelo. A ferramenta ETL é adicionada e o arquivo EsriJSON conectado como sua entrada. A saída da ferramenta ETL é escrita para %scratchFolder%\\Extract.geodatabase.<\/P>De volta ao futuro<\/span><\\/span><\\/P>A última etapa é adicionar uma ferramenta modelo Calcular Valor que copia o caminho da saída para um novo parâmetro do tipo Arquivo. Isso é necessário porque a saída tem que ser Derivada para uma ferramenta web retornar dados. Certifique-se de que a saída da ferramenta ETL não esteja definida como intermediária no ModelBuilder ou você não terá saída! Confira a expressão Calcular Valor, ela é necessária para proteger o caminho da interpretação como tendo caracteres de escape garantindo que seja uma string raw.<\\/P>Os dados são retornados
Eu não tenho nenhuma associação de arquivo para arquivos .geodatabase, mas posso abrir o link no Data Inspector:
Geodatabase móvel no Data Inspector
Agora eu tenho uma ferramenta web ETL que posso compartilhar com meus colegas! Falando em colegas, sou grato a
Para clareza, os passos para construir minha ferramenta web foram:
Por favor, comente no post com suas experiências.
Membros conectados podem postar, seguir atualizações e mais. Novo aqui? Registre uma conta gratuita.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.