Category Archives: Grupo de Trabajo de Ingeniería

Un avance del progreso sobre teselas vectoriales del Grupo de Trabajo de Ingeniería

El Grupo de Trabajo de Ingeniería de la Fundación OpenStreetMap tiene una actualización sobre el esfuerzo para crear teselas vectoriales para openstreetmap.org. Siga leyendo para saber por qué este trabajo es importante, qué se ha hecho hasta ahora y cómo se están incorporando los comentarios de la comunidad, así como los detalles técnicos para aquellos que quieran saber más.

Antecedentes

Actualmente, el sitio web openstreetmap.org ofrece teselas rasterizadas, que son teselas de imágenes formadas por píxeles; piense en una imagen descargada de parte de un mapa. Pero el esfuerzo ha comenzado a crear teselas vectoriales para el sitio, lo que ayudará a mejorar la apariencia y el funcionamiento del mapa. Puede leer más sobre los antecedentes del proyecto aquí.

Las teselas vectoriales sirven mapas como vectores: puntos, líneas y polígonos. Almacenan datos geográficos (como los que componen OpenStreetMap) en un formato que permite un estilo dinámico y la interactividad. Para los usuarios, las teselas vectoriales significarán un estilo de mapa nuevo y moderno con un zoom perfecto en openstreetmap.org, el mapa se puede actualizar más rápidamente cuando cambian los datos y debería funcionar mejor para los usuarios.

De cara al futuro, la parte más interesante es lo que este proyecto de teselas vectoriales facilitará a los voluntarios y usuarios de teselas: mapas 3D, combinación y comparación de datos más eficiente e integración de otros conjuntos de datos, estilos temáticos, mapas multilingües, diferentes vistas para los límites administrativos, puntos de interés interactivos, mapas más accesibles para usuarios con discapacidad visual y seguramente muchas otras ideas que a nadie se le han ocurrido todavía. Quizás recuerdes que muchos de estos han sido intereses a largo plazo para las personas de la comunidad OSM.

El plan

El objetivo del proyecto de teselas vectoriales es proporcionar una configuración de teselas vectoriales que pueda funcionar para openstreetmap.org, es decir, un sitio de mapas base complejo y mundial con una gran demanda por parte de usuarios y servicios de todo el mundo, donde los datos subyacentes al mapa cambian todo el tiempo.

O, para decirlo técnicamente, crear una configuración para un mapa base complejo a nivel mundial bajo una carga elevada que requiere actualizaciones minuciosas.

Paul Norman lidera el proyecto de teselas vectoriales.

Está trabajando para ampliar su proyecto Tilekiln que genera teselas vectoriales a partir de una base de datos PostgreSQL (como la de OpenStreetMap), haciendo uso del esquema Shortbread, que es un formato de datos para nombrar capas y propiedades dentro de un mosaico vectorial, y mejorando Themepark, lo que permite agregar datos de OSM a una base de datos de Postgres.

El trabajo se divide en tres pasos: 

1. Primera ronda de mejoras de Tilekiln y mejoras de Shortbread y Themepark

2. Mejoras de paralelismo

3. Shortbread disponible públicamente en producción.

Los dos primeros pasos casi están terminados. Tilekiln ahora genera teselas en paralelo, lo que hace que sea práctico generar teselas para todo el mundo. El siguiente paso es iniciar el despliegue en el hardware de la OSMF para prepararse para la producción.  

Detalles técnicos del paso 1

Para aquellos interesados ​​en los detalles técnicos de en qué se está trabajando, hay cinco componentes principales del primer paso anterior.

        1.        Empaquetamiento automatizado de Tilekiln

        2.        Las métricas de Tilekiln se publican con un exportador de Prometheus

        3.        Shortbread Themepark revisado

        4.        Un servidor de demostración que se ejecuta con actualizaciones minuciosas de teselas de Shortbread y renderiza teselas bajo demanda

        5.        Demo mostrada a la comunidad

Los puntos 1 y 2 están completos sin necesidad de mayor discusión. Para el punto 3, Paul descubrió que la implementación de osm2pgsql Themepark Shortbread necesitaba más trabajo de lo previsto ya que le faltaba una capa y tenía algunos problemas.  

Los puntos 4 y 5 están completos. El servidor de demostración de Paul corre con actualizaciones minuciosas y los requisitos de hardware son más modestos de lo esperado.  

La comunidad también ha estado brindando comentarios útiles, como en la publicación de Paul en el Foro de la Comunidad OSM.

La comunidad ofreció muchas sugerencias, algunas de las cuales ya han sido incorporadas. Los problemas restantes que están dentro del alcance de la comunidad son: Las líneas curvas se muestran como irregulares y las teselas vectoriales son demasiado grandes.

El problema de las líneas irregulares se debe a la forma en que se representan las curvas suaves en las teselas vectoriales. Se ha abordado en su mayor parte, pero se espera que surjan problemas similares en el futuro. Se ha establecido una escala objetivo equivalente a la escala mínima de la capa de tesela estándar. Se puede llegar a una escala aún más baja, pero es posible que comiencen a aparecer artefactos.

El tamaño de las teselas vectoriales seguirá siendo un tema que requerirá trabajo continuo, pero las teselas actuales son particularmente grandes. Desde esta parte de la prueba se han realizado algunos cambios que reducen el tamaño a la mitad. La optimización del tamaño de las teselas será un tema que requerirá mas trabajo, ya que el tamaño de las teselas es el factor más importante en la experiencia del usuario.

Las teselas que se están produciendo son utilizables, pero aún queda trabajo por hacer. Ahora que el trabajo de paralelismo está completo, es posible generar grandes conjuntos de teselas para realizar pruebas, por lo que Paul volverá a trabajar en las definiciones de teselas para mejorar su tamaño y solucionar algunos problemas restantes, pero las teselas actuales son utilizables.

Antecedentes de las herramientas utilizadas

Aquí hay información sobre las diversas herramientas utilizadas para este proyecto.

Tilekiln es un software escrito por Paul Norman para generar teselas vectoriales a partir de una base de datos PostgreSQL. Las alternativas son martin (o tal vez t_rex). Tilekiln está en un nuevo desarrollo, aunque utiliza muchas características estándar de PostgreSQL para generar los datos de teselas vectoriales. La mayoría de los mapas basados ​​en OSM (incluido osm-carto en osm.org) se generan a partir de consultas de bases de datos SQL desde una base de datos PostgreSQL. Tilekiln genera teselas vectoriales a partir de consultas similares. Tilekiln es nuevo.

Themepark es parte del conjunto de herramientas osm2pgsql, que permite agregar datos OSM a postgres y compartir esos pasos de procesamiento entre otros proyectos. Muchos estilos de mapas OSM basados ​​en PostgreSQL (como osm-carto) usan osm2pgsql  

osm2pgsql ha existido durante más de 15 años en OSM y se utiliza en muchos lugares. Aunque Paul ha contribuido con código, no es el desarrollador principal. osm2pgsql se ha vuelto más avanzado y mejor en los últimos años. Parte del poder es el preprocesamiento de los datos, y Themepark es un intento de facilitar estos pasos de preprocesamiento.

Shortbread es un “esquema de tesela vectorial” creado por Geofabrik. Es un formato de datos sobre cómo nombrar capas y propiedades dentro de una tesela vectorial.

Esta publicación contiene contribuciones de Adam Hoyle, Mikel Maron, Amanda McCann, Paul Norman y Andrew Wiseman.

La Fundación OpenStreetMap es una organización sin fines de lucro, formada para apoyar el Proyecto OpenStreetMap. Se dedica a fomentar el crecimiento, desarrollo y distribución de datos geoespaciales gratuitos para que cualquiera pueda usarlos y compartirlos. La Fundación OpenStreetMap posee y mantiene la infraestructura del proyecto OpenStreetMap, está financiada por cuotas de membresía y donaciones, y organiza la conferencia anual internacional State of the Map . Nuestros grupos de trabajo voluntarios y el pequeño personal central trabajan para apoyar el proyecto OpenStreetMap. Únete a la Fundación OpenStreetMap por solo £ 15 al año o de forma gratuita si eres un colaborador activo de OpenStreetMap.

2024: anunciamos el año de los mapas vectoriales de OpenStreetMap

OpenStreetMap dará un gran salto adelante con la introducción de teselas vectoriales en openstreetmap.org este año. Esta es la primera de una serie de publicaciones de blog en las que compartiremos nuestro progreso.

Para liderar nuestro proyecto de teselas vectoriales, la Fundación OpenStreetMap ha contratado a Paul Norman, una figura reconocida en cartografía y datos abiertos, cuyo viaje con OpenStreetMap comenzó en 2010 con un encuentro casual en los foros de xkcd. Su papel en la comunidad despegó con su trabajo en OpenStreetMap Carto en 2013. Su participación voluntaria en la Fundación OSM, incluyendo contribuciones a varios grupos de trabajo y una permanencia en la junta directiva de OSMF, destaca su compromiso con el proyecto. Profesionalmente, ha ocupado varios puestos influyentes en MapQuest, CartoDB, la Fundación Wikimedia y Amazon. Miles de millones de personas han visto los productos de su trabajo. Para leer más de Paul, visita su blog. Para profundizar en la técnica de las teselas vectoriales, síguelo en Mastodon o en Twitter.

Las teselas vectoriales representan un avance significativo en la forma en que se procesan y presentan los datos del mapa. A diferencia de las teselas ráster tradicionales, que son imágenes  estáticas con píxeles, las teselas vectoriales son como los ‘SVG’ del mundo de la cartografía: obtienes líneas y puntos. Esto almacena los geodatos en un formato que permite un estilo dinámico e interactividad, lo que permite al usuario adaptar la apariencia visual del mapa sin alterar los datos. Si eso suena como lo que has visto en otros mapas, ¡estás en lo cierto! Las teselas vectoriales se han convertido en el estándar de la industria en mapas interactivos que, a diferencia de openstreetmap.org, no se actualicen con frecuencia y donde simplemente se pueda recalcular toda su base de datos de vez en cuando.

Pero el mapa que se muestra en openstreetmap.org es muy diferente! Se actualiza de forma incremental y constante, un minuto después de editar; Es una parte fundamental del bucle de retroalimentación para los mapeadores, y es cómo el autor de esta publicación de blog se enganchó en primer lugar. Es por eso que tenemos que invertir en nuestro propio desarrollo de software de teselas vectoriales.

En el futuro inmediato, para los usuarios, esto significará un nuevo estilo de mapa de aspecto moderno con un zoom perfecto en openstreetmap.org. Mirando hacia el futuro, la parte más emocionante es lo que este proyecto de teselas vectoriales facilitará a los voluntarios y usuarios de teselas: mapas en 3D, mezcla y coincidencia de datos más eficientes e integración de otros conjuntos de datos, estilos temáticos, mapas multilingües, diferentes vistas para límites administrativos, puntos de interés interactivos, mapas más accesibles para usuarios con discapacidad visual y estoy seguro de que muchas otras ideas que a nadie se le han ocurrido todavía. Esta tecnología no es solo un salto en estética, sino también en funcionalidad, mejorando la experiencia general del usuario.

En la encuesta comunitaria del 2021 (página 15), no había un sentimiento claro sobre lo que la fundación debería hacer respecto a las teselas vectoriales. Notamos una división en las preferencias: algunos abogaban por el desarrollo dirigido por voluntarios, otros por el compromiso profesional. El ecosistema ha evolucionado desde entonces, lo que facilita la construcción sobre los desarrollos de software existentes. Vemos nuestro proyecto como un equilibrio razonable entre las dos respuestas más populares. Invertir en software central también es parte de nuestro plan estratégico plurianual.

La Fundación OpenStreetMap depende de las donaciones para terminar este proyecto. Si deseas apoyar nuestro año de teselas vectoriales específicamente, puedes donar y dejar ‘teselas vectoriales’ en el mensaje de donación. Cada contribución, grande o pequeña, apoya directamente nuestra capacidad para garantizar que OpenStreetMap pueda ser abierto, accesible y dinámico para todos. Su apoyo no es solo una donación; Es una inversión en el futuro de la cartografía de código abierto.

Estamos solo al comienzo de este emocionante viaje. Estén atentos, ya que profundizaremos en los aspectos de esquema y estilo en futuras publicaciones del blog.

Recordatorio: Solicitud de comentarios sobre el modelo de datos

Estudio del modelo de datos

El Grupo de Trabajo de Ingeniería de la Fundación OpenStreetMap encargó un estudio a principios de 2022 sobre cómo mejorar el modelo de datos existente. Jochen Topf ha entregado los resultados de este estudio, incluyendo recomendaciones sobre cómo hacer que el modelo de datos OpenStreetMap sea computacionalmente más eficiente y más accesible.

Se han hecho dos sugerencias clave:

  • Introducción a un tipo de datos de área para representar polígonos
  • Deshacerse de los nodos no etiquetados

Consulta comunitaria

Para decidir los próximos pasos en este proceso, queremos tener más discusiones con la comunidad de desarrolladores, ya que los cambios propuestos afectan al software OpenStreetMap, que depende directa o indirectamente del modelo de datos.

Beneficios potenciales

Menos desorden para las áreas

Algunos mapeadores pueden sorprenderse al escuchar que OSM aún no tiene un tipo de datos de área. Después de todo, el editor iD presenta botones prominentes para dibujar puntos, líneas y áreas. Una vez mapeadas, estas áreas generalmente aparecen en el mapa como se esperaba. La wiki de OSM documenta si una etiqueta se usa normalmente en áreas, e incluso Overpass Turbo permite usar áreas en su consulta.

Detrás de escena, sin embargo, estas áreas se representan como formas o relaciones. Cada herramienta que trabaja con datos OSM utiliza su propio conjunto de reglas para determinar si una forma particular representa una línea o un área. Hacer que las áreas sean una parte adecuada del modelo de datos de OSM conduciría a una interpretación consistente en todas las aplicaciones, permitiría que la API evite que se carguen áreas rotas y, finalmente, puede conducir al soporte para descargas parciales de áreas muy grandes.

Mantener accesible el procesamiento de OSM

Actualmente, las formas se componen de referencias a nodos, y confiamos en estas referencias para determinar cómo las formas se conectan entre sí. Resolver las coordenadas de estas referencias de nodo es un proceso costoso dentro de la cadena de herramientas de OpenStreetMap, ya que lleva horas o días, incluso en hardware compatible.

En el futuro, podríamos modelar formas como una simple lista de coordenadas, dependiendo de la implementación exacta con la que terminemos. Esto ofrecería grandes beneficios de rendimiento, pero deshacerse de los nodos no etiquetados sería un cambio significativo.

A primera vista, las mejoras de rendimiento pueden no parecer particularmente emocionantes. Pero cuán fácil sea trabajar con nuestros datos afectará directamente la utilidad de OpenStreetMap para el mundo en general. Como observa Jochen: “El objetivo es mantener OSM como ese gran recurso que puede ser utilizado no solo por compañías multimillonarias, sino también por el estudiante que quiere crear un mapa del mundo en su cuaderno o el activista con su computadora de segunda mano donada”.

Una mejor historia de OSM

Muchos mapeadores se decepcionan cuando se dan cuenta de las pocas cosas que la pestaña de historial del sitio web puede mostrar realmente. Hay muchas herramientas, como OSMCha y Achavi, que ofrecen mucho más, pero aún requieren un cierto grado de competencia para usarlas.

Pueda que te preguntes por qué, y la respuesta es muy técnica: la ubicación de una sola versión de una forma, en muchos casos, no está definida. Es la razón por la que el seguimiento de cambios siguió siendo una disciplina experta con herramientas relativamente hostiles para los novatos. Al cambiar el modelo de datos, nos alejaremos de esa barrera y, posteriormente, podemos esperar herramientas sustancialmente mejores, pero no antes de obtener las coordenadas y versiones adecuadas de las formas.

Generación minuciosa de teselas vectoriales

Si bien hay un buen número de maduros generadores de teselas vectoriales hoy en día, un par de problemas aún están abiertos.

  • Una es qué características deben ir en las teselas vectoriales para openstreetmap.org
  • La otra es cómo conciliar las actualizaciones minuciosas con las teselas vectoriales para un rendimiento a un nivel aceptable.

Esa tarea se vuelve un orden de magnitud más fácil si no solo puedes paralelizar realmente la generación de teselas, sino también eludir el primer paso costoso para averiguar a qué tesela pertenece una forma cambiada.

Podríamos encontrar a alguien que encapsule la potencia de cálculo bruta necesaria para hacer esto. Pero incluso si es así, este es un grado altamente indeseable de dependencia de ese asociado.

Así que sí, las teselas vectoriales para openstreetmap.org son en principio posibles sin este cambio de modelo de datos, pero a un costo mucho más alto que solo un hardware especializado podría mantenerse al día con los cambios minuciosos.

Expresa tu opinión sobre el futuro

Algún tipo de cambio es inevitable. El crecimiento de la base de datos OSM está superando las mejoras de velocidad en el hardware, y el modelo basado en ID significa que todo el proceso no se puede paralelizar con una velocidad completa. Mantenerse al día con los cambios era fácilmente posible en el pasado, pero las necesidades requieren más y más trucos ahora. Hay un punto en el futuro en el que también el hardware especializado será suficiente para mantenerse al día con los cambios minuciosos.

Sin embargo, hay muchos enfoques posibles para enfrentar este desafío. Ahora es la oportunidad para que la comunidad de desarrolladores comparta su opinión sobre el camino a seguir.


La Fundación OpenStreetMap es una organización sin fines de lucro, formada para apoyar el Proyecto OpenStreetMap. Se dedica a fomentar el crecimiento, desarrollo y distribución de datos geoespaciales gratuitos para que cualquiera los use y comparta. La Fundación OpenStreetMap posee y mantiene la infraestructura del proyecto OpenStreetMap, recibe apoyo financiero mediante cuotas de membresía y donaciones, y organiza la conferencia internacional anual State of the Map . Nuestros grupos de trabajo voluntarios y el pequeño personal central trabajan para apoyar el proyecto OpenStreetMap. Únete a la Fundación OpenStreetMap por solo £ 15 al año o de forma gratuita si eres un colaborador activo de OpenStreetMap.

Convocatoria de propuestas del Grupo de Trabajo de Ingeniería

El Grupo de Trabajo de Ingeniería (EWG) desea anunciar una convocatoria de propuestas para el siguiente proyecto: Agregar la capacidad de silenciar usuarios en el sitio web de openstreetmap.org.

Sobre el proyecto

Los usuarios que reciben mensajes no deseados en su bandeja de entrada de mensajes openstreetmap.org actualmente tienen que reportar a quien escribió el mensaje y esperar a que un administrador tome medidas. Esta función hará posible que cualquiera pueda silenciar (ignorar) sin problemas mensajes privados provenientes de otro usuario.

Para obtener más detalles sobre el proyecto, incluida la forma de postular y los requisitos de la propuesta, consulta el Repositorio de financiación de proyectos del Grupo de Trabajo de Ingeniería en Github. Haz clic en “Capacidad para silenciar a otros usuarios” en la sección Proyectos o visita este enlace para obtener una lista de entregables.

Comprender el proceso de financiación de proyectos

Antes de enviar una propuesta, asegúrate de leer también el Marco de Propuesta de Financiamiento de Proyectos del Grupo de Trabajo de Ingeniería para obtener una visión general del proceso. Si tienes alguna pregunta sobre el proceso de financiación, comunícate con el grupo de trabajo de ingeniería al correo engineering@osmfoundation.org.

Acerca del Grupo de Trabajo de Ingeniería

El grupo de trabajo de ingeniería se encarga, entre otras cosas, de manejar el desarrollo de software pagado por la OSMF, publicar convocatorias de propuestas sobre tareas de interés, ofrecer una plataforma para la coordinación de los esfuerzos de desarrollo de software en todo el ecosistema OSM y administrar la participación de OSM en programas de tutoría de software.

El Grupo de Trabajo de Ingeniería se reúne una vez cada 2 semanas. Las reuniones están abiertas a todos y todos son bienvenidos. ¿Preguntas? Por favor, envía un correo electrónico a engineering@osmfoundation.org. ¡Somos un grupo pequeño y todavía estamos dando la bienvenida a nuevos miembros!


Acerca de OpenStreetMap

La Fundación  OpenStreetMap es una organización sin fines de lucro, formada para apoyar el Proyecto OpenStreetMap. Se dedica a fomentar el crecimiento, desarrollo y distribución de datos geoespaciales gratuitos para que cualquiera los use y comparta. La Fundación OpenStreetMap posee y mantiene la infraestructura del proyecto OpenStreetMap, está financiada por cuotas de membresía y donaciones, y organiza la conferencia anual internacional State of the Map . Nuestros grupos  de trabajovoluntarios y nuestro pequeño personal central trabajan para apoyar el proyecto OpenStreetMap. Únete a la Fundación  OpenStreetMap por solo £ 15 al año o gratis si eres un colaborador activo de OpenStreetMap.