Escalabilidad en servicios de mapas. Modelo de teselas en cache con OpenLayers

Documentos relacionados
Escalabilidad en servicios de mapas. Modelo de teselas en cache con OpenLayers

Experiencia de publicación de un servicio teselado de mapas WMTS RESTful para IDENA

Optimización de la Guía Urbana (LocalGIS) mediante TileCache

Experiencia de publicación de un servicio teselado de mapas WMTS RESTful VIII JORNADAS DE SIG LIBRE

Experiencia de publicación de un servicio teselado de mapas WMTS RESTful para IDENA.

Compartiendo experiencias en la creación de servicios teselados

Novedades en los servicios web de visualización de mapas del CNIG. Paloma Abad Power

Adaptación de los Servicios Web de Mapas para que sean conformes con INSPIRE

WMSCWRAPPER. IMPLEMENTACIÓN WMS-C OPENSOURCE PARA SERVICIOS WMS TESELADOS

JIIDE noviembre 2015 Paloma Abad.

Ecosistema abierto para la representación espacial de sistemas de información

CURSO DE DESARROLLO DE APLICACIONES WEB GIS OPEN SOURCE CON OPEN LAYERS Y LEAFLET MODALIDAD ONLINE

CURSO DE DESARROLLO DE APLICACIONES WEB GIS OPEN SOURCE CON OPEN LAYERS Y LEAFLET MODALIDAD PRESENCIAL

Valladolid, 7 de Febrero 2007

WMSCWRAPPER: CACHÉ DE TESELAS OPENSOURCE PARA LA ACELERACIÓN DE SERVICIOS DE MAPAS TESELADOS.

Manual de usuario de aplicación de Análisis territorial

Web Map Service (WMS)

Un visualizador web de mapas 3D teseladados basados en modelos de CityGML

Acceso a IDE s y servicios OGC orientados a la toma de decisiones. Caso práctico

Ministerio del Poder Popular. Instituto Geográfico de Venezuela Simón Bolívar

Instituto Geográfico Nacional

Fernando Lacunza.

Benchmarking de implementaciones WMS-C de software libre.

HYDROSPATIUM Gestión y planificación del agua

PLANIFICADOR DE RUTAS MULTIMODAL USANDO SERVICIOS IDE. (Bus, Metro y Bici)

Instructivo consumo de servicios web geográficos

Curso online Desarrollo de Aplicaciones Web Mapping

REQUISITOS PARA EL DESARROLLO DE APLICACIONES EN LA PLATAFORMA GIS MUNICIPAL

IDEAGE: Una nueva imagen de la Administración General del Estado

SISTEMA HIDRICO TITICACA DESAGUADERO POOPO SALAR DE COIPASA. Manual de Usuario del GeoTiticaca

Integración de la recomendación WMS-C en los estándares preexistentes en la IDE

WMSCWrapper. Implementación WMS-C OpenSource para servicios WMS teselados.

Desarrollo de una Infraestructura de Datos Espaciales Ferroviaria basada en Software Libre

Curso online Desarrollo de Aplicaciones Web Mapping

Aplicación basada en web y en software libre para la gestión municipal de incidencias y actuaciones en el espacio público

GESTIÓN DE LA SEGURIDAD DE LOS DATOS EN ARCGIS ONLINE

El proyecto IDEE y el SIG libre: contactos y sinergias

MANUAL DE NOVEDADES DEL VISOR DE INFORMACIÓN GEOGRÁFICA DE URA (IDE-URA- WEB)

REQUISITOS TÉCNICOS PARA LA IMPLEMENTACIÓN DE SERVICIOS DE VISUALIZACIÓN DE MAPAS

Visualizador de mapas. - Manual de usuario -

Cliente Corporativo IDE (ES) Autor: Versión: Fecha:

Tutorial de publicación de servicios WMS

Sistema de Información Geográfica siginfocentros Arquitectura del Sistema

WMSCWrapper: caché de teselas OpenSource para la aceleración de servicios de mapas teselados.

Servidor de Mapas de Cartografía Digital de Seguimiento del Parque Nacional de Doñana

VISUALIZADOR GEOGRÁFICO. MANUAL DEL USUARIO (Versión 2.0)

Ricardo García, Juan Pablo de Castro, María Jesús Verdú, Elena Verdú, Luisa María Regueras

Avances en la extensión de publicación de servicios OGC en el SIG libre gvsig

Aplicación de Turismo sobre teléfonos móviles.

WMS - Servidores de Mapas en Red

Sistemas de Información Geográfica (GIS) Estándares y Herramientas

Extensión de gvsig Desktop para la publicación de mapas a través de servicios estándares OGC

DIPUTACIÓN PROVINCIAL DE SORIA

Extensión gvsig para manejo de datos. StereoWebMap: Empieza el proyecto. Luis W. Sevilla Director Técnico

Integración de la recomendación WMS-C en los estándares preexistentes en la IDE.

CONEXIÓN A GEOSERVICIOS WMS y WFS MEDIANTE LA UTILIZACIÓN DE KOSMO SAIG. MANUAL DEL USUARIO (Versión 1.0)

Curso online Desarrollo de Aplicaciones Web Mapping

SERVICIO WMS INFRAESTRUCTURA DE DATOS ESPACIALES (IDE) DEL CABILDO INSULAR DE LA PALMA INDICE

Capacitación Proyecto IDE Galápagos

Historia y estado actual del futuro estándar Web Map Tiling Service del OGC

NAVTEQ Location Based Services Platform Plataforma de Servicios Basados en la Localización. Junio 2011 Presentado por: January 201

MANUAL PARA GESTIÓN DE METADATOS

Infraestructura de Datos Espaciales de la ESPE - LatinGEO Ecuador

EVOLUCIÓN DEL GEOPORTAL DE LA IDE ANDORRA

Visualizando el pasado a través de IDE históricas. Madrid a principios del s.xx.

IDE - MUNICIPALIDAD DE CORRIENTES

Aceleración de servicios de mapas teselados mediante la aplicación de un modelo descriptivo

ACCESO Y VISUALIZACIÓN DE DATOS

Qué es un Servicio Web?

Módulo para la impresión de información geográfica en forma de mapas

Vistas y Capas cartográficas en gvsig. [gvsig Starty] Curso de Introducción a gvsig

El empleo de software libre en la puesta en marcha de la IDE de la Zona Arqueológica de Las Médulas (León).

Soluciones de Cartografía, GIS y Teledetección CURSO INFRAESTRUCTURAS DE DATOS ESPACIALES (IDEs) Y ELABORACIÓN DE METADATOS

Operaciones WMS: GetCapabilities, GetMap y GetFeatureInfo

INDICE. 1. Introducción Sistemas de referencia espacial Navegación por el visualizador Barra de herramientas...

CONEXIÓN A GEOSERVICIOS WMS y WFS MEDIANTE LA UTILIZACIÓN DE QUANTUMGIS. MANUAL DEL USUARIO (Versión 1.0)

Introducción a los servicios OpenGIS (o deshaciendo una divertida maraña de siglas ;-))

CURSO DE SISTEMAS DE INFORMACIÓN GEOGRÁFICA

Movilidad Web Offline: Visualización de mapas y gestión de tracks sin conexión y sin instalaciones

3. Creación del perfil de metadatos de la IDE Menorca basado en el NEM y publicación del catálogo con GeoNetwork Opensource bajo Tomcat.

Módulo 4. GIS Middleware. Servidores de Mapas (GeoServer)

El SIGCAR es una aplicación web para la visualización de información geográfica relacionada con la gestión de redes de carreteras

8as Jornadas SIG Libre, 26, 27 y 28 marzo 2014 Girona. Nacho Varela García

NÚMERO DE HORAS: 160H PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE OBJETIVO

Divulgación de la información de cobertura de señales de TDT, TETRA, WIWAX y FM en la Comunidad Autónoma del País Vasco

Nuevo Geoportal de la Diputación de Valencia: Guía Urbana

PROBLEMAS Y SOLUCIONES EN EL DESARROLLO DE LA IDE EXTREMADURA

Temática intercambio SIG-CTAM TUTORIAL 2. CAPAS.

Dept. de Geografia, Universitat Autònoma de Barcelona. Dept. de Medi Ambient i Habitatge, Generalitat de Catalunya

Instituto Geográfico Nacional

gvsig un cliente para el Servicio WFS de la D.G. del Catastro

Título Identificador. Publicador Colaboradores Tipo Formato Fuente Idioma Cobertura Derechos Palabras claves

Curso online QGIS 2.18 'Las Palmas

Ayuda y breve descripción del procedimiento de geolocalización de las empresas públicas locales en Andalucía

Servicio de impresión de información geográfica en forma de mapas siguiendo el estándar OGC WPS *

Servei de Sistemes d Informació Geogràfica i Teledetecció Universitat de Girona

Curso online QGIS 2.18 'Las Palmas

Servicio WMS. Sumario

Web Services Tecnologías asociadas

Tema 1: Patrones Arquitectónicos

Transcripción:

Escalabilidad en servicios de mapas. Modelo de teselas en cache con OpenLayers Ignacio Gámez Ramírez. Geograma S.L. C/ Castillo de Lantarón 8, 01007 Vitoria-Gasteiz Ignacio.gamez@geograma.com Resumen Actualmente el servicio WMS es todo un éxito para la publicación de mapas vía internet, pero su rendimiento o capacidad de respuesta decrece a consecuencia de la gran demanda de usuarios que debe atender. Como mejora a los tiempos de respuesta del servidor de mapas, surgen los servicios de teselas o tiles. El artículo pretende dar una justificación al uso de servicios de mapas basados en el modelo de tiles y ofrecer una visión global de algunas de las actuales especificaciones e implementaciones mas usadas por la comunidad GIS. Palabras clave: Servicio de tiles, OGC, TMS, OpenLayers, WMTS. 1 Introducción La especificación WMS fue desarrollada para poder ofrecer mapas cartográficos vía internet de modo interoperable. El principal objetivo del servicio WMS es la flexibilidad y al respecto, dicha especificación ha sido todo un éxito. Sin embargo, dicha flexibilidad tiene un precio, la escalabilidad. Un servidor WMS genera los mapas al vuelo (debido a su flexibilidad) y este proceso consume un tiempo que no permite al servicio responder adecuadamente a un número elevado de peticiones simultáneas: no es escalable. Como solución a esta problemática surge la idea de tener las imágenes pregeneradas para eliminar el coste de renderización basándose en un modelo de

teselas. Este modelo consiste en dividir el mapa cartográfico, ofrecido por el servidor, en una pirámide de mallas donde cada nivel de la pirámide corresponde con una resolución o escala del mapa y todas las celdas de la pirámide tienen un tamaño fijo en pixel. Figura 1. Pirámide de teselas Este nuevo servicio, con el modelo de teselas, requiere limitar las posibilidades de configuración en la petición HTTP frente a las que ofrece el servicio WMS y definir una especificación donde describir la comunicación entre cliente / servidor. 2 Soluciones actuales A continuación se describen algunas de las recomendaciones y especificaciones actuales para el servicio de tiles y algunas de las implementaciones mas usadas por la comunidad GIS. 2.1 Especificaciones OSGeo (Open Source Geospatial Foundation) ofrece una especificación, TMS (Tile Map Service Specification no es un estándar oficial pero sí un proyecto oficial de OSGeo), donde se describe una posible solución para la comunicación entre cliente / servidor utilizando un servicio de tiles. Esta especificación es el resultado o resumen de distintas personas de la comunidad GIS interesadas en el modelo de tiles [1].

En el documento se define como el servidor debe proporcionar la información relacionada con los mapas que contiene: las capas disponibles, conjunto de escalas que permite, conjunto de teselas para cada escala, etc. y la forma de acceder a dichas teselas. Esta especificación tiene la ventaja de poder ofrecer capas con distintas configuraciones de SRS, tamaño de tile, escalas, etc. pero en su contra, requiere tener todas las teselas pre-generadas porque el acceso vía HTTP es directo a fichero siguiendo la interfaz REST y la nomenclatura definida en la especificación. Ejemplo de petición: http://tms.osgeo.org/tms.php/1.0.0/layer/firstlevel/2/1.jpg Donde, layer es el nombre de la capa definida en el servidor, firstlevel indica el nivel de zoom y los valores 2 y 1 las coordenada X e Y de la malla de tiles. En la figura 2 se muestra la malla definida por TMS. Figura 2. Malla de teselas en TMS Otra solución es la que propone el documento WMS Tiling Client Recommendation, también ofrecida por OSGeo [2]. Esta recomendación define una extensión del servicio WMS como mejora para aumentar la escalabilidad. Esta recomendación se basa en dos conceptos básicos: a) Limitar las capas con teselas a configuraciones fijas (escalas, proyecciones, tamaño de tiles)

b) Restringir los parámetros del WMS getmap a los mínimos requeridos. El servidor WMS debe publicar esta información en su WMS GetCapabilites en la zona de los servicios específicos del vendedor. De esta forma, el cliente podrá realizar los cálculos necesarios para construir la malla de teselas correspondiente (se define como origen de la malla la esquina inferior izquierda de la extensión de la capa). Para realizar una petición habrá que añadir, a la URL de la petición, el parámetro específico tiled=true. En resumen, esta recomendación define como restringir las peticiones WMS a una malla predefinida. 2.2 Implementaciones Implementaciones a esta recomendación son los proyectos TileCache (en la parte del servidor) y OpenLayers (en la parte del cliente) desarrollados en Metacarta Labs. El proyecto TileCache está desarrollado en python y funciona como proxy entre el cliente y el servidor WMS. Este proxy se encarga de atender las peticiones WMS y de almacenar las tiles en cache (el almacenamiento en cache sigue una estructura de carpetas denominadas tilecache). La ventaja de este proyecto es la generación de las teselas de forma dinámica. Si se realiza una petición a una tesela no cacheada, le pasa la petición al servidor WMS y guarda (cachea) la respuesta de éste para una posterior petición. Geowebcache es un proyecto basado en TileCache pero desarrollado en Java y ofrece la misma funcionalidad. Para la versión de Geowebcache-0.7.1 solo se permite configurar servidores WMS con SRS en EPSG:4326 y EPSG:900913. En la figura 3 se muestra un diagrama de los distintos componentes que intervienen en ambos proyectos. Figura 3. Diagrama de TileCache

El proyecto OpenLayers resuelve el modelo de teselas en la parte del cliente, en base a la malla definida por el TMS, calculando las tiles correspondientes a la zona del visor y genera las URLs de cada tile dependiendo del tipo de servicio que quiere consumir. Es capaz de resolver servicios como WMS, TileCache, TMS, WMS con tilecache, etc.. 3 Solución alternativa En Agosto del 2007, OGC (Open Geospatial Consortium [3]) publicó en su página web un borrador sobre una posible especificación para un servicio WMS con teselas, WMTS [4]. Esta especificación define como ofrecer teselas en la parte del servidor y como consumirlas desde la parte cliente. La ventaja de esta nueva especificación (que aún no es un estándar) frente a las anteriores es que resuelve las limitaciones de ambas, permitiendo cualquier SRS para cada capa y no requiere tener cacheada todas las mallas de teselas, es decir, solo se define la forma de servir y consumir un mapa por teselas. De esta forma, la gestión y el tamaño de la cache dependerán de la infraestructura de cada organismo. Basándose en la última revisión del documento (OGC 07-057r4, 25-03-2008) se ha desarrollado un servicio (proxy) con la misma funcionalidad que TileCache pero consumiendo peticiones según la especificación OGC. Se consigue ofrecer tiles de forma dinámica, dependiendo del tamaño de cache disponible, y sin restricciones de SRS. El tipo de petición definido por la OGC varía por completo de las dos recomendaciones anteriores. Ahora, los distintos niveles de zoom, se definen por escalas en vez de por resoluciones (porque las resoluciones dependen del SRS), la tesela de una petición se pide por sus índices x e y dentro de la malla en vez de por su Bounding Box o caja de coordenadas como en Tilecache, el origen de la malla se centra en la esquina superior izquierda en vez de la esquina inferior izquierda como se define en el TMS, etc. En la parte del cliente se ha utilizado el proyecto OpenLayers pero añadiendo un nuevo tipo de malla siguiendo la especificación de la OGC. Esta nueva malla se diferencia, con respecto a la definida por el TMS, en la colocación de la celda inicial (Fila 0 y Columna 0). A continuación se muestra en la figura 4, la malla

definida por ambos servicios para los mismos datos de entrada: escala, extensión de la capa, tamaño del pixel (0.0028 mm), tamaño de las teselas (256px * 256px). Figura 4. Diferencia de mallas A consecuencia de esta diferencia de mallas, se requiere crear una nueva clase en OpenLayers para poder generar la malla definida por la OGC. En la figura 5, se muestra un diagrama de OpenLayers con las clases relacionadas con el consumo de teselas junto con las clases que han sido necesarias añadir para el consumo del nuevo servicio WMTS (Web Map Tiling Service).

Figura 5. Diagrama de clases La clase GridOGC es que la que se encarga de calcular la malla de tiles definida por la OGC, en base a las distintas escalas configuradas para la capa en cuestión. La clase WMTS es prácticamente una copia de la clase de OpenLayers WMS, con la diferencia de que en la URL que construye para cada tile en vez de añadir el parámetro de BBOX (extensión de la tile), añade los nuevos parámetros de escala, fila y columna que referencia a la tile dentro de la pirámide del modelo de tiles. 4 Conclusiones Es necesaria la implementación de un modelo de tiles para mejorar nuestros servicios de mapas. Se consigue aumentar la escalabilidad y así poder hacer frente a las peticiones de los muchos usuarios que acceden a nuestros servicios de mapas. Actualmente se pueden implantar proyectos que resuelven esta problemática, como TileCache de MetaCarta Labs, aunque la OGC ya tiene un borrador sobre el modelo de tiles así que en breve se podrá hablar de un nuevo estándar en el que basarnos para desarrollar nuestros servicios de mapas. Referencias [1] Tile Map Service Specification (OSGeo), http://wiki.osgeo.org/wiki/tile_map_service_specification

[2] WMS Tiling Client Recommendation (OSGeo), http://wiki.osgeo.org/wiki/wms_tiling_client_recommendation [3] Open Geospatial Consortium (OGC), http://www.opengeospatial.org/ [4] Web Map Tiling Service (OGC), http://portal.opengeospatial.org/files/?artifact_id=23206 [5] TileCache, http://tilecache.org [6] OpenLayers, http://openlayers.org