Estou tentando recortar um conjunto de dados de polígono grande (~ 5 GB, milhares de recursos) por um conjunto de dados de polígono muito menor (~ 40 recursos). Existe uma prática recomendada ou uma rota mais eficiente para executar esta tarefa?
O clipe do geoprocessador padrão é executado indefinidamente em um conjunto de dados desse tamanho. Alguma forma de seleção e exportação espacial seria mais eficiente?
EDIT : Algumas ótimas respostas abaixo. Selecionei o que considero a resposta mais completa, mas cada resposta fornece uma visão única do problema. Obrigado!
arcgis-10.0
Radar
fonte
fonte
Respostas:
Como sempre, ao lidar com problemas de escalabilidade, é melhor começar pequeno e simples e trabalhar de maneira constante até grandes e complexos.
No caso do clipe, ele deve ser inteligente o suficiente para lidar com grandes conjuntos de dados, porque os agrupa internamente . Mas como não está funcionando, tente executar o Clip com o conjunto de dados de entrada (os dados a serem cortados) e o conjunto de dados do clipe (os dados com os quais o clipe é executado) com muitos, muitos menos recursos . Como um recurso de clipe, com apenas a área ao seu redor no conjunto de dados de entrada (use consultas de definição para reduzi-los). Verifique se está funcionando bem e aumente constantemente o escopo da operação de geoprocessamento até o desempenho diminuir.
Algumas idéias específicas:
Dissolva os recursos de clipe em uma única classe de recursos com várias partes.
Reduza o tamanho do arquivo dos recursos de entrada usando o Simplify Polygon . Um conjunto de dados vetoriais de 5 GB é enorme - mesmo um arquivo de forma de todos os 250.000 grupos de blocos do Censo dos EUA é de apenas 1 GB.
Divida os recursos de entrada em partes. Teoricamente, as rotinas de lado a lado internas da ferramenta de geoprocessamento já deveriam estar fazendo isso, mas você nunca sabe. Pode haver um problema de limitação de tamanho de arquivo de 32 bits em que você não pode ter um arquivo shapefile maior que 2 32 bytes = 4,29 GB.
Algumas outras dicas mais gerais de desempenho de geoprocessamento:
Verifique se os dois conjuntos de dados têm o mesmo sistema de coordenadas. Se possível, é mais rápido ter ambos em um sistema de coordenadas geográficas sem projeção.
Verifique se você não está ficando sem uma unidade de rede. Use o disco rígido local mais rápido ou, se possível, um SSD.
Carregue o conjunto de dados do clipe na memória .
Exclua os campos de atributos desnecessários (e junte-os mais tarde, se necessário).
Outras dicas de desempenho de geoprocessamento .
fonte
Algumas funções do ArcGIS, como Union e Intersect, usam processamento de subdivisão adaptável, conforme descrito em Processamento em mosaico de grandes conjuntos de dados . Infelizmente, parece que o Clip não possui uma grande ferramenta de geoprocessamento.
Parece que você pode replicar esse conceito por meio de um script ModelBuilder ou Python que usa a ferramenta Split (ArcInfo) para ajudar a processar conjuntos de dados grandes demais.
fonte
Ou você pode desistir do ArcGIS e tentar fazer o clipe no OGR. Veja uma explicação aqui . Descobri que isso funciona quando nada mais funciona!
fonte
Eu acho que até selecionar por local funcionará para você, primeiro você seleciona todo o polígono que se cruza com o seu shapefile menor e depois os exclui. espero que isso possa ser mais rápido. deixe-me saber se funciona para você. Obrigado.
fonte