Jun 052014
 

En este artículo presentamos algunos de los datos estadísticos más relevantes de la base de datos de OpenStreetMap de Alemania.

El contenido de esta base de datos se puede explorar en nuestro sitio web OpenAlfa Deutschland Straße

Cómo obtener la base de datos OSM de Alemania

En realidad la base de datos de OpenStreetMap cubre el mundo entero. Se puede obtener en forma de un único fichero “planet.osm”, que ocupa 16 GB en formato comprimido, y más de 250 GB sin comprimir.

Para obtener los datos de un sólo país, es preferible descargarse un extracto que está disponible en algunos sitios colaboradores de OpenStreeetMap. La lista de sitios que contienen extractos por país se puede obtener aquí.

En nuestro caso, utilizamos el extracto diario disponible en geofabrik.de. Para descargarlo, utilizamos el comando:

wget http://download.geofabrik.de/europe/germany-latest.osm.bz2

El fichero descargado está comprimido en formato bzip2, y ocupa 3.2 GBytes. En su interior, contiene un documento XML con tres tipos de elementos: nodos, vías (ways) y relaciones, que se comentan a continuación

Nota: Es interesante notar que también es posible descargar ficheros incrementales desde geofabrik.de. En otro artículo explicaremos la manera de mantener una copia actualizada de la base de datos, haciendo uso de estos ficheros incrementales.

Los ficheros  incrementales diarios disponibles en geofabrik nos permiten también estimar la actividad de mantenimiento del contenido de la base de datos. Representando gráficamente el tamaño de estos ficheros entre los meses de febrero y mayo de 2014, podemos comprobar que en el caso de Alemania el esfuerzo de mantenimiento es considerable, y muy constante:

[visualizer id=”5541″]

Nodos

La base de datos OSM de Alemania analizada contiene 95.397.469 nodos.

Cada nodo está identificado por un identificador numérico único, y consta básicamente de un par de coordenadas (latitud,longitud) que determinan un punto del mapa.

Opcionalmente, el nodo puede tener asociadas etiquetas (tags) que ofrecen información adicional sobre el mismo.

Ejemplo:

	<node id="12" lat="51.3400541" lon="9.4818121"
              version="5" timestamp="2014-02-20T15:19:56Z" changeset="20677113"
              uid="250214" user="emilde"/>
	<node id="13" lat="51.3731042" lon="9.5130058"
              version="2" timestamp="2011-05-08T22:06:06Z" changeset="8087754"
              uid="134914" user="max60watt">
		<tag k="highway" v="bus_stop"/>
		<tag k="name" v="Bleichplatz"/>
		<tag k="shelter" v="yes"/>
		<tag k="uic_ref" v="713807"/>
	</node>

En el ejemplo podemos ver los dos primeros nodos que aparecen en el fichero descargado. El primero sólo contiene el identificador y las coordenadas del nodo, junto con información administrativa, en forma de atributos del elemento XML.

El segundo nodo tiene también una serie de tags asociados, que lo identifican como una parada de autobús con el nombre “Bleichplatz”.

 

Etiquetas de nodo (node tags)

Del total de nodos existente en el fichero descargado, 6.625.830 tienen una o más etiquetas asociadas.

Las etiquetas asociadas a un nodo son simplemente un par (k,v) en donde k (“key”) es el nombre de la etiqueta, y v (“value”) su valor.

Existen una serie de nombres de etiqueta normalizados (como “name” o “highway”, que se pueden ver en el ejemplo de arriba). Pero OSM no fuerza el uso de estos nombres, por lo que en la base de datos se pueden encontrar nombres no normalizados,  nombres que contienen errores ortográficos, y otros casos.

Resulta interesante analizar estadísticamente el total de apariciones de cada nombre de etiqueta. Las más frecuentes son:

k                         Total
---------------------   --------
addr:housenumber         1641200
addr:street              1598324
addr:city                1433385
addr:postcode            1426662
addr:country             1271469
name                     1115495
created_by                899386
amenity                   830308
highway                   612798
source                    577144

Otros nombres de etiqueta interesantes, aunque el total de los mismos no sea tan elevado, son:

k                        Total
------------------    --------
natural                 421993
shop                    184098
tourism                 168380
bicycle                 124404
railway                 117487
public_transport        115078
place                   112842
building                 86328
information              85531
bus                      75750

 

Nodos de tipo ‘natural’

El total de cada uno de los valores asignados a la etiqueta ‘natural’ de los nodos de la base de datos OSM de Alemania es:

v               Total
--------------  ------
tree            394867
peak             15756
spring            6553
cave_entrance     1171
stone              488
wood               431
water              393
bush               381
cliff              375
beach              242
rock               220
...

Vias (Ways)

La base de datos OSM de Alemania analizada contiene 11.620.714 vías.

Una vía es una secuencia ordenada de nodos, identificada de manera única mediante un identificador numérico.

Las vías se utilizan para indicar en el mapa límites administrativos, carreteras, ríos, etc.

Opcionalmente, una vía puede tener asociadas una serie de etiquetas que proporcionan información adicional sobre la misma.

Ejemplo:

    <way id="459168" version="33" timestamp="2014-06-04T09:30:35Z"
         uid="34927" user="flohoff" changeset="22730875">
      <nd ref="1890502615"/>
      <nd ref="2898837885"/>
      <nd ref="1954798704"/>
      <nd ref="1954798688"/>
      <nd ref="1954798671"/>
      <nd ref="1954798669"/>
      <nd ref="290946929"/>
      <nd ref="1722885361"/>
      <nd ref="2716796"/>
      <nd ref="2896829934"/>
      <nd ref="2896829831"/>
      <tag k="hazmat" v="designated"/>
      <tag k="highway" v="tertiary"/>
      <tag k="maxspeed" v="50"/>
      <tag k="name" v="Österwieher Straße"/>
      <tag k="ref" v="K 42"/>
      <tag k="surface" v="asphalt"/>
    </way>

En el ejemplo, podemos ver la definición de una vía que consta de once nodos. La información administrativa se añade en forma de atributos version, changeset, etc del elemento <way>

Adicionamente, la vía tiene asociados varios tags que la identifican como una calle (k=”highway”, v=”tertiary”) denominada “Österwieher Straße”, con un límite de 50 Km/h para la circulación de vehículos.

Etiquetas de vía (way tags)

Los nombres de etiquetas de vía más frecuentes en la base de datos OSM de Alemania son:

k               Total
-------------   -------
source          1285196
highway         1087120
nhd:com_id       862429
gnis:fcode       862316
nhd:fdate        861714
nhd:reach_code   855447
gnis:ftype       839075
name             828578
...

Como vemos, “source” es el nombre de etiqueta más frecuente. Se trata de una información de tipo administrativo cuyo valor indica la fuente desde la cual se han obtenido los datos presentes en OSM para la vía.

La siguiente etiqueta más frecuente es “highway”. Esta etiqueta se utiliza para identificar tanto carreteras como calles, caminos, senderos, y en general cualquier trayecto transitable. Un buen número de vías tienen también un nombre asociado mediante la etiqueta “name”

Además de los nombres de vía arriba indicados, otros nombres interesantes son:

 

k               Total
-------------   ------
natural         497296
waterway        395406
lanes           295916
amenity         266246
postal_code     248576
bridge          241651
railway         229142
leisure         205158
cycleway         89602
boundary         66530
admin_level      58304
addr:postcode    31734
tourism           8991

 

Ways de tipo ‘highway’

v                 Total
--------------  --------
track           1999395
residential     1531966
service         1224840
footway          892080
path             623737
unclassified     282343
secondary        255685
tertiary         234708
primary          126334
steps            122780

Ways de tipo ‘natural’

v                Total
-------------   -------
water           186673
scrub           185633
wood             56066
wetland          16564
grassland        13556  
tree_row          9892
heath             7505
cliff             7187
sand              6242
beach             3096

Ways de tipo ‘waterway’

v                Total
--------------  ------
stream          205215
ditch           102561
drain            50116  
river            15808
canal             9013  
riverbank         7498
weir              2048
dam               1304

 

Relaciones

La base de datos OSM de Alemania analizada contiene 385.081 relaciones.

Una relación es un conjunto de elementos que constituyen una entidad. Al igual que los nodos y vías, cada relación está identificada de manera única por un identificador numérico. Asimismo, la relación puede tener asociadas una serie de etiquetas que proporcionan información adicional sobre la misma.

Los miembros de la relación pueden ser vías, nodos, o incluso otras relaciones.

Ejemplo:

  <relation id="10995" version="212" timestamp="2014-06-04T10:24:40Z"
            uid="1642071" user="Dr_K_Nick" changeset="22731706">
      <member type="way" ref="5203789" role="forward"/>
      <member type="way" ref="23896582" role="backward"/>
      <member type="way" ref="9377373" role="forward"/>
      <member type="way" ref="8591200" role="forward"/>
      <member type="way" ref="23897154" role="forward"/>
      ...
      <member type="node" ref="60975897" role=""/>
      <member type="node" ref="31115526" role=""/>
      <member type="node" ref="25711369" role=""/>
      <tag k="colour" v="#0000FF"/>
      <tag k="name" v="200 (gegen den Uhrzeigersinn)"/>
      <tag k="network" v="GVH"/>
      <tag k="operator" v="üstra"/>
      <tag k="ref" v="200"/>
      <tag k="route" v="bus"/>
      <tag k="type" v="route"/>
    </relation>

 

Etiquetas de relación

Entre las etiquetas que se asocian habitualmente a una relación, está la etiqueta “type”. En la base de datos analizada, los valores que aparecen con mayor frecuencia asignados a la etiqueta type son:

 

 type                  Total
-----------------   --------
 multipolygon        125536 
 restriction          66289 
 route                59531 
 associatedStreet     43710 
 boundary             27261 
 public_transport     24422 
 TMC                   8297 
 destination_sign      4683 
 turnlanes:turns       4436 
 route_master          3462 
...

Entre estos, merecen especial atención las relaciones de tipo “boundary”. Estas se utilizan para agrupar todas las vías que delimitan una región (administrativa o de otro tipo), en forma de uno o más polígonos cerrados, que opcionalmente pueden contener “agujeros” en su interior.

Cuando a una relación se le asocia la etiqueta “type=boundary”, también se le asocia una etiqueta con nombre “boundary”, cuyo valor detalla el tipo de límite de que se trata. Contabilizando los distintos valores asignados a la etiqueta “boundary”, obtenemos el siguiente resultado:

 boundary                     Total
-------------------------   --------
 administrative               19672 
 postal_code                   8205 
 political                      537 
 protected_area                 214 
 national_park                   49 
 public_transport                46 
 civil                           33 
 local_authority                 23 
 religious_administration        21 
...

Como vemos, el mayor volumen de relaciones de tipo boundary corresponde a límites administrativos, que delimitan las regiones de Alemania en sus distintos niveles: Bundesländer, Regierungsbezirke, Landkreise, etc…

El siguiente tipo de boundary en volumen corresponde a los límites de los códigos postales.

A continuación hay un número menor de áreas geográficas de interés: áreas protegidas, parques nacionales, etc.

 Publicado por en 1:43 pm

 Deja un comentario

(requerido)

(requerido)