Mapbox Vector Tiles y MVT Server para la gestión de datos geoespaciales

En los últimos años, el perfil del cliente de los geoservicios ha evolucionado, y ha pasado de requerir simples visores de mapas a aplicaciones móviles o desktop de uso masivo. Este cambio generó la necesidad de optimizar la transferencia de datos y reducir al máximo su volumen. 

En este contexto, el formato de archivo Mapbox Vector Tiles (MVT) se consolida como un estándar clave para el manejo y análisis de datos geoespaciales, que permite su transmisión eficiente desde diversas fuentes hacia sistemas de destino donde pueden ser almacenados y utilizados de forma efectiva.

En IDECOR probamos este formato para desarrollos informáticos que incluyen colectores de datos y paneles de control (dashboards) con MVT Server, un servidor de teselas vectoriales desarrollado en Rust, que permite publicar cualquier tabla o vista con un campo de geometría como teselas vectoriales.

Te contamos cómo funciona y las principales ventajas de trabajar con Mapbox Vector Tiles y MVT Server, una solución práctica y eficiente para la implementación y administración de datos geoespaciales en este formato.

Teselas vectoriales y Mapbox Vector Tiles

El estándar Mapbox Vector Tiles (MVT) es un formato de archivo binario eficiente para almacenar y codificar datos geoespaciales en teselas vectoriales. 

Este formato, ampliamente adoptado y soportado por diversas aplicaciones cliente, facilita la interoperabilidad y la visualización dinámica de datos geoespaciales en aplicaciones SIG y web.

Las teselas vectoriales (vector tiles) han marcado un hito en el mundo de la información geoespacial y han transformado la manera en que se almacenan, procesan y distribuyen los datos geográficos, al facilitar la gestión y visualización dinámica en grandes volúmenes, con una eficiencia sin precedentes. 

Aplicación

El contenido generado por IA puede ser incorrecto.

Imagen 1. Uso de vector tiles en QGIS.

La generación de teselas vectoriales puede abordarse principalmente de dos maneras: de forma pregenerada o generadas al vuelo (on the fly), dependiendo de la frecuencia de actualización, y del volumen de los datos geográficos. 

En el primer caso, las capas se procesan con antelación y se obtienen los tiles vectoriales que luego se almacenan en formatos como MBTiles, PMTiles o carpetas con archivos .pbf. Este enfoque es apropiado cuando las capas no cambian con frecuencia y se busca optimizar el rendimiento en la distribución. 

Entre las herramientas más utilizadas para esta modalidad se encuentran Tippecanoe, una utilidad de línea de comandos, desarrollada por Mapbox para generar tiles vectoriales a partir de archivos GeoJSON; y GeoServer, que en conjunto con GeoWebCache, permite la generación y almacenamiento de teselas en caché.

Cuando se requiere flexibilidad y actualización en tiempo real, se opta por la generación al vuelo, en la cual los tiles son construidos dinámicamente en el momento en que el cliente realiza la solicitud. Este enfoque es especialmente útil para datos que cambian con frecuencia o que se construyen bajo demanda. 

Para esta aplicación, PostgreSQL/PostGIS ofrece la función ST_AsMVT, que permite convertir directamente registros almacenados en la base de datos al formato MVT, incluyendo geometría y atributos. 

Herramientas como MVT Server también se especializan en este tipo de generación dinámica, que construyen los tiles a partir de consultas SQL, según los parámetros de cada solicitud. Incluso GeoServer, configurado apropiadamente, puede generar tiles vectoriales en tiempo real sin depender de un sistema de caché previo.

Cabe destacar que, con una arquitectura adecuada, es posible combinar ambos enfoques mediante mecanismos de caché, logrando así un equilibrio entre rendimiento y actualización. 

MVT Server

Este servidor open source que permite publicar teselas vectoriales, cuenta con administración web, almacenamiento en caché y soporte para diferentes variantes de fuente.

Implementado en Rust, un lenguaje de programación moderno y seguro, cuyas principales características son:

  • Seguridad de memoria
  • Rendimiento
  • Concurrencia
  • Expresividad
  • Interoperabilidad

Imagen 2. Panel de administración de MVT Server.

Ventajas del uso de MVT Server

Su capacidad para generar teselas vectoriales al vuelo, junto con una administración web integrada, soporte para caché y la posibilidad de definir estilos personalizados almacenados internamente, lo convierten en una opción robusta para aplicaciones web y de escritorio que requieren consumir datos geoespaciales dinámicos.

A diferencia de otras soluciones que simplemente se conectan a una base de datos y exponen automáticamente todas las capas, tablas y campos disponibles, MVT Server permite un control detallado sobre la información publicada. Es posible definir específicamente qué tabla o vista se expone, seleccionar los campos que se incluirán en la respuesta, establecer políticas de caché, limitar la cantidad máxima de objetos por solicitud y ajustar otros parámetros clave para optimizar el rendimiento y la seguridad del servicio.

Estas son las principales ventajas:

  • Generación de teselas vectoriales al vuelo: utilizando PostgreSQL/PostGIS, permite la publicación de cualquier tabla o vista con un campo de geometría como teselas vectoriales.
  • Administración web: MVT Server incluye una interfaz de administración para gestionar usuarios, grupos, capas, estilos, categorías y más.
  • Almacenamiento en caché: integrado con soporte para disco o servidor Redis, lo que mejora la eficiencia en la entrega de teselas.
  • Múltiples variantes de fuente: permite recuperar teselas a través de diferentes configuraciones como capa única, multicapa por composición y multicapa por categoría.
  • Servidor de glifos y sprites: integrado para estilos personalizados, lo que facilita la visualización coherente de los datos.
  • Control de acceso: por capa a través de Autenticación Básica o JWT, asegurando la seguridad en el acceso a los datos.
  • Compatibilidad: los estilos pueden ser consumidos en herramientas como QGIS o MapLibre.

El servidor MVT Server requiere para funcionar un servidor PostgreSQL con la extensión PostGIS versión 3.0.0 o superior instalada, ya sea local o remota. 

Su implementación en algunos proyectos de Infraestructura de Datos Espaciales destaca su potencial para satisfacer las necesidades de aplicaciones que requieren datos geoespaciales dinámicos, eficientes y accesibles. 

A su vez, el alineamiento con estándares como OGC API Tiles refuerza la interoperabilidad y el uso eficiente de esta tecnología en la distribución y consulta de información geoespacial.

En la próxima entrega, te contaremos lo que necesitas para poder instalarlo y aprovechar su panel de administración, configurar y publicar estilos en casos prácticos.

Si te interesan este tipo de herramientas y contenidos, sumate a nuestra comunidad abierta de desarrollo de aplicaciones y geoservicios, completando el formulario de IDECOR-Dev.

Para conocer más acerca de otros recursos y servicios disponibles de IDECOR, escribinos a [email protected]. Seguí informándote acerca de nuestras novedades. Suscribite para recibir nuestro boletín y seguinos en Instagram y Linkedin.

Colaboración:
Anal. de Sist. José Jachuf,
Anal. de Sist. Carlos Salinas,
IDECOR

Categorías: Noticias | Novedades