Processing math: 100%

7 votos

Gran Open Street Map OSM archivo Shapefile. Hay alguna esperanza para 32 bits FME?

Tengo un gran OSM archivo XML (alrededor de 8 GB) que tenía la esperanza de que en el proceso de la OMF. Tengo una mesa de trabajo que he usado anteriormente para procesar archivos más pequeños (500 MB) en función del tipo específico de Archivos (por ejemplo, waterway_line, waterway_polygon etc.).

En esta mesa de trabajo, simplemente los he añadido a la OSM lector, lo dejó todo como predeterminado, y FME amablemente se agrupan las funciones de utilidad de las categorías de envío de cada uno para el adecuado Shapefile.

Por desgracia, mi sistema operativo de 32 bits no puede administrar el archivo más grande. Debido a que todo el archivo XML se puede leer en el inicio de la transformación de la memoria sólo construye y construye hasta que el proceso se haya alcanzado el límite antes de la OMF siquiera ha leído todos los entrantes características.

Una de las cosas FME por defecto es construir los polígonos de líneas (raw datos de OSM no reconocer polígonos), así que si se me rompe el área de seguridad en archivos más pequeños que yo podría acabar con los polígonos que se encuentran artificialmente dividida (por ejemplo, áreas de uso de la tierra) y terminan siendo etiquetados dos veces y tener espurios de las fronteras a través de la media.

Una opción es cargar mi archivo OSM en PostGIS, y FME puede leer datos de PostGIS (estoy suponiendo que esto va a ayudar a superar el límite de memoria como la base de datos se puede leer fila por fila), pero luego FMW no saber a las características de los grupos en los útiles categorías y que los Shapefiles que debe terminar en.

Básicamente, parece que simplemente no puede usar de la OMF para procesar un gran archivo OSM a los Shapefiles. Lo que realmente quiero saber es:

  1. Hay alguna manera de que me puede convencer de la OMF para hacer lo que quiero?
  2. Hay otras herramientas que pueden crear similar conveniente Shapefile agrupaciones de tipos de entidad?
  3. EDIT ¿Cómo Cloudmade y GeoFabrik crear su enorme Shapefiles? Están utilizando una herramienta diferente yo no sé?

Cualquier entrada muy apreciado.

(nota: no tengo acceso a una de 64 bits de la OMF máquina, y el pre-procesado Shapefiles de Cloudmade / GeoFabrik son suficientes para mis necesidades)

5voto

rkthkr Puntos 6651

Me tocó un montón de paredes con FME (incluyendo la RAM a pesar de tener 36 GB para jugar), pero normalmente pueden ser resueltos. No estoy seguro de si hay algo específico acerca de la OSM lector de XML que requiere de la agrupación así que voy a suponer que no.

La primera cosa que me gustaría sugerir es leer mi respuesta aquí - Depuración FMW uso de memoria cerca de la base en el Grupo de Transformadores - que básicamente dice: no use los meros. Excepto que desea agregar y de grupo.

Para hacerlo dentro de la OMF mi sugerencia sería como sigue:

  • a) Crear un área de trabajo que tiene el lector y, a continuación, escribe el directorio de datos a una base de datos de su elección. Puede que desee utilizar un FeatureTypeFilter en que hay que dividir en tablas separadas. Usted puede agregar el atributo guardianes/removedores demasiado, pero hagas lo que hagas, no agregar una Agrupación de transformador. Porque no hay meros este no requiere de RAM como todo lo que acaba de pasar directamente a través de.

  • b) una Vez que los datos están en su base de datos que puede procesar con un segundo espacio de trabajo. Lo ideal sería que usted puede hacer esto en una tabla por tabla y así agrupación debe ser de menos de un problema. También se puede hacer con "Start_feature" y "Max_features_to_read" para limitar su uso de RAM. Si usted puede averiguar lo que la agrupación de elementos, usted será capaz de escribir SQL carga sólo aquellas características utilizando SQLCreator.

También - al menos en mi máquina FME nunca realmente "funciona" de RAM. Lo que pasa es que cuando esta se acerca a usar toda la RAM, FME simplemente empieza el dumping cosas a la unidad de disco duro en una ubicación temporal (variable de sistema: FME_TEMP). Me imagino un x86 construir iba a hacer esto. Es más lento, por supuesto, pero.


Conversor de http://help.openstreetmap.org/questions/1963/conversion-from-osm-to-shapefiles estas personas parecen pensar que no había conversor de 18 meses.

También hay una información hilo/post en sus listas de correo aquí: http://lists.openstreetmap.org/pipermail/dev/2008-March/009315.html

Obviamente sus técnicamente posible, así que tal vez el correo electrónico de la Cloudmade / GeoFabrik la gente y preguntar cómo lo están haciendo.

4voto

Erik Öjebo Puntos 6937

Actualizado: OSM Lector FME 2013 (Beta)

=========================== BUILD 13082  20120417 ===========================
===========================================================================
OSM reader: Updated to support reading very large datasets, for example
~764 million features on a European OSM dataset (PR#37345)

ftp://ftp.safe.com/fme/beta/whatsnew.txt

FME 2013 Beta

http://www.safe.com/support/support-resources/fme-downloads/beta/

(Sólo uso en el desarrollo de un/entorno de pruebas)

2voto

auramo Puntos 161

Si carga los datos en PostGIS, hay una columna creada para esta categoría usted menciona? Si es así, podría utilizar este atributo para especificar el shapefile de salida nombre de la configuración de la dinámica escritor propiedades para el uso de ese atributo como el tipo de característica de nombre.

Otra posibilidad es usar algo como imposm.parser y Python para analizar el archivo XML y generar la OMF cuenta en un PythonCreator o PythonCaller. Presumiblemente, ya que es multiproceso no leer todo el archivo de una vez pero de elemento por elemento. Actualización: Sí, mirando el analizador de la fuente de la que realmente se utiliza cElementTrees' iterparse función para no leer todo el archivo de una vez. Ellos también afirman que han analizado la totalidad de la planet.osm (de 250 gb sin comprimir), así que espero que va a trabajar con sus datos.

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