Publicación de mapas en internet: AWS y CARTO
Hace unas semanas se anunció que El Salvador podría convertirse en el primer país de Latinoamérica en contar con el primer centro de capacitación de cloud computing bajo el cobijo de Amazon Web Services (AWS). Independientemente de esa noticia la publicación de mapas en internet es sumamente útil y en esta entrada explicamos como utilizar AWS y CARTO como herramientas de publicación de mapas en la web
BREVE INTRODUCCIÓN AL CLOUD COMPUTING
El cloud computing consiste en la posibilidad de ofrecer servicios a través de internet.
La computación en la nube es una tecnología que busca tener todos los archivos e información en internet, sin preocuparse por poseer la capacidad suficiente para almacenar información en nuestra computadora.
A continuación, se presentan algunas ventajas y desventajas de este tipo de plataforma.
Ventajas:
- Mejor integración con servicios en red debido a que por su naturaleza toda la información y procesos están alojados de forma centralizada y en internet
- Accesibilidad mundial a través de internet
- Independencia de la instalación de hardware y software físico
- Portabilidad de la información en multiplataforma
- Implementación rápida pues los servidores de servicios normalmente pueden configurar y ofrecer una instancia en cuestión de minutos
- Actualizaciones automáticas
- Uso eficiente de la energía pues solo se ocupa bajo demanda
Desventajas
- La centralización tiene su desventaja desde el punto de vista que hay una dependencia del proveedor de servicios y sus aplicaciones vinculadas
- Normalmente es necesario el acceso de internet para poder acceder a las aplicaciones
- La confiabilidad está en función de la capacidad y estabilidad de la empresa proveedora de servicios
- La mayoría de aplicaciones cloud computing son aun para servicios básicos como almacenamiento y ofimática
- Se necesitan protocolos de comunicación robustos y seguros para evitar la vulnerabilidad de la información
La arquitectura de la computación en la nube esta categorizada en 3 tipos que se explican brevemente a continuación.
Software como servicio (SaaS)
Es la forma mas popular de servicio del cloud computing, el servicio se ofrece como una aplicación final no modificable, ejemplos de esta categoría son las aplicaciones de almacenamiento como Dropbox y Google Drive o las aplicaciones de ofimática como Microsoft 360.
Plataforma como servicio (PaaS)
Es una capa intermedia de servicios en la cual se ofrecen entornos de desarrollo a través de aplicaciones en internet, ejemplos de este tipo de servicios son la Google App Engine y la Microsoft Azure.
Infraestructura como servicio (IaaS)
Son aplicaciones que ofrecen servicios de hardware virtual y de almacenamiento como por ejemplo Amazon Web Services que a través de sus servicios EC2 permite crear maquinas virtuales con especificaciones a solicitud del usuario y el S3 que es un servicio de almacenamiento
¿QUÉ ES CARTO DB?
CARTO es una plataforma de servicios en la nube del tipo Software as a Service (SaaS) que proporciona herramientas GIS y de mapeo web.
CARTO es un software de código abierto construido sobre PostGIS y PostgreSQL y ofrece dos propuestas principalmente:
- CARTO Builder: que es la aplicación web donde los usuarios gestionan los datos, realizan análisis y diseñan mapas. Esta enfocada a usuarios que no son desarrolladores, aunque también tiene la posibilidad de acceder a codificaciones SQL y CSS
- CARTO Engine: es un conjunto de API y bibliotecas para desarrolladores
ENCUESTA DE HOGARES PARA PROPÓSITOS MÚLTIPLES EL SALVADOR
La Encuesta de Hogares de Propósitos Múltiples (EHPM) es un instrumento estadístico realizado anualmente en el territorio de El Salvador por la Dirección General de Estadísticas y Censos (DIGESTYC) desde el año de 1975. Por su naturaleza permite dar seguimiento a la evolución de indicadores de mucha relevancia asociados a las condiciones de vida de la población tales como educación, características de vivienda, mercado laboral, salud, remesas y gastos de los hogares.
Actualmente la base de planificación y análisis de la EHPM es los resultados de población de 2007 lo cual ya presenta una desventaja porque las inferencias que se hacen están realizadas en información con mas de 10 de años de antigüedad.
La motivación principal de elaborar el mapa en CARTO con esta información es que la información de los resultados presentada en el documento final esta principalmente de forma tabular y en el análisis de los datos únicamente aparecen 2 mapas (a pesar de que en los créditos del documento aparecen 11 encargado del área de cartografía)
PROCEDIMIENTO DE ELABORACIÓN Y PUBLICACION DEL MAPA EN CARTO DB
ARCHIVOS BASE PARA LA ELABORACIÓN DEL MAPA
La primera etapa de la compilación de información para la generación del mapa consistió en generar una hoja de cálculo donde se transcribieran los 78 indicadores por departamento puesto que la información esta únicamente contenida en las tablas que se mostraron previamente pero que a su vez están contenidas en un archivo PDF y por tanto no editable.
La base cartográfica a utilizar es un archivo de tipo Shapfile conteniendo los polígonos que definen los departamentos de El Salvador y que puede descargarse de este enlace https://www.cnr.gob.sv/geoportal/LIMITES_WGS_84_.zip
Se realizó un proceso de integración entre la información tabular y la cartográfica utilizando un atributo en común utilizando QGIS habiendo exportado previamente la tabla de la hoja de cálculo a formato CSV para poder introducirla en QGIS.
Finalmente, con la información integrada se realizó una exportación a un archivo Shapefile nuevo que será el que se subirá a CARTO para la generación del mapa.
Es importante decir que esta integración también es posible realizarla directamente en CARTO y mas adelante se mostrará la forma de realizarla.
CARGA DE ARCHIVOS EN CARTO DB
Una práctica recomendable para la subida de archivos que están configurados como Shapefile a CARTO es unir todos los archivos vinculados al Shapefile en un solo archivo ZIP y subir ese archivo creando un nuevo data set en CARTO
GENERACIÓN DEL LAYER DE POBLACIÓN VINCULADO A UN POLÍGONO
El diseño final mapa se pensó considerando como capa de mapa base el mapa por default que preconfigura CARTO y encima de el los polígonos departamentales con un estilo que estuviera en función de la cantidad de población además de una leyenda que sirviera para tener una referencia de la vinculación del color y el valor de población sin la necesidad de colocar la etiqueta y tener mas limpio el mapa para otra información más asimilable.
GENERACIÓN DE UN POP UP CON IMAGEN
Con el fin de poder hacer mas atractivo visualmente la información y debido a que CARTO no permite al usuario final la manipulación de la visualización de la información vinculada a la tabla, sino que más bien hay que crear previamente varias capas de forma individual se pensó en la incorporación de un pop up que incluyera una imagen representativa de del departamento y algunos indicadores económicos representativos de la EHPM.
Para que CARTO pueda identificar que imagen colocar es necesario crear una columna nueva en la tabla en formato de string donde se ubique la URL de la imagen. Para evitar colocar imágenes genéricas con URL obtenidos de búsquedas de Google que pueden ser borradas en el futuro se procedió a la descarga de imágenes resultados de la búsqueda y posteriormente se subieron a Google Drive.
Un aspecto importante a mencionar es que una vez subidas las imágenes a Google Drive el enlace generado para compartir la imagen no es útil para CARTO entonces hay que hacer un cambio. Al generar el enlace habrá una parte de ese enlace que tendrá una serie de letras, números y símbolos posterior a un texto que dice “…id..” esa secuencia de caracteres deberá de introducirse posterior a este texto http://drive.google.com/uc?export=view&id= y esto si generará un enlace que si puede ser interpretado por CARTO.
Ya con ese cambio realizado se selecciona el pop up adecuado y los indicadores a mostrar y el resultado se presenta en la siguiente imagen.
GENERACION DEL LAYER DE PORCENTAJE DE POBLACIÓN VINCULADO AL CENTROIDE DE UN POLIGONO
Para poder generar un resultado fácilmente interpretable por el usuario y poder tomar ventaja de otro sistema de representación se creó una segunda capa vinculada a información puntual.
Para ello se calculó el centroide del polígono departamental a través de QGIS y se generó un archivo CSV que contenía únicamente un ID de los elementos, el valor porcentual de la población y la coordenada de longitud y latitud.
Es importante mencionar que CARTO permite generar análisis en las capas creadas y dentro de esos análisis esta la determinación del centroide de un polígono, pero por alguna razón al realizar este análisis se borran los demás atributos y entonces no es posible generar representaciones vinculadas a estos puntos.
Una vez cargado el nuevo archivo CSV puesto que solo es un archivo que contiene información de tipo tabular, CARTO nos pedirá realizar una geocodificación para lo cual habrá que tirar de otra opción de análisis que tiene.
Luego se crea una nueva columna en tabla y se utiliza un cálculo con SQL para determinar el porcentaje de población por departamento.
Por último, se realiza la configuración de la representación de la nueva capa y se configura de manera tal que el color y tamaño del punto esté en función del valor porcentual de la población.
RESULTADO
Posterior a la configuración anterior ya podemos publicar nuestro mapa y la apariencia final es la siguiente
PUBLICACIÓN DEL MAPA EN AWS S3
Para la publicación del mapa a través de el servicio de alojamiento S3 de Amazon Web Services (AWS) en necesario seguir los siguientes pasos.
Realizamos la publicación de nuestro mapa en CARTO y copiamos el código HTML de la opción de incorporar.
Copiamos el código en un block de notas añadiendo la etiqueta <html> de apertura y cierra al principio y final del documento y guardamos el archivo con extensión HTML
Luego en la consola de AWS utilizamos el servicio S3 y creamos un nuevo bucket que tendremos que configurar con acceso público.
Luego tenemos que configurar el bucket para el alojamiento de un sitio web estático.
En la configuración debemos de indicar el nombre del archivo principal que contendrá la información de la página web y que deberá de ser igual que el nombre del archivo HTML que hemos creado antes.
Luego se debe de digitar el siguiente código en la política del bucket donde “cartoad4ig” es el nombre que se le dio al bucket cuando se creó.
Por último, se carga el archivo HTML que creamos previamente en el block de notas
Luego la dirección de alojamiento tendrá el siguiente formato: http://example-bucket.s3-website.region.amazonaws.com
El texto en rojo se tendrá que reemplazar por el nombre del bucket creado y por la región en la cual fue creado respectivamente.
Para nuestro caso el mapa puede encontrarse a través del siguiente enlace: http://cartoad4ig.s3-website.us-east-1.amazonaws.com/
Esperamos que esta entrada haya sido interesante para ti y que hayas aprendido mucho. Si hubiera alguna pregunta, no dudes en dejarla en los comentarios, más abajo o a través de nuestras redes sociales y a la mayor brevedad posible las estaremos respondiendo. Si esta entrada te ha gustado te invitamos a que la compartas para que este conocimiento llegue a más personas. Hasta la próxima
Otras entradas que te pueden interesar:
- Consultoría de catastro multifinalitario El Salvador
- ¿Qué es la Topología?
- Control de verticalidad con apoyo topográfico
- Usando LiDAR para descubrir sitios arqueológicos en El Salvador
- La costa salvadoreña en un mapa científico francés del siglo XVIII.
SOBRE EL AUTOR
ELLOS YA CONFÍAN EN NUESTRA EXPERIENCIA Y CALIDAD
DEJANOS TUS COMENTARIOS Y SÍGUENOS EN NUESTRAS REDES SOCIALES: