4 votos

¿Número máximo de shapefiles para la herramienta de fusión?

Tengo más de 180.000 archivos shape que tengo que fusionar (o anexar) en un archivo shape final. He escrito un script en python para hacerlo que utiliza la herramienta acrpy.append_management. Sin embargo, el tiempo de ejecución es demasiado largo.

Estaba pensando en probar la herramienta de fusión, pero no creo que acepte tantos archivos shape y los fusione en un tiempo razonable.

¿Alguien tiene experiencia en la fusión de grandes conjuntos de datos? ¿Existe una forma eficaz de fusionar grandes cantidades de shapefiles?

3voto

CodeSlave Puntos 7133

Considere el uso de Dissolve. Esto escribirá la salida en una nueva clase de características, pero puede ser más eficiente. En mi experiencia, las operaciones de disolución han tomado menos tiempo que las de fusión. Ejecute un benchmark para determinar cuál es más rápido.

Puede haber algún problema con la fusión/disolución en relación con el rendimiento y la disolución de arcos circulares (como los resultados de los puntos de amortiguación, polilíneas). Densificar la geometría de entrada antes de ejecutar la fusión/disolución puede aumentar el rendimiento.

También puede considerar el uso de otro software que no sea ESRI. Algunos usuarios experimentan un aumento del ritmo de trabajo utilizando Postgres, por ejemplo (ver los hilos enlazados)

¿Medir la diferencia de rendimiento entre Merge y Append en ArcGIS Desktop?

¿Mejorar el rendimiento de ArcGIS Buffer/Dissolve?

1voto

horseman Puntos 407

Gracias por todas las grandes ideas.

Desgraciadamente, me vi obligado a utilizar arcGIS, ya que conseguir privilegios de administrador en mi lugar de trabajo es casi imposible.

Básicamente lo que terminé haciendo fue anexar 100 archivos a la vez en lugar de 1 a la vez. Esto redujo el tiempo de ejecución a poco más de 24 horas.

1voto

rptony Puntos 700

En primer lugar, 180.000 shapefiles es un gran número, como ya se ha sugerido, por favor, tenga en cuenta el límite de 2GB y el mapeo de campos.

En segundo lugar, hace algún tiempo conseguí algunos shapfiles y tampoco estaba contento con el rendimiento de arcpy merge/append. Así que he probado pyshp y yo estaba muy contento con el rendimiento.

La función de fusión completa se encuentra aquí. http://geospatialpython.com/2011/02/merging-lots-of-shapefiles-quickly.html y una versión actualizada aquí http://geospatialpython.com/2014/06/merging-shapefiles-with-pyshp-and-dbfpy.html

Estoy asumiendo que no tiene caracteres Unicode.

Por favor, comparta su experiencia.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X