104201

Page 1

Master Thesis ǀ Tesis de Maestría submitted within the UNIGIS MSc programme presentada para el Programa UNIGIS MSc at/en Interfaculty Department of Geoinformatics- Z_GIS Departamento de Geomática – Z_GIS University of Salzburg ǀ Universidad de Salzburg

EVALUACIÓN DE LA EFICIENCIA DE DESEMPEÑO DEL SOFTWARE LIBRE SIG DE ESCRITORIO (QGIS) Y WEB (GEOSERVER) USANDO GEOPACKAGE. EVALUATING THE PERFORMANCE EFFICIENCY OF FREE GIS DESKTOP SOFTWARE (QGIS) AND WEB (GEOSERVER) USING GEOPACKAGE. by/por Msc. Carlos Orlando Lozada Riascos. 01423625 A thesis submitted in partial fulfilment of the requirements of the degree of Master of Science (Geographical Information Science & Systems) – MSc (GIS)

Bogotá – Colombia, Diciembre de 2018.


CERTIFICACIÓN

Por medio del presente documento incluyendo mi firma personal, certifico y aseguro que mi tesis es completamente el resultado de mi propio trabajo. He citado todas las fuentes que usado en mi tesis y en todos los casos he indicado su origen.

Pereira, Diciembre de 2018 (Lugar, Fecha)

. (Firma)

2


RESUMEN

Los Sistemas de Información Geográfica, SIG, no son simples mapas computarizados. Hoy esta tecnología no solo está siendo utilizada en múltiples campos, como el mercadeo, la logística, y la distribución de productos y servicios. Los SIG soportan múltiples decisiones de líderes en diversos campos como la planificación urbana, el transporte, el ordenamiento del territorio, la gestión predial, la gestión de riesgos ambientales, entre otros.

Entendiendo las necesidades de esta creciente industria, en 1994 se crea Open Gis Consortium - OGC, como un organismo que busca la definición de estándares abiertos e interoperables para la todavía naciente tecnología. Hoy OGC agrupa alrededor de 400 organizaciones (usuarios y proveedores de tecnología SIG) quienes desarrollan de forma colaborativa estándares de interfaz y los estándares asociados, así con la formulación de buenas prácticas para el desarrollo de sistemas de información buscando siempre facilitar el intercambio de información. El OGC publicó en el 2015, de manera oficial la especificación del estándar de codificación GeoPackage (GPKG), descrito como un formato de archivo abierto para datos geográficos de tipo vector y ráster, “basado en estándares, independiente de la aplicación o de la plataforma, portable, interoperable y auto descriptivo.”(Open Geospatial Consortium, 2015).

Este proyecto de investigación surge ante la necesidad e inexistencia actual de una evaluación de desempeño del software SIG libre utilizando el formato GeoPackage, cuya especificación es un estándar OGC. Se considera fundamental evaluar su desempeño puesto que una posible mejora significativa será de gran interés para múltiples instituciones estatales que utilizan software SIG libre como herramienta básica de acceso a información espacial, tanto en ambiente de escritorio como Web, abriendo la posibilidad de reducir costos de 3


mantenimiento de herramientas licenciadas de software, a través de la utilización de esta alternativa para la gestión de datos geográficos en línea.

Al Evaluar la eficiencia de desempeño de los productos de software libre SIG de escritorio (QGIS) y SIG Web (GeoServer), para el manejo de datos en formato vector y ráster utilizando el formato GeoPackage en comparación con los formatos SIG tradicionales Shapefile, PostgreSQL extensión PostGIS y GeoTIFF; se espera aportar conocimiento que le permita soportar a las entidades públicas las ventajas y desventajas, del uso del software SIG libre y al mismo tiempo de los nuevos formatos para manejar datos geográficos, que están siendo desarrollados en la industria, que solucionan viejos paradigmas como transportar un mapa digital en un solo archivo.

Hoy la especificación del estándar de codificación GeoPackage por parte de la “Open Geospatial Consortium - OGC”, generó una alternativa de solución al problema evidenciado por instituciones en Colombia como las Corporaciones Autónomas Regionales (CAR), el cual se resume como la posibilidad de contar con un formato de archivo abierto para el intercambio de datos geográficos de tipo vector y ráster, que sea independiente de la aplicación (Visor Web Geográfico) o de la plataforma SIG de escritorio que los usuarios utilicen.

Palabras Clave: GeoPackage, Sistemas de Información Geográfica (SIG), SIG de escritorio, SIG web, eficiencia de desempeño, pruebas de rendimiento.

4


ABSTRACT

Geographic Information Systems (GIS), are not simple computerized maps. This technology is not only used in multiple fields, such as marketing, logistics and the distribution of products and services. GIS support multiple decisions of leaders in various fields such as urban planning, transport, land management, and ordering plans, cadaster, and environmental risk management, among others.

Understanding the needs of this growing industry, the Open GIS Consortium OGC was created in 1994 as an organization that seeks to define open and interchangeable standards for the still-nascent technology. Today, OGC works with around 400 organizations (users and providers of GIS technology), who collaborate to develop an interface standard and an associated standard; as well as formulating good practices for the development of information systems, always seeking to facilitate the exchange of information. In 2015 the OGC officially published the specific standards of the codification for GeoPackage (GPKG), described as a format archive open for geographical data vector and raster “based on standards, independent of the application or platform; portable, interchangeable, and auto descriptive” (Open Geospatial Consortium, 2015).

This research project arises from the need and current non-existence of a performance evaluation of free GIS software using the GeoPackage format, as a possible improvement would be of great interest for multiple state agencies. This performance evaluation uses free GIS software as a basic tool for accessing spatial information, both on desktop and on the Web. It opens a possibility for better managing geographic data online, as well as reducing maintenance costs of licensed software tools.

5


This thesis evaluates the performance efficiency of free software desktop GIS (QGIS) and GIS Web (GeoServer) products for data handling in vector and raster format using the GeoPackage format compared to the traditional GIS formats Shapefile, PostgreSQL with extension PostGIS and GeoTIFF. It aims for providing knowledge, that allows it to support public entities in terms of advantages and disadvantages of using free GIS software, as well as new formats for handling geographic data, which are developed in the industry to solve old paradigms such as transporting a digital map in one single file.

Today, the OGC GeoPackage format generates an alternative solution to the problem identified by institutions in Colombia like Corporaciones Autonomas Regionales (CAR) in terms of resorting to an open file format for the interchange of geographic data vector and raster, independent of the application (Geographic Web Viewer) or of the desktop GIS platform used.

Keywords: GeoPackage, Geographic Information Systems (GIS), GIS Desktop, GIS Web, performance efficiency, benchmark.

6Â Â


TABLA DE CONTENIDO

1. INTRODUCCIÓN .............................................................................. 49 1.1.

Antecedentes del Problema ........................................................................... 49

1.2.

Objetivos ........................................................................................................ 54

1.2.1.

Objetivo General. .................................................................................... 54

1.2.2.

Objetivos Específicos. ............................................................................. 54

1.3.

Pregunta de Investigación .............................................................................. 55

1.4.

Justificación .................................................................................................... 55

1.5.

Alcance........................................................................................................... 56

2. MARCO TEÓRICO ........................................................................... 58 2.1.

Modelos de Calidad en la Ingeniería de Software.......................................... 58

2.2. Atributos de Calidad del Software que son Evaluables al Aplicar Pruebas No Funcionales. .............................................................................................................. 61 2.2.1.

Características Evaluables del Requisito de Usabilidad. ........................ 62

2.2.2.

Características Evaluables del Requisito de Eficiencia del Desempeño. 64

2.2.3.

Características Evaluables del Requisito de Fiabilidad .......................... 65

2.2.4.

Características Evaluables del Requisito de Portabilidad ....................... 65

2.2.5.

Características Evaluables del Requisito de Mantenibilidad................... 66

2.3.

Normas Técnicas ISO/ISO/IEC 2501. ............................................................ 67

2.4.

Atributos de Calidad Seleccionados para el Proyecto. .................................. 69

2.5. Monitoreo de Hardware para las métricas de los atributos de calidad seleccionados para el Proyecto. ............................................................................... 71 2.6.

Operación del Monitoreo de Hardware. ......................................................... 72

2.7.

Registro del Monitoreo de Hardware.............................................................. 73

2.8.

Estructuras de Datos en un Sistema de Información Geográficos................. 74

2.8.1.

Datos Geográficos en Formato Vector.................................................... 77

2.8.2.

Datos Geográficos en Formato Ráster ................................................... 81

2.9.

Especificación del Formato GeoPackage. ..................................................... 82

2.9.1. 2.10.

Características del Soporte de GeoPackage para Datos Vector y Ráster 88 Herramientas Tecnológicas Utilizadas en este Estudio............................ 108

2.10.1. Herramientas para del Monitoreo de Hardware Seleccionadas ............ 108 2.10.1.1.

VMware vSphere ........................................................................... 108

2.10.1.2.

JMeter ............................................................................................ 110 7


2.10.1.3.

Ubidots ........................................................................................... 112

2.10.1.4.

PSutil.............................................................................................. 112

2.10.1.5.

Python ............................................................................................ 113

2.10.2. Herramientas seleccionadas para ejecutar los Geo procesos para las pruebas de desempeño ....................................................................................... 114 2.10.2.1.

QGIS .............................................................................................. 114

2.10.2.2.

GeoServer...................................................................................... 117

2.10.2.3.

PostgreSQL/PostGIS ..................................................................... 119

2.11.

Estándares OGC Utilizados en el Estudio. ............................................... 131

3. METODOLOGÍA (Materiales, Métodos y Procedimientos) ........ 133 3.1.

Metodología para el ambiente de SIG de Escritorio ..................................... 134

3.1.1.

Transformación de entidades geográficas para evaluación .................. 136

3.1.2.

Ejecución del Geoproceso de la prueba ............................................... 143

3.2.

Metodología para el ambiente de SIG WEB ................................................ 151

3.2.1.

Transformación de entidades geográficas para evaluación .................. 152

3.2.2.

Creación de servicios WMS con GeoServer para las pruebas Web ..... 155

3.2.3.

JMeter como herramienta para peticiones a servicios WMS. ............... 162

4. RESULTADOS Y DISCUSIÓN DE LAS PRUEBAS REALIZADAS....................................................................................... 166 4.1.

Resultados Pruebas SIG Escritorio (QGIS). ................................................ 166

4.1.1. Tiempo de ejecución (QGIS) en segundos (s), del geoproceso (centroides) para datos vector. ............................................................................ 166 4.1.2. Tiempo de ejecución (QGIS) en segundos (s), para exportación de sesión de trabajo con datos ráster. ..................................................................... 168 4.1.3. Consumo de memoria (QGIS) en kilobytes (Kb), del geoproceso (centroides) para datos vector. ............................................................................ 169 4.1.4. Consumo de memoria (QGIS) en bytes (B), para exportación de sesión de trabajo con datos ráster. ................................................................................. 171 4.1.5. Consumo de CPU (QGIS) en porcentaje (%), del geoproceso (centroides) para datos vector. ................................................................................................ 172 4.1.6. Consumo de CPU (QGIS) en porcentaje (%), para exportación de sesión de trabajo con datos ráster. ................................................................................. 174 4.1.7. Almacenamiento - Gestión de Disco Duro (QGIS) I/O en Kb/s, del geoproceso (centroides) para datos vector. ........................................................ 175 4.1.8. Almacenamiento - Gestión de Disco Duro (QGIS) I/O en Kb/s, para exportación de sesión de trabajo con datos ráster. ............................................. 179 4.2.

Resultados Pruebas SIG Web (GeoServer). ................................................ 181 8


4.2.1. Tiempo de respuesta (GeoServer) en milisegundos (ms), de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa), configurados a partir de almacenes de Datos vectoriales. .................................. 181 4.2.2. Tiempo de respuesta (GeoServer) en milisegundos (ms), de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa) - BBOX, configurados a partir de almacenes de Datos vectoriales. .................................. 185 4.2.3. Tiempo de respuesta (GeoServer) en milisegundos (ms), de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa) - BBOX, configurados a partir de almacenes de ráster (GeoTIFF, GeoPackage y PostgreSQL/PostGIS). ........................................................................................ 192 4.2.4. Consumo de memoria (GeoServer) en porcentaje y servicios web de mapas estándar WMS para datos vector. ........................................................... 195 4.2.5. Almacenamiento - Gestión de Disco Duro (GeoServer) I/O en Kb/s y servicios web de mapas estándar WMS para datos vector. ................................ 196 4.2.6. Uso de CPU (GeoServer) en porcentaje (%),de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa), configurados a partir de almacenes de datos ráster. ................................................................................. 198 4.2.7. Consumo de memoria (GeoServer) en porcentaje (%), de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa), configurados a partir de almacenes de Datos ráster. ............................................................... 199 4.2.8. Almacenamiento - Gestión de Disco Duro (GeoServer) I/O en Kb/s y servicios web de mapas estándar WMS para datos ráster ................................. 200 4.2.9.

Resultados Pruebas Portabilidad .......................................................... 202

5. CONCLUSIONES ........................................................................... 205 5.1. Conclusiones con Relación a la Eficiencia Computacional del SIG de Escritorio QGIS ....................................................................................................... 208 5.2. Conclusiones con Relación a la Eficiencia Computacional del SIG Web GeoServer ............................................................................................................... 210 5.3.

Recomendaciones........................................................................................ 212

5.4.

Valores ganados con el Proyecto................................................................. 212

6. BIBLIOGRAFIA .............................................................................. 214

9


GLOSARIO

ACID: Es un conjunto general de principios para sistemas transaccionales, no algo vinculado exclusivamente a sistemas relacionales, o incluso a bases de datos. ACID básicamente significa: "Que la base de datos tenga facilidades para evitar datos corruptos o perdida de datos". Un sistema de gestión de bases de datos ACID, cuenta con las funcionalidades necesarias para que sus transacciones

tengan

las

características

de

Atomicidad,

Consistencia,

Aislamiento y Durabilidad (Fowler, 2015). Apache Tomcat: El software Apache Tomcat es el soporte de numerosas aplicaciones Web de gran escala y misión crítica en una amplia gama de industrias y organizaciones. “Apache Tomcat es una implementación de software de código abierto, que funciona como un contenedor de Java servlets desarrollado bajo el proyecto Jakarta. “Las especificaciones de Java Servlet, JavaServer Pages, Java Expression Language y Java WebSocket se desarrollan bajo el Proceso de la Comunidad Java” (Apache Software Foundation, 2018). API: Es un conjunto de herramientas, definiciones y protocolos para crear software de aplicaciones, que permiten que un producto o servicio de software se comunique con otros productos y servicios sin tener que saber cómo fueron implementados (RED HAT, 2018). ArcInfo Coverages: “Una cobertura es un modelo de datos georrelacionales que almacena datos vectoriales; contiene datos espaciales (ubicación) y de atributos (descriptivos) de entidades geográficas. Las coberturas utilizan un conjunto de clases de entidades para representar entidades geográficas. Cada clase de entidad almacena un conjunto de puntos, líneas (arcos), polígonos o anotaciones (texto). Las coberturas pueden tener una topología, que determina las relaciones entre las entidades” (Environmental Systems Research Institute ESRI, 2018). 10


ArcGIS: ArcGIS es un completo sistema de software que permite recopilar, organizar, administrar, analizar, compartir y distribuir información geográfica. Como plataforma tecnológica permite crear y utilizar sistemas de información geográfica (SIG), ArcGIS permite publicar la información geográfica para que esté accesible para cualquier usuario. El sistema está disponible en cualquier lugar a través de navegadores Web, dispositivos móviles como smartphones y equipos de escritorio (Environmental Systems Research Institute ESRI, 2018). ArcMap: Software desarrollado por industrias ESRI, en el cual se representa la información geográfica como una colección de capas y otros elementos en una vista de mapa. Hay dos vistas de mapa primarias en ArcMap: la vista de datos y la vista de composición de mapa. El marco de datos ofrece una ventana geográfica o marco de mapa, donde puede mostrar y trabajar con información geográfica en forma de una serie de capas de mapa. La vista de composición de mapa proporciona una vista de página donde los elementos de mapa (como el marco de datos, una barra de escala y un título del mapa) están organizados en una página para la impresión del mapa (Environmental Systems Research Institute ESRI, 2018). ArcSDE: El servicio de ArcSDE, también conocido como servidor de aplicación de ArcSDE o como arquitectura de tres niveles, transmite datos espaciales entre las aplicaciones SIG y una geodatabase corporativa (Environmental Systems Research Institute ESRI, 2018). Arc Toolbox: Dentro de ArcMap, las herramientas de ArcToolBox, son las que confieren a la aplicación de infinidad de herramientas para los análisis geográficos, relacionar la información entre capas y obtener multitud de capas secundarias fruto del análisis de nuestras capas iniciales (Matellanes et al, 2018). BBOX: Bounding Box, se define como una caja que delimita objetos geográficos, por cuatro coordenadas limites (minx, miny, maxx, maxy). El concepto de Bounding Box o BBOX es ampliamente utilizado en SIG, por 11


ejemplo, en el archivo Shapefile, el Bounding box completo contiene todas las geometrías y es mantenido en los archivos con extensión .shx y .shp. Cada BBOX de polilíneas y de polígonos es también mantenida en el archivo .shp para facilitar su uso (Chaowei, 2017). Benchmark: El Benchmarking es un importante concepto usado en la implementación de funciones de Calidad (QFD). Involucra el concepto de crear métricas cualitativas/cuantitativas de variables medibles que se pueden utilizar para evaluar la calidad de un producto de software en varias escalas en comparación con un punto de referencia. Las métricas son la medida relativa de algunos parámetros relacionados con el producto de software y los procesos que intervienen (Limaye, 2009). Bits: Binary digit (dígito binario). El bit es la unidad básica de información en sistemas de cómputo (Simmonds et al, 1989). BSD: BSD son las siglas de Berkeley Software Distribution. Así se llamó a los cambios de código fuente del sistema operativo UNIX que se hicieron en la Universidad de Berkeley en California. “Estos cambios se conocían como la distribución de software de Berkeley o BSD Unix. Los cambios incluyeron una implementación operativa del protocolo TCP/IP, el software que las computadoras aún usan hoy en día para acceder a Internet y compartir archivos con otras computadoras (Lavigne, 2010). Calidad del Software: Totalidad de propiedades y características de un producto, proceso o servicio que le confiere su aptitud para satisfacer unas necesidades expresadas o implícitas. Existen Estándares de calidad del Software a nivel de Proceso y a Nivel de Producto (International Organization for Standardization ISO, 1994). Ciclo de Vida del Software: El periodo de tiempo que comienza cuando un producto de software es concebido y finaliza cuando se retira de operación. El ciclo de vida del software incluye una fase de conceptualización, definición de 12


requerimientos, fase de diseño, fase de implementación, fase de pruebas, instalación y verificación, operación y mantenimiento y fase de retiro”. La familia de Normas ISO 25000 son referentes del tema de Calidad de Software y Existen un conjunto de Normas ISO especificas relacionadas con los modelos de Calidad, la ISO 15504 Evaluación de procesos de software, la ISO 15939 evaluación de procesos genéricos y La Norma ISO 12207 es la norma asociada al proceso de ciclo de vida del software (Instituto de Ingenieros Eléctricos y Electrónicos IEEE, 1998). Common Information Model - CIM: CIM (Common Information Model) o Modelo de información común, es un método abierto para gestionar sistemas y redes. CIM proporciona una infraestructura conceptual común que se puede aplicar a todas las áreas de gestión, que incluye sistemas, aplicaciones, bases de datos, redes y dispositivos. La especificación de CIM proporciona el idioma y la metodología que se utiliza para describir los datos de gestión (IBM, 2018). Capability Maturity Model Integration - CMMI: Modelo de madurez de mejora de los procesos para el desarrollo de productos y de servicios. Consiste en las mejores prácticas que tratan las actividades de desarrollo y de mantenimiento que cubren el ciclo de vida del producto, desde la concepción a la entrega y el mantenimiento. El propósito de CMMI para desarrollo es ayudar a las organizaciones a mejorar sus procesos de desarrollo y de mantenimiento, tanto para los productos como para los servicios. Las categorías de las áreas de proceso de CMMI son gestión de procesos, gestión de proyectos, ingeniería y soporte (Ocampo et al, 2011). CPU: Unidad central de procesamiento. “La parte principal de la operación de una computadora. Es usualmente definida como el *ALU (unidad lógica y aritmética) y la unidad de control CU” (Butterfield et al, 2016). CyberTech: CyberTech es una firma de tecnología digital y un proveedor líder de soluciones geoespaciales, empresariales y en la nube de próxima generación (CyberTech, 2018). 13


CyberCluster: Es un clúster de ciber seguridad. “El grupo se lanzó el 12 de febrero de 2015 en la inauguración del centro de enseñanza dedicado a la seguridad cibernética (Alan Turing LAB) en la Academia de habilidades digitales de Newcastle College” (North East Cyber Security Clúster, 2018). DBASE IV: Es un paquete de software comercializado por Ashton-Tate una compañía americana de software que eventualmente se convirtió en Borland, y es un medio sofisticado para el desarrollo de aplicaciones empresariales computarizadas. DBase IV es “un sistema de gestión de bases de datos, que permite a un usuario producir bases de datos (colecciones o conjuntos de datos) para cualquier propósito, y relacionar y manipular estas bases de datos de manera efectiva hacia un fin deseado” (Bharucha, 1989). El programa DBase usa el formato de archivo con extensión .DBF el cual ha sido adoptado por una gran cantidad de programas de manejo de base de datos, incluyendo software SIG. Digital Elevation Model - DEM: Un Modelo Digital de Elevación o DEM, es “una representación ráster de una superficie continua, que en general hace referencia a la superficie de la tierra. La precisión de estos datos se determina principalmente por la resolución (la distancia entre los puntos de muestra). Otros factores que afectan la precisión son el tipo de datos (entero o punto flotante) y el muestreo real de la superficie cuando se crea el DEM original” (Environmental Systems Research Institute ESRI, 2018) Depurar Software: Proceso dentro de las pruebas de software consistente en “detectar el lugar donde existe el error, por consiguiente, la eliminación de su origen” (Ocampo et al, 2011) Enhanced Compression Wavelet – ECW: Es un formato de la compañía INTERGRAPH, el cual “es un formato de archivo propietario para almacenar datos ráster, que presenta ratios muy altos de compresión, desde 10:1 hasta de 50:1, mediante el uso de técnicas de ondículas. Como consecuencia de esto se 14


reduce considerablemente el tamaño de los archivos, manteniendo una alta calidad gráfica y permitiendo una rápida compresión y descompresión mediante un uso escaso de memoria RAM. El formato (*.ecw) es ampliamente utilizado en SIG y teledetección por las ventajas de compresión y rapidez de carga, preserva la georreferenciación de la imagen mediante un archivo de cabecera con extensión .ERS (Morales, 2017). EpiCollect+: Es una herramienta genérica de recopilación de datos que le permite recopilar y enviar formularios de datos geoetiquetados (junto con fotos) a un sitio web central del proyecto (alojado en Google App Engine), desde teléfonos móviles adecuados - Android o iPhone. Epicollect ha sido desarrollado en la Escuela Imperial de Londres (Aanensen et al, 2018). File Transfer Protocol - FTP: Protocolo de Transferencia de Archivos. “Protocolo ampliamente utilizado que permite que un archivo se transfiera a través de una red IP, especialmente a través de Internet (Butterfield et al, 2016). FreeBSD: Es un avanzado sistema operativo para arquitecturas x86 compatibles, derivado de BSD, la versión de UNIX® desarrollada en la Universidad de California, Berkeley. FreeBSD es desarrollado y mantenido por un numeroso equipo de personas (Proyecto FreeBSD, 2018). GDAL/OGR: Geospatial Data Abstraction Library.

Librería que provee

herramientas para convertir datos, transformar imágenes, obtener subconjuntos de datos, y otras tareas comunes utilizando un amplio rango de formatos de datos geoespaciales, tanto vector como ráster. Esta biblioteca se lanzó bajo una “licencia de código abierto de estilo X / MIT de la Open Source Geospatial Foundation” (Open Source Geospatial Foundation, GDAL/OGR contributors (2018). Github: Es una plataforma de desarrollo colaborativo de software, “Github está basado en Git, se trata de un servicio de alojamiento de repositorios de 15


software, cuya principal ventaja es su oferta de opciones adecuadas para trabajar en equipo, por lo que resulta en un perfecto complemento cuando manejamos el sistema de control de versiones Git. En Github el código se almacena en forma pública” (Luna et al, 2017). GeoPackage: Es “un formato compacto, abierto, basado en estándares, independiente de la plataforma, auto descriptivo para transferir información geoespacial. El estándar GeoPackage describe un conjunto de convenciones para almacenar lo siguiente dentro de una base de datos SQLite: elementos vectoriales, conjuntos de imágenes y mapas ráster en varias escalas, extensiones” (Open Geospatial Consortium OGC, 2015). GeoServer: Es un servidor de mapas de código abierto escrito en Java que “permite a los usuarios ver y editar datos geoespaciales. Utilizando los estándares abiertos establecidos por Open Geospatial Consortium (OGC), GeoServer permite una gran flexibilidad en la creación de mapas y el intercambio de datos” (GeoServer, 2017). GEOTIFF: El formato GeoTIFF “se ha convertido en un archivo de imagen estándar en la industria de los SIG y en las aplicaciones de teledetección. Casi todos los SIG y programas de procesamiento de imágenes tienen compatibilidad con GeoTIFF. Un archivo GeoTIFF puede ir acompañado de otros archivos: TFW es el archivo requerido para dar geolocalización al ráster, XML contiene los metadatos, AUX

en este archivo se almacenan las

proyecciones y otra información”. ERS (Morales, 2017). GeoTools: GeoTools es una biblioteca Java de código abierto (LGPL) que proporciona métodos que cumplen con los estándares para manipular datos geoespaciales, y utiliza estructuras de datos basadas en las especificaciones del Consorcio Geoespacial Abierto (OGC) (Fundación para el Código Abierto Geoespacial OSGeo, 2018).

16


Graphics Interchange Format - GIF: Es un formato de imagen de mapa de bits que se usa ampliamente en la World Wide Web, tanto para imágenes fijas (imágenes de trama en color paletizadas) como para animaciones” (Butterfield et al, 2016). GML: Geography Markup Language (Lenguaje de Marcado Geográfico). “Es una gramática XML definida por el OGC para expresar características geográficas. Sirve como un lenguaje de modelado para sistemas geográficos, así como un formato de intercambio para transacciones geográficas, especialmente en la red. Permite almacenar objetos vector, coberturas y datos de sensores remotos. Es posible definir restricciones lógicas para GML mediante perfiles. Los perfiles se especifican a través de documentos o esquemas XML y son un mecanismo para acotar el uso del formato” (Soto et al, 2014). GNU: Es un sistema operativo de software libre, es decir, respeta la libertad de los usuarios. El sistema operativo GNU consiste en paquetes de GNU (programas publicados específicamente por el proyecto GNU) además de software libre publicado por terceras partes (Free Software Foundation FSF, 2018). Google Chrome: Es un navegador web desarrollado por la compañía Google LLC, lanzado desde el 2008 y está disponible para los sistemas operativos Windows, Mac OS X, Linux, Android y iOS. Es un navegador rápido, sencillo y seguro Hace parte integral del proyecto de código abierto Chromium OS, integra los servicios de Búsqueda de Google y el Traductor de Google y cuenta con versión empresarial (Google LLC, 2018). Google Earth: Es un programa informático que muestra un tipo de globo virtual que permite visualizar, por ejemplo, la múltiple cartografía, con base en la fotografía satelital; Google Earth fue creado bajo el nombre de EarthViewer 3D por la compañía Keyhole Inc, y luego fue comprada por Google en 2004 (Instituto Español de Marketing Digital IIEMD, 2018) 17


General Public License - GPL: Es una licencia de software libre publicada por la Free Software Foundation. Los usuarios de un programa con licencia GPL son libres para usarlo, acceder al código fuente, modificarlo y distribuir los cambios; siempre que redistribuyan el programa completo (modificado o no modificado) bajo la misma licencia. Esta licencia fue creada originalmente por Richard Stallman fundador de la Free Software Foundation (FSF) para el proyecto GNU. GPS: Global Positioning System. El Sistema de Posicionamiento Global (GPS) es un sistema de localización, diseñado por el Departamento de Defensa de los Estados Unidos con fines militares para proporcionar estimaciones precisas de posición, velocidad y tiempo; operativo desde 1995 utiliza conjuntamente una red de ordenadores y una constelación de 24 satélites para determinar por triangulación, la altitud, longitud y latitud de cualquier objeto en la superficie terrestre (Herring, 1996). GPX: Formato de intercambio, formato de dominio público, basado en XML textual. Este formato permite almacenar datos geográficos y multitudes de atributos en una estructura jerárquica relativamente sencilla de leer por sistemas GIS (Oliveros et al, 2011). Geographic Resources Analysis Support System - GRASS: Es un software SIG bajo licencia GNU General Public License (GPL). Puede soportar información tanto ráster como vectorial y posee herramientas de procesado digital de imágenes (MappingGIS, 2018). GVSIG: Es un Sistema de Información Geográfica (SIG) de escritorio diseñado para capturar, almacenar, gestionar, analizar y generar cualquier tipo de información referenciada geográficamente, con el objetivo de resolver problemas de gestión y planificación de cualquier ámbito. GvSIG es conocido por su interfaz de usuario amigable, así como por ser capaz de acceder a los formatos vectorial y ráster más utilizados actualmente. Dispone de un amplio 18


abanico de herramientas para trabajar con información geográfica (consulta, diseño de mapas, geoprocesamiento, análisis de redes, etc.) convirtiendo GvSIG en una herramienta ideal para usuarios del ámbito de las geociencias (OSGeo, 2018). Graphical User Interface - GUI: La Interfaz Gráfica de Usuario, es el medio con que el usuario puede comunicarse con una máquina (Butterfield et al, 2016). Host: Por definición, cualquier ordenador o la máquina está conectada a una red que tiene un número IP y el nombre del conjunto. Estas máquinas se encargan de proporcionar recursos, información y servicios a los usuarios o clientes. Para este alcance, la palabra se puede utilizar como una designación para varios casos de una máquina y una red, de los ordenadores personales para el router (Ruz, 2018). Hyper Text Mark-up Language - HTML: Una aplicación del Lenguaje de marcado generalizado estándar que usa etiquetas para marcar elementos, como texto y gráficos, en un documento para indicar cómo los navegadores web deben mostrar estos elementos al usuario y deben responder a las acciones del usuario (Microsoft, 2018). HTTP: Hypertext Transfer Protocol. Protocolo de comunicación para la transferencia de datos en internet (Microsoft, 2018). ICSOFT-EA: Conferencia Internacional Conjunta sobre Tecnologías de Software- que reúne investigadores, ingenieros y profesionales que trabajan en áreas que están relacionadas con las nuevas tendencias de paradigmas de software o para integrar la ingeniería de software y las aplicaciones. ICSOFT se compone

de

dos

conferencias

ubicadas

conjuntamente,

cada

una

especializada en las áreas antes mencionadas. Juntos, ICSOFT-PT e ICSOFTEA aspiran a convertirse en un importante punto de encuentro para los

19


ingenieros de software en todo el mundo (International Conference on Software Technologies, 2016). Internet Explorer: Microsoft Internet Explorer es un navegador Web Libre desarrollado por Microsoft, que viene instalado en computadoras incluyendo el sistema operativo Microsoft Windows (Campbell, 2015). IoT: Infraestructura mundial al servicio de la sociedad de la información que propicia la prestación de servicios avanzados mediante la interconexión (física y virtual) de las cosas gracias al funcionamiento de tecnologías de la información y la comunicación (existentes y en evolución)(Unión Internacional de Telecomunicaciones, 2012). IT-Mark: Su objetivo es brindar un sello de calidad para pequeñas y medianas empresas de Tecnologías de la Información, que acredita su madurez y capacidad. También tiene como objetivo mejorar la efectividad organizacional y el éxito en el mercado mediante la mejora de sus procesos. El servicio proporciona conocimiento sobre las capacidades técnicas y gerenciales de la organización a través de la identificación de fortalezas y debilidades, así como del descubrimiento áreas a mejorar de acuerdo con sus metas de negocio (Ocampo et al, 2011). ISO 9001: Es una norma internacional que se aplica a los sistemas de gestión de calidad (SGC) y que se centra en todos los elementos de administración de calidad con los que una empresa debe contar para tener un sistema efectivo que le permita administrar y mejorar la calidad de sus productos o servicios (Romero Lozano, 2014). ISO/IEC 25010: El modelo de calidad representa la piedra angular en torno a la cual se establece el sistema para la evaluación de la calidad del producto. En este modelo se determinan las características de calidad que se van a tener en cuenta a la hora de evaluar las propiedades de un producto software determinado. La calidad del producto software se puede interpretar como el 20


grado en que dicho producto satisface los requisitos de sus usuarios aportando de esta manera un valor. Son precisamente estos requisitos (funcionalidad, rendimiento,

seguridad,

mantenibilidad,

etc.)

los

que

se

encuentran

representados en el modelo de calidad, el cual categoriza la calidad del producto en características y sub-características (ISO25000, 2018). ITIL: Es un conjunto de conceptos y prácticas para la gestión de servicios de tecnologías de la información. ITIL da descripciones detalladas de un extenso conjunto

de

procedimientos

de

gestión

ideados

para

ayudar

a

las

organizaciones a lograr calidad y eficiencia en las operaciones de TI. Estos procedimientos son independientes del proveedor y han sido desarrollados para servir como guía que abarque toda infraestructura, desarrollo y operaciones de TI (Ocampo et al, 2011). JAVA: Java surgió en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de diseñar un nuevo lenguaje de programación destinado a electrodomésticos. La reducida potencia de cálculo y memoria de los electrodomésticos llevó a desarrollar un lenguaje sencillo capaz de generar código de tamaño muy reducido (Castro et al, 2009). JDBC: Java Database Conectivity. Estándar que posibilita operar sobre bases de datos o aplicaciones de estructura diferente. “JDBC es el API del lenguaje de programación JAVA para acceso a bases de datos” (Pastrana et al, 2005). JEE: La Plataforma Java EE se desarrolla a través del Java Community Process (JCP), que es responsable de todas las tecnologías Java. Los grupos de expertos compuestos por partes interesadas han creado solicitudes de especificación de Java (JSR) para definir las distintas tecnologías Java EE. El trabajo de la Comunidad Java bajo el programa JCP ayuda a garantizar los estándares de estabilidad de la tecnología Java y la compatibilidad multiplataforma (Oracle, 2018).

21


JMeter: Apache JMeter es una aplicación de escritorio multiplataforma libre y de código abierto de la base del software Apache, que puede ser utilizado como una herramienta de prueba de carga para analizar y medir el desempeño de una variedad de servicios, con énfasis en aplicaciones web. “JMeter ha existido desde 1998 de acuerdo con los registros históricos de cambios en su sitio oficial, lo que la convierte en una herramienta de prueba confiable, sólida y confiable. JMeter permite que se simulen múltiples usuarios concurrentes en la aplicación, lo que le permite trabajar para alcanzar la mayoría de los objetivos objetivo, como alcanzar puntos de referencia e identificar cuellos de botella: La aplicación ayudará a responder las siguientes preguntas: ¿La aplicación seguirá respondiendo si 50 usuarios acceden simultáneamente? ¿Qué tan confiable será bajo una carga de 200 usuarios? ¿Cuántos recursos del sistema se consumirán con una carga de 250 usuarios? ¿Cómo se verá el rendimiento con 1000 usuarios activos en el sistema? ¿Cuál será el tiempo de respuesta para los diversos componentes en la aplicación bajo carga? (Erinle, 2017). Joint Photographic Experts Group - JPEG / JPG: JPEG 2000 es un estándar de compresión y codificación digital de imágenes. Fue creado en el año 2000 con la intención de sustituir el formato original creado en 1992. JPEG 2000 puede trabajar con niveles de compresión mayores que los de JPEG sin incurrir en generación de bloques uniformes y aspecto borroso. El Open Geospatial Consortium (OGC) ha definido unos metadatos para la georreferenciación de las imágenes JPEG 2000 que incorporan XML utilizando GML. El archivo GML en formato JPEG 2000 para la codificación geográfica de imágenes es GMLJP2. JP2 y JPX son archivos que contienen GMLJP2 por lo que se pueden localizar y mostrar en la posición correcta de la superficie de la tierra con un SIG. JPEG 2000 es una opción óptima para imágenes de fondo debido a la compresión sin pérdida de calidad. JPEG 2000 puede alcanzar una relación de compresión de 20:1, similar al formato MrSID (Morales, 2017). Java Runtime Environment - JRE 1.5+: Java Runtime Environment (JRE) es lo que se obtiene al descargar el software de Java. JRE está formado por Java Virtual Machine (JVM), clases del núcleo de la plataforma Java y bibliotecas de 22


la plataforma Java de soporte”. JRE es la base de ejecución del software de Java, que es todo lo que necesita para ejecutarlo en el explorador web (Java, 2018). JavaScript - JS: Javascript es un lenguaje de programación interpretado con capacidades orientadas a objetos (OO). Javascript se usa más comúnmente en los navegadores web y, en ese contexto, el núcleo de propósito general se extiende con objetos que permiten que los scripts interactúen con el usuario, controlen el navegador web y modifiquen el contenido del documento que aparece en la ventana del navegador web (Flanagan, 2008).

Keyhole Markup Language - KML: El Lenguaje de marcado keyhole (KML) es un formato basado en XML para almacenar datos geográficos y su contenido relacionado y es un estándar oficial del Consorcio Geoespacial abierto (OGC). KML es un formato habitual para compartir datos geográficos con personas que no utilizan SIG, ya que se puede enviar fácilmente en Internet y se puede ver en muchas aplicaciones gratuitas, incluida Google Earth y ArcGIS Explorer, los archivos KML tienen una extensión .kml o .kmz (Environmental Systems Research Institute ESRI, 2018). Lidar: Es un sistema aerotransportado que consta de un distanciómetro láser y de un espejo que desvía el haz perpendicularmente a la trayectoria del avión. Este desplazamiento lateral combinado con la trayectoria del avión permite realizar un barrido del terreno. El sistema mide la distancia del sensor al terreno a partir del tiempo que tarda el rayo de luz en alcanzar el suelo y regresar al sensor. El resultado de una campaña Lidar es una colección de puntos con coordenadas. En general, para que estos datos sean útiles, será preciso clasificarlos o filtrarlos y construir un modelo a partir de los puntos clasificados. Como el número de puntos es muy grande es necesario disponer de herramientas para realizar una clasificación automática de los datos y a continuación revisar y editar manualmente los resultados obtenidos (Ruiz et al, 2003).

23


Linux: Un sistema operativo similar a UNIX de código abierto, originalmente iniciado por Linus Torvalds. LINUX, realmente se refiere solo al núcleo del sistema operativo, o al núcleo de la familia de sistemas operativos de computadora tipo Unix que usan el núcleo de Linux. Linux puede instalarse en una amplia variedad de hardware informático, desde teléfonos móviles, tabletas, enrutadores y consolas de videojuegos, hasta computadoras de escritorio, mainframes y supercomputadoras. Linux es un sistema operativo de servidor líder y ejecuta las 10 supercomputadoras más rápidas del mundo. La distribución de Linux consta de varias utilidades, controladores de dispositivos, aplicaciones, una interfaz de usuario y otras herramientas que generalmente pueden compilarse y ejecutarse en otros sistemas operativos UNIX también (IBM, 2000). Mac OSX: Un sistema operativo es una colección de software que maneja los recursos de hardware del computador y provee servicios comunes a los programas, tales como memoria, procesadores, recursos e información” Mac OSX, es el sistema operativo principal para la familia de computadoras Mac de Apple. XNU es el núcleo o kernel desarrollado por Apple, desde 1996 para su uso en el sistema operativo Mac OS y fue lanzado como software abierto y parte del proyecto Darwin, que usaba componentes de FreeBSD y BSD (Garg et al, 2017). MapInfo: MapInfo Professional es un programa de sistemas de información geográfica SIG desarrollado por la compañía Pitney Bowes, que permite crear, administrar y visualizar datos geoespaciales. Hace lo que todo buen software SIG puede hacer, pero bajo el lema de “Localización Inteligente” brinda capacidades de mapeo detallado, análisis de datos, identificación de patrones y tendencias (Pitney, 2018). MapServer: Es una plataforma de Código Abierto para la publicación de datos espaciales y aplicaciones cartográficas interactivas para la web. Originalmente desarrollado a mediados de los 90’s en la Universidad de Minnesota, MapServer es publicado bajo una Licencia tipo MIT, y funciona en los 24


principales sistemas operativos (Windows, Linux, Mac OS X). MapServer no es un sistema con todas las funcionalidades de un sistema SIG, ni tampoco inspira serlo (OSGeo, 2018). Memoria RAM: Memoria de acceso aleatorio. La sigla RAM se usa para denominar la memoria principal, la cual se mide en megabytes (MB) o gigabytes (GB), “donde la computadora almacena el sistema operativo, los programas de aplicación y los datos en uso actual para que el procesador de la computadora pueda acceder a ellos rápidamente (ITL Education Solutions, 2012). Massachussets Institute of Technology - MIT: El MIT es una universidad independiente, coeducacional y privada, organizada en cinco escuelas (arquitectura y planificación; ingeniería; humanidades, artes y ciencias sociales; administración; ciencia). De acuerdo con el ranking de la firma Quacquarelli Symonds QS, de las 1000 mejores universidades del mundo. El Instituto Tecnológico de Massachusetts (MIT) se estableció como la mejor universidad del mundo por séptimo año consecutivo (Massachussets Institute of Technology, 2018). Modelo FURPS+: Es un modelo de evaluación de calidad para diseño de software, propuesto por Robert Grady y Hewlett Packard Co (HP) en 1987. El modelo FURPS+ toma en cuenta los siguientes factores de calidad: Funcionalidad (Functionality), Usabilidad (Usability), Confiabilidad (Reliability), Desempeño (Performance) y Mantenibilidad (Supportability). La funcionalidad se califica de acuerdo con el conjunto de características y capacidades del programa, la generalidad de las funciones que se entregan y la seguridad general del sistema. La usabilidad se evalúa tomando en cuenta factores humanos, la estética general, la consistencia y la documentación. La confiabilidad se evalúa con la medición de la frecuencia y gravedad de las fallas, la exactitud de los resultados que salen, el tiempo medio para que ocurra una falla (TMPF), la capacidad de recuperación ante esta y lo predecible del programa. El rendimiento se mide con base en la velocidad de procesamiento, 25


el tiempo de respuesta, el uso de recursos, el conjunto y la eficiencia. La mantenibilidad combina la capacidad del programa para ser ampliable (extensibilidad), adaptable y servicial (estos tres atributos se denotan con un término más común: mantenibilidad), y además que pueda probarse, ser compatible y configurable (capacidad de organizar y controlar los elementos de la configuración del software (Pressman, 2015). Modelo de datos: A principios de 1970, el Standards Planning and Requirements Committee (SPARC) del American National Standards Institute (ANSI) definió una estructura para modelar datos con base en grados de abstracción de datos: externo (los diagramas ER se usan para representar vistas externas), conceptual (diseño lógico) e interno (modelo físico). En Bases de Datos, “Un modelo de datos es una definición lógica, independiente y abstracta de los objetos, operadores, y demás que en conjunto constituyen la maquina abstracta con la que interactúan los usuarios. Los objetos nos permiten modelar la estructura de los datos, los operadores nos permiten modelar su comportamiento Los componentes básicos de modelado de datos son las entidades, atributos, relaciones y restricciones y se usan reglas de negocio para identificar y definir los componentes del modelado en determinado ambiente (Date, 2001). MoProSoft: Es un modelo de procesos para la industria de software nacional de México promovido por la Secretaria de Economía, que fomenta la estandarización de la operación a través de la incorporación de las mejores prácticas en gestión e ingeniería de software. La adopción del modelo permite elevar la madurez de los procesos para las organizaciones que desarrollan y/o mantienen software para ofrecer servicios con calidad y alcanzar niveles internacionales de competitividad (Ocampo et al, 2011). No conformidad y/o hallazgo: Es una desviación de los resultados esperados, en otras palabras, es un error, defecto o falla que va más allá del alcance de las pruebas ejecutadas. Se categorizan en Bloqueantes, Funcionales y Presentación. Bloqueantes: Es el tipo de no conformidad que 26


detiene la operación de un programa/componente o hace que este arroje resultados que impiden la continuidad de la operación del cliente. Funcionales: Es el tipo de no conformidad que se presenta cuando al ejecutar una opción particular del sistema creada para dar solución a un requisito funcional, no se evidencia que el requisito se solucione. Presentación: Son no conformidades relacionadas con la presentación de los resultados en la ejecución de una opción del sistema. Estos deben ajustarse a los estándares definidos y con las reglas gramaticales y ortográficas del idioma en que es presentada la solución (Ocampo et al, 2011). Mozilla Firefox: Es un navegador web libre y de código abierto, actualmente desarrollado por la Corporación Mozilla,

la Fundación Mozilla y un gran

número de voluntarios externos. Mozilla Firefox es el segundo navegador más utilizado de Internet. Firefox es un navegador multiplataforma y está disponible en varias versiones de Microsoft Windows, Mac OS X, GNU/LINUX y algunos sistemas basados en UNIX (Carmona, 2017). Message Queuing Telemetry Transport - MQTT: Es un protocolo de mensajería basado en el estándar ISO (ISO / IEC PRF 20922). Funciona sobre el protocolo TCP / IP. Está diseñado para conexiones con ubicaciones remotas donde se requiere una "huella de código pequeña" o el ancho de banda de la red es limitado. El patrón de publicación publicación-suscripción requiere un intermediario de mensajes (Yevilao, 2018) MySQL: El software MySQL es un sistema de gestión de base de datos relacional (RDBMS) de alto rendimiento, multihilo, multiusuario construido alrededor de una arquitectura cliente-servidor, basado en lenguaje de consulta estructurado (SQL) y multiplataforma. “La popularidad de MYSQL es debida a la particular combinación de elementos únicos: velocidad, confiabilidad, extensibilidad y código abierto” (Vaswani, 2010). OpenJUMP PLUS: Es un SIG de escritorio poderoso y fácil de usar que permite a los usuarios editar, analizar, combinar, guardar y visualizar datos 27


geográficos. Tiene una versión Core y una versión plus, teniendo la última añadidos montones de complementos útiles. También es una excelente plataforma para realizar pruebas de desarrollos de función SIG personalizadas (OSGeo, 2018). OpenLayers: Es una biblioteca ligera de mapeo para la web y clientes móviles que usa tecnologías de los navegadores modernos como HTML5, WebGL y CSS3. “OpenLayers hace que sea fácil poner un mapa dinámico en cualquier página web. Puede mostrar mosaicos de mapas, datos vectoriales y marcadores cargados desde cualquier fuente. OpenLayers ha sido desarrollado para promover el uso de información geográfica de todo tipo. Es completamente gratuito, JavaScript de Código Abierto, publicado bajo la licencia BSD de 2 cláusulas (también conocida como FreeBSD)” (OSGeo, (2018). Opera: Opera es un navegador de internet libre desarrollado por Software Opera. “El navegador Opera es otro navegador altamente seguro con características para protegerse contra spyware y virus que pueden infectar su computadora mientras navega por la web. Opera fue uno de los primeros navegadores en ofrecer navegación por pestañas, integración de RSS integrada, bloqueo de ventanas emergentes, múltiples barras de herramientas personalizables y un campo de búsqueda personalizable fácil de usar” (Campbell, 2015). OSGeo: La Fundación para el Código Abierto Geoespacial, u OSGeo, es una organización sin ánimo de lucro cuyo objetivo principal es apoyar y promocionar el desarrollo abierto y colaborativo de los datos y las tecnologías geoespaciales. La Fundación proporciona apoyo económico, organizativo y legal a la comunidad del código abierto geoespacial. Además, es una entidad legal independiente a la que los miembros de la comunidad pueden aportar código fuente, donativos y otros recursos, seguros de saber que sus contribuciones permanecerán siempre para el beneficio común. OSGeo sirve además como una organización de apoyo a la comunidad del código abierto 28


geoespacial, proporcionando un foro e infraestructura compartido para mejorar la colaboración horizontal entre proyectos (OSGeo, 2018). QGIS: Es un software de Sistemas de Información Geográfica (SIG) de escritorio, con Código Abierto licenciado bajo GNU - General Public License. QGIS es un proyecto oficial de Open Source Geospatial Foundation (OSGeo). Se ejecuta sobre Linux, Unix, Mac OSX, Windows y Android y soporta numerosos formatos y funcionalidades de datos vector, datos ráster y bases de datos (QGIS, 2018). Quantum GIS: Véase QGIS. PGDG: PostgreSQL Global Development Group, comunidad de desarrolladores de PostgreSQL que trabajan de forma desinteresada, altruista, libre o apoyados por organizaciones comerciales. Pixel: El píxel se utiliza a menudo como sinónimo de celda. Tanto ‘celda’ como ‘píxel’ hacen referencia a la unidad más pequeña de información contenida en los datos ráster. ‘Píxel’ es una abreviatura de la expresión inglesa “picture element” (elemento de imagen), y a menudo se utiliza al hablar de imágenes, mientras que ‘celda’ a menudo se utiliza al hablar de datos ráster. Las celdas y los píxeles tienen una dimensión y un valor. Representan información como la temperatura, los tipos de suelo o la elevación, y entidades del mundo real como parques, lagos y edificios (Environmental Systems Research Institute ESRI, 2018). PLUGINS: Un plug-in es un complemento que permite que cierto código adicional al código fuente de un programa pueda ser ejecutado separadamente (Guillén et al, 2013). PNG: Portable Network Graphics, es un formato de imagen de mapa de bits que emplea compresión de datos sin pérdida. PNG fue creado para mejorar y reemplazar el formato GIF. El formato de archivo PNG es considerado, y se 29


hizo como un sucesor de código abierto y gratuito al formato de archivo GIF. El formato PNG admite color verdadero (16 millones de colores), mientras que el formato GIF solo permite 256 colores. PNG sobresale cuando la imagen tiene grandes áreas de color uniforme. El formato PNG sin pérdida es el más adecuado para la edición de imágenes, mientras que los formatos con pérdida como JPG son mejor para la distribución final de imágenes de tipo fotográfico debido al tamaño de archivo más pequeño (Jayaraman et al, 2011). PostGIS: Un objeto geográfico es un tipo especial de datos que permite almacenar una posición geográfica o un conjunto de ellos como parte de una línea o un polígono. PostGIS es la Extensión geográfica del sistema manejador de base de datos (DSMB) PostgreSQL, que le permite almacenar objetos geográficos como parte de tablas de datos. “Esencialmente, PostGIS es una herramienta poderosa que le permite manejar datos geográficos complejos y explorar visualmente estos datos cuando se usan junto con herramientas gráficas, como QGIS”. PostGIS implementa la estructura de índice genérica (GIST), que le permite crear índices en casi cualquier tipo de tipo de datos. Debido a esta flexibilidad y al hecho de que la estructura de PostgreSQL brinda la posibilidad de construir funciones personalizadas muy estrechamente para el núcleo, PostGIS, básicamente agrega datos espaciales, índices espaciales y funciones espaciales a las características existentes de PostgreSQL (Márquez, 2015). PostgreSQL: Es uno de los sistemas de bases de datos de código abierto más avanzados del mundo, y tiene muchas características que son ampliamente utilizadas por los desarrolladores y administradores de sistemas. PostgreSQL 10 se lanzó a fines de 2017 y es la primera versión que sigue el nuevo esquema

de

numeración

introducido

por

la

comunidad

PostgreSQL.

PostgreSQL 10 ahora admite: a) Método de autenticación SCRAM-SHA-256, que es mucho más seguro que el método md5, b) Replicación lógica que permite publicar un conjunto de tablas en un servidor y pedir a otros servidores que se suscriban a los cambios. c) La comunidad ha introducido quorum COMMIT (Número mínimo de máquinas que realizan la misma acción (cometer 30


o abortar) para una transacción determinada), le da a los desarrolladores y administradores la oportunidad de definir lo que quorum COMMIT hace de una manera más detallada. d) En la versión 10, la partición de tablas finalmente llegó al núcleo de PostgreSQL. e) La versión 10 da un paso importante hacia un paralelismo aún mayor, ya que muchas más operaciones ahora pueden beneficiarse de los sistemas de múltiples núcleos. f) Con PostgreSQL se pueden habilitar codificaciones ICU, resolviendo inconvenientes de versiones anteriores con el codificado del sistema operativo. g) PostgreSQL 10 mejora la creación de estadísticas. La función le dará al optimizador la oportunidad de obtener una visión más profunda de lo que está sucediendo al almacenar estadísticas multivariadas (Schonig, 2018). Personal Software Process - PSP: Proporciona un marco estructurado de formularios, directrices y procedimientos para el desarrollo de software, “es un proceso de auto mejora que le ayuda al desarrollador a controlar, administrar y mejorar la forma en que trabaja. PSP proporciona los datos que necesita para hacer y cumplir compromisos, y hace que los elementos de rutina del trabajo de desarrollo sean más predecibles y eficientes, también proporciona un marco para comprender el porqué de los errores y la mejor manera de encontrarlos, corregirlos y prevenirlos. Por otra parte, permite definir, medir y analizar su propio proceso” El PSP está diseñado para usarse con cualquier lenguaje de programación o metodología de diseño y se puede usar para la mayoría de los aspectos del trabajo del software, incluidos los requisitos de escritura, la ejecución de pruebas, la definición de procesos y la reparación de defectos (Humphrey, 2005). PSutil: Es una librería multiplataforma para recuperar información sobre procesos en ejecución y la forma que estos proceso utilizan los recursos del sistema (CPU, memoria, discos, red, sensores) en Python. Es útil principalmente para supervisar el sistema, perfilar y limitar los recursos del proceso y la gestión de los procesos en ejecución. Implementa muchas funcionalidades ofrecidas por las herramientas de línea de comando de UNIX como: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice, ionice, iostat, iotop, 31


uptime, pidof, tty, tasket, pmap. La librería PSutil actualmente soporta las siguientes plataformas: Linux, Windows, Mac OS, FreeBSD, OpenBSD, NetBSD, Sol Solaris, AIX (Python Software Foundation PSF, 2018). Probar software: Proceso que permite determinar la existencia de errores, defectos o fallas en el software (Ocampo et al, 2011). Procesos: El proceso ayuda a los miembros de una organización a alcanzar los objetivos estratégicos ayudando a trabajar más inteligentemente, no más duro, y de un modo más consistente. Los procesos eficaces también proporcionan un medio para introducir y utilizar nuevas tecnologías de forma que permitan responder mejor a los objetivos estratégicos de la organización. Un proceso de software proporciona la estructura desde la que se puede establecer un detallado plan para el desarrollo del software (Ocampo et al, 2011). Pruebas funcionales: Aquellas evaluaciones que se realizan sobre la ejecución de funcionalidades del sistema, verificando la existencia de errores, defectos o fallas en la solución software comparándola frente a los requisitos funcionales (Ocampo et al, 2011). Pruebas no funcionales: Estas se realizan para verificar que el software desarrollado cumple con los requerimientos no funcionales establecidos por el cliente. Existen varios tipos de pruebas no funcionales, entre las más comunes están las pruebas de seguridad, pruebas de rendimiento, pruebas de usabilidad, pruebas de portabilidad, entre otras (Ocampo et al, 2011). Scampi: El método SCAMPI se utiliza para la evaluación de las organizaciones que usan CMMI, y un resultado de una evaluación es una calificación [Ahern 2005]. Si en una evaluación se usa la representación continua, la calificación es un perfil de nivel de capacidad. Si en una evaluación se usa la representación por etapas, la calificación es un nivel de madurez (p.ej., nivel de madurez). Los métodos de evaluación SCAMPI son generalmente métodos aceptados que se 32


usan para realizar evaluaciones utilizando modelos CMMI. El Documento de definición del método Method Definition Document (MDD) de SCAMPI— define las reglas para asegurar la consistencia de las calificaciones de la evaluación (Ocampo et al, 2011). Shapefile: Un Shapefile es un formato sencillo y no topológico que se utiliza para almacenar la ubicación geométrica y la información de atributos de las entidades geográficas. Las entidades geográficas de un Shapefile se pueden representar por medio de puntos, líneas o polígonos (áreas). El espacio de trabajo que contiene Shapefile también puede incluir tablas DBase, que pueden almacenar atributos adicionales que se pueden vincular a las entidades de un shapefile (Environmental Systems Research Institute ESRI, 2018). Un shapefile almacena información de atributos y geometría no topológica para las características espaciales en un conjunto de datos. La geometría de una entidad se almacena como una forma que comprende un conjunto de coordenadas vectoriales. Debido a que los Shapefile no tienen la sobrecarga de procesamiento de una estructura de datos topológica, tienen ventajas sobre otras fuentes de datos tales como una mayor velocidad de dibujo y capacidad de edición. Los shapefiles manejan entidades individuales que se superponen o no son contiguas. También suelen requerir menos espacio en el disco y son más fáciles de leer y escribir. Los shapefiles pueden soportar características de puntos, líneas y áreas. Las entidades de área se representan como polígonos de ciclo cerrado y polígonos doblemente digitalizados (Environmental Systems Research Institute ESRI, 1998) SLD: El estándar OGC, Styled Layer Descriptor (SLD) proporciona los artefactos para la simbolización y coloreado de coberturas y geometrías geográficas. Se utiliza generalmente para aplicar estilos a los Web Map Services WMS, o los estilos de un GML proporcionado por Web Feature Services WFS. El control fino de la representación gráfica de datos es un requerimiento fundamental de muchas aplicaciones de mapas. La habilidad para definir reglas de definición de estilos requiere un lenguaje de estilos que

33


tanto las parte cliente, como la parte servidora puedan entender (Open Geospatial Consortium, 2018). SIG: Acrónimo de Sistema de Información Geográfica. De acuerdo con el uso común, un Sistema de Información Geográfica SIG, es un sistema diseñado para capturar, almacenar, manipular, analizar, administrar y presentar todo tipo de datos geográficos. El término similar, ciencia de la información geográfica, incluye los fundamentos teóricos de los SIG, como los que proporciona el nuevo

departamento

Inter

facultad

de

la

Universidad

de

Salzburgo

(www.zgis.at) y su plan de estudios UNIGIS (Khosrowpour & Information Resources Management Association, 2016). Un sistema de información geográfica (SIG) es un sistema empleado para describir y categorizar la Tierra y otras geografías con el objetivo de mostrar y analizar la información a la que se hace referencia espacialmente. Este trabajo se realiza fundamentalmente con los mapas. Los mapas representan colecciones lógicas de información geográfica como capas de mapa. Constituyen una metáfora eficaz para modelar y organizar la información geográfica en forma de capas temáticas. Asimismo, los mapas SIG interactivos ofrecen la interfaz de usuario principal con la que se utiliza la información geográfica. A partir de la definición se pueden describir, cinco componentes funcionales en un SIG: Adquisición de Datos y verificación de datos. Almacenamiento de Datos y sistema manejador de base de datos DBMS. Transformación de Datos, Análisis y modelamiento. Salida de Datos y presentación. Interfase de usuario (Environmental Systems Research Institute ESRI, 1998). Sistemas CAD: Computer Aided Design, que se traduce como Diseño Asistido por Computador (DAC), o Diseño Asistido por Ordenador (DAO), aunque el acrónimo inglés es el más utilizado. En un sentido amplio, podemos entender el CAD como la aplicación de tecnologías de la información y de la comunicación al proceso de diseño (Universidad de Valencia, 2018). Sistemas R-Trees: Un R-Tree es un índice especial que está diseñado para hacer consultas de rango, en donde cada entrada del índice pertenece a un 34


rectángulo con coordenadas X e Y mínimas y máximas. Dado un rectángulo de consulta, un R-Tree puede encontrar rápidamente todas las entradas que están contenidas dentro del rectángulo de consulta o que se superponen con el rectángulo de consulta. R-Tree es un árbol altamente equilibrado similar a BTree con registros de índice en sus nodos de hoja que contienen punteros a objetos de datos. Los nodos corresponden a las páginas del disco si el índice es residente del disco y la estructura está diseñada de modo que una búsqueda espacial requiera visitar solo un pequeño número de nodos. El índice es completamente dinámico; Las inserciones y las eliminaciones se pueden combinar con búsquedas y no se requiere una reorganización periódica. Una base de datos espacial consiste en una colección de tuplas que representan objetos espaciales, cada tupla tiene un identificador único en el índice R-Tree, que se puede usar para recuperar los nodos de hoja en un registro de índice de árbol R (Guttman et al, 1983). Solaris: Es un sistema operativo de tipo Unix desarrollado desde 1994 inicialmente por Sun Microsystems y actualmente propiedad de Oracle Corporation tras la adquisición de SUN por parte de esta. “Oracle Solaris 11.3 es una plataforma segura, integrada y abierta diseñada para entornos de nube empresarial a gran escala, lo que permite a las organizaciones implementar aplicaciones empresariales de misión crítica de manera segura y sin compromiso. Combina todas las capacidades de seguridad y cumplimiento necesarias en el centro de datos con OpenStack, virtualización sin gastos generales y despliegue ágil de aplicaciones, todo en una única plataforma compatible en la nube (Oracle, 2018). SQL: Lenguaje estándar utilizado en la programación de bases de datos. (Sommervile, 2011) SQLite: Contenedor de archivo único, auto contenido, multiplataforma, independiente de servidor, transaccional y basado en un sistema de gestión de bases de datos relacional RDBMS abierto (Open Geospatial Consortium, 2015). 35


Scalable Vector Graphics - SVG: Corresponde a gráficos vectoriales escalables y es un formato de archivo gráfico basado en vectores para el uso de Internet. Este formato se basa específicamente en XML, destinado a crear un formato de archivo de imagen más pequeño y escalable para uso en Internet. La especificación SVG es un estándar abierto desarrollado por el World Wide Web Consortium (W3C) desde 1999 (Jayaraman et al, 2011). Team Software Process - TSP: Es un modelo desarrollado por el software Engineering Institute (SEI), que ha resultado ser muy valioso para guiar los ingenieros y sus directores en el uso de métodos para la conformación de equipos efectivos de trabajo. Este modelo fue adaptado en Agile SPI process para usar los valores propuestos y garantizar un mejor trabajo en los equipos que se recomiendan crear Esta técnica se ha denominado Team Software Process Improvement (TSPI) (Hurtado et al, 2009). TCP: Transfer Control Protocol / Internet Protocol. Es el protocolo que se utiliza en Internet. “TCP proporciona un servicio de capa de transporte confiable, orientado a la conexión, de bytes, construido con muchas técnicas. TCP empaqueta los datos de la aplicación en segmentos, establece un tiempo de espera cada vez que envía datos, confirma los datos recibidos por el otro extremo, reordena los datos fuera de orden, descarta datos duplicados, proporciona control de flujo de extremo a extremo y calcula y verifica Suma de control obligatoria de extremo a extremo (Stevens et al, 2012). Ubidots: Ubidots presta un servicio en la nube, donde cada usuario cuenta con un portal web (dashboard) para visualizar la información de sus sensores de manera remota, centralizada y en tiempo real. Una vez almacenada la información,

los

usuarios

pueden

configurar

acciones

o

reportes

personalizados, como por ejemplo recibir un mensaje de texto cuando la temperatura de una nevera está por encima de lo permitido (Procolombia & Peláez, 2015).

36


User Datagram Protocol - UDP: El grupo de protocolos de Internet también maneja un protocolo de transporte sin conexiones, el UDP (User Data Protocol, protocolo de datos de usuario). El UDP ofrece a las aplicaciones un mecanismo para enviar datagramas IP en bruto encapsulados sin tener que establecer una conexión. Muchas aplicaciones cliente-servidor que tienen una solicitud y una respuesta usan el UDP en lugar de tomarse la molestia de establecer y luego liberar una conexión (Networking and Emerging Optimization - NEO, 2018). UNIX/LINUX: UNIX nace en los laboratorios Bell de Canadá en la década de los años 70 de la mano de Ken Thompson, Dennis Ritchie y otros. Su objetivo era crear un sistema operativo rápido y potente que inicialmente fue desarrollado en lenguaje ensamblador que lo hacía dependiente de la maquina (PDP-7). Años después, Ritchie desarrolla el lenguaje de programación C partiendo de su predecesor y escribiendo nuevamente el sistema operativo UNIX con un lenguaje altamente portable Entre las principales características del sistema operativo están: multitarea, multiusuario (usuarios concurrentes), orientado a las comunicaciones y soporta varios protocolos de red (TCP/IP y NFS), maneja gran cantidad de periféricos, maneja grandes volúmenes de información, facilita el desarrollo de aplicaciones de software (Quero, 2003). Uniform Resource Locator - URL: El localizador uniforme de recursos es el sistema de direccionamiento estándar de Internet World Wide Web. Una URL consta de dos partes: La primera indica el protocolo que se debe utilizar (por ejemplo, http://); la segunda, especifica la dirección IP o el nombre de dominio y la ruta en que se encuentra la información deseada. Una cadena de caracteres alfanuméricos que especifican un recurso de Internet. Un URL incluye el protocolo (HTTP), el nombre de dominio del equipo en el cual se almacena la información (ejemplosymantec.com) y la ubicación del contenido (noticias).Una cadena de caracteres en un formato estandarizado que remite a un recurso en Internet por su ubicación (Symantec, 2018). Verificación de software: Técnica y actividad ligada al control de calidad del software se trata de comprobar si los productos construidos en una fase de 37


ciclo de vida satisfacen los requisitos establecidos en una fase anterior y/o si el software construido satisface los requisitos del usuario (Ocampo et al, 2011). Visual FoxPro - VFP: Es un lenguaje de programación orientado a objetos y procedimental desarrollado por Microsoft. Visual FoxPro deriva del FoxPro, desarrollado en 1984 por Fox Software. Se unió a Microsoft en 1992, adquiriendo el prefijo "Visual" con la versión Visual FoxPro 3.0 para Windows y Macintosh. Luego sólo perduró la versión para Windows. Microsoft no tiene intenciones de crear una versión basada en el .NET Framework (Alegsa, 2010). Validación de Software: Técnica y actividad ligada al control de calidad del software se trata de comprobar si los productos construidos en una fase de ciclo de vida, funciona como el usuario quiere y realiza las funciones que se habían solicitado (Ocampo et al, 2011). VMware: La virtualización es el proceso de crear una representación basada en software (o virtual), en lugar de una física. La virtualización se puede aplicar a servidores, aplicaciones, almacenamiento y redes, y es la manera más eficaz de reducir los costos de TI y aumentar la eficiencia y la agilidad de los negocios de cualquier tamaño. La virtualización puede aumentar la escalabilidad, flexibilidad y agilidad de TI, al mismo tiempo que genera ahorros significativos en los costos. Las cargas de trabajo se implementan con mayor rapidez, el rendimiento y la disponibilidad aumentan, y las operaciones se automatizan. Todo esto hace que la administración de TI sea más simple y que su operación y propiedad sean menos costosas. VMware Inc., (VM de Virtual Machine) es una filial de EMC Corporation que proporciona software de virtualización disponible para ordenadores compatibles X86. El software de VMware puede funcionar en Windows, Linux, y en la plataforma Mac OS X que corre en procesadores INTEL, bajo el nombre de VMware Fusión (EMC Corporation, 2018). VSphere: VMware vSphere es la plataforma de virtualización líder del sector para construir infraestructuras de iCloud. Permite a los usuarios ejecutar 38


aplicaciones críticas para el negocio con confianza y responder con mayor rapidez a las necesidades empresariales. vSphere acelera el cambio hacia el cloud computing para los centros de datos existentes, además de sustentar las ofertas de cloud pública, de tal forma que constituye la base para el único modelo de cloud hibrida del sector. Con más de 250.000 clientes en todo el mundo y la compatibilidad con más de 2500 aplicaciones de más de 1400 asociados, VMware vSphere es la plataforma de confianza para cualquier aplicación (EMC Corporation, 2018). WMS: El Open Geospatial Consortium (OGC) ha definido los protocolos de especificación del Servicio de Mapas Web (WMS) para la transferencia de datos geoespaciales de los servidores a las aplicaciones cliente. “El Estándar Open GIS de Interfaz de Servicio de Mapas Web (WMS) proporciona una interfaz HTTP simple para solicitar imágenes de mapas geo-registradas de una o más bases de datos geoespaciales distribuidas. Una petición WMS define las capas geográficas y el área de interés que se procesará. La respuesta a la petición es una o más imágenes de mapa con registro geográfico (devueltas como JPEG, PNG, etc.) de los datos geoespaciales que se pueden mostrar en una aplicación del navegador. La interfaz también admite la capacidad de especificar si las imágenes devueltas deben ser transparentes para que las capas de múltiples servidores puedan combinarse o no (Open Geospatial Consortium, 2006) Web Feature Service - WFS: Es un servicio Web de entidades u objetos (Feature) de tipo Vector. El Servicio de entidades (WFS) representa un cambio en la forma en que se crea, modifica e intercambia la información geográfica en Internet. En lugar de compartir información geográfica en el nivel de archivo mediante el Protocolo de transferencia de archivos (FTP), por ejemplo, el WFS ofrece un acceso directo y detallado a la información geográfica en el nivel de la característica y la característica. Los servicios de funciones web permiten a los clientes recuperar o modificar solo los datos que buscan, en lugar de recuperar un archivo que contiene los datos que buscan y posiblemente mucho más. Luego, esos datos se pueden utilizar para una amplia variedad de 39


propósitos, incluidos fines distintos a los previstos por sus productores (Open Geospatial Consortium, 2014). Web Coverage Service - WCS: El Servicio de cobertura web (WCS) de OGC proporciona una especificación abierta para compartir datasets ráster en la web. Un servicio WCS devuelve datos en un formato que se puede utilizar como entrada para análisis y modelado. En cambio, el Servicio web de mapas de OGC (WMS) únicamente devuelve una imagen de los datos. Los datasets ráster que se facilitan a través de los servicios WCS se conocen como coberturas. Los servicios WCS son útiles si desea que sus datasets ráster estén disponibles en línea de forma abierta y reconocida a través de diferentes plataformas

y

clientes.

Cualquier

cliente

generado

para

admitir

las

especificaciones WCS 1.0.0, 1.1.0, 1.1.1 y 1.1.2 y 2.0.1. puede ver y trabajar con su servicio (Environmental Systems Research Institute ESRI, 1998)

40


LISTA DE FIGURAS

Figura 1. Categorías de los requisitos no funcionales .................................................. 59 Figura 2. Tipos de requisitos no funcionales y sus categorías. .................................... 60 Figura 3. Jerarquía de Requisitos No Funcionales....................................................... 61 Figura 4 Características ISO/IEC 25000. ..................................................................... 68 Figura 5. Modelos de representación de datos geográficos ........................................ 74 Figura 6. Mapa de Temperatura Promedio Multianual ................................................. 76 Figura 7. Formatos de almacenamiento e intercambio habituales para datos Vector.. 78 Figura 8. Resumen del formato Shapefile mediante un Esquema Preconceptual ....... 80 Figura 9. Formatos de almacenamiento e intercambio habituales para datos Ráster. 81 Figura 10 Diagrama de clases del Formato GeoPackage ............................................ 87 Figura 11 Modelo geométrico del Core del formato GeoPackage................................ 87 Figura 12 Características del soporte del formato GeoPackage tanto para datos Vector y Ráster. ....................................................................................................................... 88 Figura 13 Vista de las capas Ráster y Vector analizadas en el explorador de la base de datos SQLite. ................................................................................................................ 89 Figura 14 Vista de Navegación sobre los datos de una Entidad espacial en el formato GeoPackage. ................................................................................................................ 90 Figura 15 Vista de Tabla de los datos de una Entidad espacial Vector en el formato GeoPackage. ................................................................................................................ 90 Figura 16 Vista de Tabla de los datos de una Entidad espacial Ráster en el formato GeoPackage. ................................................................................................................ 91 Figura 17 Vista de Tabla gpkg_Contents del modelo de datos del formato GeoPackage creado como ejemplo. .................................................................................................. 92 Figura 18 Vista de Tabla gpkg_ogr_Contents en el formato GeoPackage creado como ejemplo. ........................................................................................................................ 92 Figura 19 Vista de Tabla gpkg_spatial_ref_sys en el formato GeoPackage creado como ejemplo. .............................................................................................................. 93 Figura 20 Vista de Tabla gpkg_data_column_constraints en el formato GeoPackage creado como ejemplo. .................................................................................................. 94 Figura 21 Vista de Tabla gpkg_data_columns en el formato GeoPackage creado como ejemplo. ........................................................................................................................ 94 Figura 22 Vista de Tabla gpkg_extensions en el formato GeoPackage creado como ejemplo. ........................................................................................................................ 95 41


Figura 23 Vista de Tabla gpkg_geometry_columns en el formato GeoPackage creado como ejemplo. .............................................................................................................. 96 Figura 24 Vista de Tabla gpkg_metadata en el formato GeoPackage creado como ejemplo. ........................................................................................................................ 97 Figura 25 Vista de Tabla gpkg_metadata_reference en el formato GeoPackage creado como ejemplo. .............................................................................................................. 97 Figura 26 Esquema del Modelo Piramidal de almacenamiento para datos Ráster. ..... 99 Figura 27 Vista de Tabla gpkg_tile_matrix en el formato GeoPackage creado como ejemplo. ...................................................................................................................... 100 Figura 28 Vista de Tabla gpkg_tile_matrix_set en el formato GeoPackage creado como ejemplo. ...................................................................................................................... 100 Figura 29 Vista de Tabla rtree_USA_Ráster_geom en el formato GeoPackage creado como ejemplo. ............................................................................................................ 102 Figura 30 Vista de Tabla rtree_USA_Ráster_geom_node en el formato GeoPackage creado como ejemplo. ................................................................................................ 102 Figura 31 Vista de Tabla rtree_USA_Ráster_geom_parent en el formato GeoPackage creado como ejemplo. ................................................................................................ 103 Figura 32 Vista de Tabla rtree_USA_Ráster_geom_rowid en el formato GeoPackage creado como ejemplo. ................................................................................................ 103 Figura 33 Vista de Tabla qgis project en el formato GeoPackage creado como ejemplo. .................................................................................................................................... 104 Figura 34 Vista de Tabla qgis_resource en el formato GeoPackage creado como ejemplo. ...................................................................................................................... 105 Figura 35 Proceso de migración y restauración de un Mapa utilizando formato Shapefile y GeoTIFF................................................................................................... 106 Figura 36 Proceso de migración y restauración de un Mapa utilizando formato GeoPackage. .............................................................................................................. 107 Figura 37. Vista General de QGIS. ............................................................................. 117 Figura 38. Vista General de GeoServer ..................................................................... 119 Figura 39 Principales características de PostgreSQL. ............................................... 130 Figura 40 Vista de la Carpeta DATOS utilizada para la prueba SIG de escritorio. .... 137 Figura 41 Vista de la Repositorio de datos (PRUEBA) PosgreSQL-PostGIS utilizada para la prueba SIG de escritorio. ................................................................................ 137 Figura 42 Ejecución comando transformación datos vector Shapefile a formato PostgreSQL-PostGIS.................................................................................................. 139 Figura 43 Menú en Qgis para cambiar formato Shapefile a GeoPackage. ............... 140 42


Figura

44

Ejecución

comando

transformación

datos

ráster

GeoTIFF

a

PostgreSQL/PostGIS. ................................................................................................. 141 Figura 45 Agregar Datos Ráster con Arc toolbox de Arcgis al contenedor de GeoPackage. .............................................................................................................. 142 Figura 46 Cálculo de centroides para entidad vector de tipo polígono....................... 144 Figura 47 Declaración de juego de caracteres y cargue de librerías utilizadas en rutina Python......................................................................................................................... 144 Figura 48 Configuración Python de las carpetas utilizadas. ....................................... 145 Figura 49 Declaración y cálculo de variables en rutina Python. ................................. 146 Figura 50 Cargar Datos Ráster a sesión de trabajo software SIG QGIS. .................. 147 Figura 51 Menú para Cargar Datos Ráster a sesión de trabajo software SIG QGIS. 148 Figura 52 Rutina en Python para exportar sesión de trabajo QGIS a formato png. Programación propia basada en el software QGIS2IMG ........................................... 149 Figura 53 Diagrama de proceso para la prueba de SIG – Escritorio. ......................... 150 Figura 54 Vista de la Carpeta Capas_JMeter utilizada para la prueba SIG Web. ...... 153 Figura 55 Vista de la Repositorio de datos vector (capas_JMeter) Posgrest-PostGIS utilizada para la prueba SIG Web. .............................................................................. 153 Figura 56 Vista del Repositorio de datos ráster (capas_JMeter) Posgrest-PostGIS utilizada para la prueba SIG Web. .............................................................................. 154 Figura 57 Configuración del Servidor Web de mapas - GeoServer utilizado para la prueba SIG Web. ........................................................................................................ 155 Figura 58 Almacenes de datos creados en el Servidor Web de mapas - GeoServer. .................................................................................................................................... 156 Figura 59 Capas de datos cargados como servicios WMS en el Servidor Web de mapas - GeoServer. .................................................................................................. 157 Figura 60 Vista de la página de descargas de GeoServer para descargar extensión. .................................................................................................................................... 158 Figura 61 Plan de prueba diseñado y ejecutado en JMeter ejemplo para 1000 usuarios. .................................................................................................................................... 164 Figura 62 Plan de prueba diseñado y ejecutado en JMeter para 1 a 1000 usuarios. 165 Figura 63 Gráfica de Tiempo de ejecución del geoproceso (generación de centroides) en información vector. ............................................................................................... 167 Figura 64 Gráfica de Tiempo de ejecución de la operación de exportación de sesión de trabajo QGIS con un layer en formato ráster. ............................................................. 169 Figura 65 Gráfica de Consumo de memoria RAM en la ejecución del geoproceso con información vector. ..................................................................................................... 170 43


Figura 66 Gráfica de Consumo de memoria RAM en la ejecución del proceso con información ráster. ...................................................................................................... 172 Figura 67 Gráfica de Consumo de

CPU en la ejecución del geoproceso con

información vector. ..................................................................................................... 173 Figura 68 Gráfica de Consumo de

CPU en la ejecución del geoproceso con

información ráster. ...................................................................................................... 174 Figura 69 Gráfica de escritura en disco en la ejecución del geoproceso con información vector – geometría de línea. ....................................................................................... 175 Figura 70 Gráfica de escritura en disco

en la ejecución del geoproceso con

información vector – geometría de punto. .................................................................. 176 Figura 71 Gráfica de escritura en disco en la ejecución del geoproceso con información vector – geometría de polígono. ................................................................................. 177 Figura 72. Lectura en kilobytes/s en el disco duro. .................................................... 180 Figura 73 Escritura en kilobytes/s en el disco duro. ................................................... 180 Figura 74 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer con relación a información geográfica con datos Vector. ............ 184 Figura 75 Comportamiento en consulta de información geográfica en formato Vector. .................................................................................................................................... 186 Figura 76 Tiempo de respuesta de consulta BBOX de información geográfica de Puntos Lidar con los formatos PostGIS, GeoPackage y Shapefile. ........................... 189 Figura 77 Rendimiento de GeoServer (milisegundos), para servicios WMS (petición GETMAP-

BBOX)

y

almacenes

de

datos

basados

en

los

formatos

PostgreSQL/PostGIS, GeoPackage y Shapefile, para Puntos Lidar. ......................... 190 Figura 78 Tiempo de respuesta para servicios WMS (petición GETMAP- BBOX) y almacenes de datos basados en los formatos PostgreSQL/PostGIS, GeoPackage y Shapefile, para capa líneas Drenajes. ........................................................................ 190 Figura 79 Rendimiento de GeoServer (milisegundos), para servicios WMS (petición GETMAP-

BBOX)

y

almacenes

de

datos

basados

en

los

formatos

PostgreSQL/PostGIS, GeoPackage y Shapefile, para capa líneas Drenajes. ........... 191 Figura 80 para servicios WMS (petición GETMAP- BBOX) y almacenes de datos basados en los formatos PostgreSQL/PostGIS, GeoPackage y Shapefile, para capa de polígonos Cobertura. .................................................................................................. 191 Figura 81 Rendimiento de GeoServer (milisegundos), para servicios WMS (petición GETMAP-

BBOX)

y

almacenes

de

datos

basados

en

los

formatos

PostgreSQL/PostGIS, GeoPackage y Shapefile, para polígonos - cobertura. ........... 192

44


Figura 82 Rendimiento de GeoServer (milisegundos), para servicios WMS (petición GETMAP- BBOX) y almacenes de datos raster basados en los formatos GeoPackage, PostgreSQL/PostGIS y GeoTIFF............................................................................... 194 Figura 83 Rendimiento de GeoServer (milisegundos), para servicios WMS (petición GETMAP- BBOX) y almacenes de datos raster basados en los formatos GeoPackage, PostgreSQL/PostGIS y GeoTIFF............................................................................... 194 Figura 86 Desempeño de la lectura en disco en los tiempos de procesamiento ....... 197 Figura 87 Desempeño de la escritura en disco en los tiempos de procesamiento .... 197 Figura 88 Uso de CPU para datos raster ................................................................... 199 Figura 89 Uso de Memoria para datos raster ............................................................. 200 Figura 90 Desempeño en la lectura de información raster ......................................... 201 Figura 91 Desempeño en la escritura de información raster ...................................... 201

45


INDICE DE TABLAS

Tabla 1 RFN Usabilidad............................................................................................... 63 Tabla 2. RFN Eficiencia de Desempeño....................................................................... 64 Tabla 3. RFN Fiabilidad. ............................................................................................... 65 Tabla 4. RFN Portabilidad ............................................................................................ 66 Tabla 5. RFN Mantenibilidad ........................................................................................ 67 Tabla 6. Atributos seleccionados para las características de Calidad objeto de Evaluación. ................................................................................................................... 70 Tabla 7. Contenido de un mapa de Temperatura promedio multianual. ...................... 75 Tabla 8. Archivos que componen el formato Shapefile. ............................................... 80 Tabla 9 Vista en SQLite de las tablas de Datos de las entidades geográficas cargadas en un formato GeoPackage. ......................................................................................... 89 Tabla 10 Vista en SQLite de las tablas que registran información relacionada con las entidades geográficas o sus atributos cargadas en un formato GeoPackage. ............ 91 Tabla 11 Vista en SQLite de las tablas que registran información relacionada restricciones asociadas a las entidades geográficas o sus atributos cargadas en un formato GeoPackage. ................................................................................................... 93 Tabla 12 Vista en SQLite de las tablas que registran información relacionada extensiones asociadas a las entidades geográficas cargadas en un formato GeoPackage. ................................................................................................................ 95 Tabla 13 Vista en SQLite de las tablas que registran información relacionada con la metadata asociadas a las entidades geográficas cargadas en un formato GeoPackage. ...................................................................................................................................... 96 Tabla 14 Vista en SQLite de las tablas que registran información asociadas a las entidades geográficas de tipo Vector cargadas en un formato GeoPackage............... 98 Tabla 15 Vista en SQLite de las tablas que registran los índices asociados a las entidades geográficas de tipo Ráster cargadas en un formato GeoPackage. ........... 101 Tabla 16 Vista en SQLite de las tablas que registran información asociada con las extensiones para el almacenamiento de las plantillas de salida cargadas en un formato GeoPackage. .............................................................................................................. 104 Tabla 17. Grupo de Métricas Monitoreadas por vSphere de VMware. ....................... 109 Tabla 18 Comparativo de Bases de datos SQL.. ....................................................... 129 Tabla 19 Límites técnicos más relevantes de PostgreSQL ........................................ 131

46


Tabla 20 Especificaciones de los datos utilizados en las pruebas para evaluar el formato GeoPackage. ................................................................................................. 134 Tabla 21 Especificaciones del software utilizado para ejecutar las pruebas de Calidad para SIG de escritorio. ................................................................................................ 135 Tabla 22 Especificaciones del hardware utilizado para ejecutar las pruebas de Calidad para SIG Web. ............................................................................................................ 152 Tabla 23 Especificaciones del software utilizado para ejecutar las pruebas de Calidad para SIG Web. ............................................................................................................ 152 Tabla 24. Tiempo de ejecución (s) del geoproceso (generación de centroides) en información vector. ..................................................................................................... 167 Tabla 25 Tiempo de ejecución (QGIS) en segundos (s), para exportación de sesión de trabajo con layer ráster. .............................................................................................. 168 Tabla 26 Consumo de

memoria QGIS (Kb) en la ejecución del geoproceso con

información vector. ..................................................................................................... 170 Tabla 27 Consumo de

memoria QGIS (B) en la ejecución del geoproceso con

información ráster. ...................................................................................................... 171 Tabla 28 Consumo de CPU QGIS (%) en la ejecución del geoproceso con información vector .......................................................................................................................... 173 Tabla 29 Consumo de CPU QGIS (%) en la ejecución de exportar sesión de trabajo con información ráster. ............................................................................................... 174 Tabla 30 Gestión de operaciones de escritura kilobytes/s en la ejecución del geoproceso con información vector. ........................................................................... 178 Tabla 31 Gestión de operaciones de lectura kilobytes/s en la ejecución del geoproceso con información vector................................................................................................ 178 Tabla 32 Lectura y escritura QGIS (Kb/s) en disco en la ejecución del proceso con información ráster. ...................................................................................................... 179 Tabla 33 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer para los formatos analizados para la capa de Puntos (Datos Lidar). .... 182 Tabla 34 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer para los formatos analizados para la capa de Líneas (Drenajes). ........ 182 Tabla 35 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer para los formatos analizados para la capa de Polígonos (Cobertura). . 182 Tabla 36 Tiempos de respuesta de GeoServer y servicios WMS ( GETMAP- BBOX ), para los formatos analizados para la capa de Puntos Lidar. ...................................... 187 Tabla 37 Tiempos de respuesta de GeoServer y servicios WMS ( GETMAP- BBOX ), para la capa Drenajes................................................................................................. 187 47


Tabla 38 Tiempos de respuesta de GeoServer y servicios WMS ( GETMAP- BBOX ), para la capa Cobertura. .............................................................................................. 188 Tabla 39 Tiempos de respuesta (ms) de GeoServer para servicios basados en GeoPackage, PostgreSQL/PostGIS y GeoTIFF. ........................................................ 193 Tabla 41 Porcentaje (%) de memoria RAM usada por GeoServer y servicios web de mapas WMS configurados a partir de almacenes de datos en formatos GeoPackage, PostgreSQL/PostGIS o Shapefile. ............................................................................. 195 Tabla 42 Comportamiento de la lectura en disco (GeoServer) en Kb/s ..................... 196 Tabla 43 Comportamiento de la escritura en disco (GeoServer) en Kb/s. ................. 196 Tabla 44 Porcentaje de carga de la CPU (%), Uso de Memoria (%), Lectura y escritura (kb/s) para procesamiento de los ráster en los diferentes formatos analizados en el servidor. ...................................................................................................................... 198 Tabla 45 Evaluación de Portabilidad – Coexistencia para las pruebas de calidad ejecutadas. ................................................................................................................. 202 Tabla 46 Evaluación de Portabilidad – Coexistencia para las pruebas de calidad ejecutadas. ................................................................................................................. 203 Tabla 47 Evaluación de Portabilidad de los formatos utilizados en las pruebas de calidad ejecutadas. ..................................................................................................... 204

48


1. INTRODUCCIÓN

1.1.

Antecedentes del Problema

Los Sistemas de Información Geográfica (SIG), pueden ser vistos desde dos perspectivas diferentes: en primer lugar, la de quienes utilizan estos productos de software como herramientas para hacer mapas, superponiendo capas de información para generar una salida gráfica de una zona específica del territorio; la segunda perspectiva es la de quienes entienden los SIG como paquetes de bases de datos a los que se ha añadido la geografía como un componente adicional y fundamental relacionada, que permite a las organizaciones alcanzar la totalidad de sus requisitos de procesamiento de la información, tal como lo señala Joaquín Bosque en 1997 al afirmar, "tanto en la geografía como en un sistema de información geográfico - SIG lo decisivo es que las observaciones son objetos situados en el espacio". Lo anterior, tiene implícito que "la información geoespacial tiene un propósito: comunicar conocimiento acerca de cosas que pueden ubicarse” (Badard et al, 2012), sin embargo, al entender la posición como un concepto relativo, se requiere establecer un modo preciso y estable para definir las coordenadas que permita localizar los datos de interés, para lo cual es indispensable contar con los sistemas de referencia inmersos en el motor de base de datos, lo cual hace que el almacenamiento de datos, sus atributos y la eficiencia de consulta de los mismos sea un aspecto central. En esta segunda mirada, los sistemas de información geográficos son un componente del sistema de información, cuyo fin último es el análisis de datos geoespaciales. Al ver los SIG bajo la perspectiva de un sistema de información, su puesta en marcha requiere, desde la etapa de planificación del sistema, establecer los objetivos y requisitos específicos, y que delimiten los productos y servicios de información y los datos que se requieren para su generación de tal forma que se garanticen los flujos de trabajo existentes (eficiencia). A partir del tipo de datos (ráster, vector y alfanuméricos), cantidad de datos y formatos requeridos 49


para hacerlo utilizable (requisitos de datos), se puede definir el SIG, especificando las capacidades que se necesita de software y lo que su sistema requiere en cuanto a soporte del hardware, la red de datos y capacidades en el personal que va a interactuar con el sistema. Con el avance de la tecnología actual el diseño de la arquitectura del sistema en torno a las limitaciones de software y hardware se encuentra únicamente restringido a temas presupuestales para adquisición del software y hardware, particularmente en Colombia para el caso de instituciones de carácter público con presupuesto de inversión limitado, se recurre al uso de programas SIG bajo licencia GNU-GPL (General Public License) que garantiza a los usuarios finales (personas, organizaciones, compañías) la libertad de usar, estudiar, compartir (copiar) y modificar el software. De este modo, las principales determinantes en cuanto al diseño del sistema se constituyen en el recurso humano, los datos en la organización y la comunicación entre ellos. Según el Informe SIG presentado por Harzer et al (2015) y de acuerdo con la revisión del mercado se tiene la siguiente categorización del software SIG atendiendo a las características técnicas del mismo: 

SIG de escritorio: Programa con interfaz gráfica de usuario interactiva principalmente para visualizar o analizar datos geoespaciales, diseñado como producto de software de escritorio. Actualmente, tienen la mayor capacidad de procesamiento entre los SIG, especialmente cuando los datos se almacenan en motores de bases de datos robustos.

SIG modelo de la industria: Programa especializado realizado por desarrolladores de software a la medida, que combinan diferentes componentes de funciones individuales para crear nuevas aplicaciones.

SIG en Web: Programa con arquitectura cliente servidor, que accede a conjuntos de servicios web de mapas estandarizados y que soporta aplicaciones de la organización permitiendo a múltiples usuarios acceder, 50


visualizar, manipular y analizar datos. Usualmente, estos SIG tienen una capacidad de procesamiento limitada a los anchos de banda de la red de datos. 

SIG móvil: Desarrollado con un enfoque para la adquisición y actualización de datos a través de dispositivos móviles. En estas aplicaciones, hay fuertes restricciones en el tema de almacenamiento y conexión a red de datos, lo cual ocasiona que el rendimiento de estas aplicaciones en trabajos de campo en zonas de difícil acceso sea muy limitado.

Las anteriores categorías SIG descritas, se especializan en el despliegue, análisis y consulta de determinados modelos lógicos de datos: vector y ráster, los cuales tienen una relación estrecha con los motores de base de datos disponibles. En el caso del formato de datos vectorial, los productos de software pertenecientes a las categorías SIG de escritorio y SIG en Web, soportan en su mayoría las tareas de almacenamiento, despliegue, consulta y análisis a partir de datos almacenados en el formato tradicional Shapefile, el cual es un formato propietario de datos espaciales desarrollado por Environmental Systems Research Institute ESRI, que se ha convertido en un estándar de facto en la industria de software SIG, por lo que es soportado por la mayor parte de software SIG del mercado. El formato Shapefile, definido según la descripción técnica de ESRI; "Un Shapefile almacena la geometría sin topología, e información de atributos para los objetos geográficos, en un conjunto de datos. La geometría de una entidad se almacena como una forma que comprende un conjunto de coordenadas vectoriales" (Environmental Systems Research Institute ESRI, 1998). Las Bases de Datos Espaciales Geográficas, se pueden describir como un almacén o contenedor de los datos vectoriales que permiten establecer la relación entre los objetos espaciales representados según el modelo de datos (puntos, líneas y polígonos) y los atributos a medir, las cuales se conforman 51


con el objetivo principal de compartir información espacial en red de forma estructurada, obviando el problema descrito para el formato Shapefile y con el objetivo de ser usadas de forma directa mediante el software SIG (escritorio, Web o móvil), mediante servicios web de mapas. La combinación de soporte para usuarios múltiples, consultas complejas, y el rendimiento con grandes conjuntos de datos son los que establecen que las bases de datos espaciales superen al formato Shapefile. Los modelos de datos ráster, son utilizados en los productos de software pertenecientes a las categorías SIG de escritorio y SIG Web, soportan en su mayoría las tareas de almacenamiento, despliegue, consulta y análisis en el formato tradicional GeoTIFF, el cual es un formato abierto estándar en teledetección, con una especificación que mantiene la Open Source Geospatial foundation (OSGeo), su principal inconveniente se relaciona con el tamaño de almacenamiento para las dos categorías de software SIG. Para disminuir el tamaño de almacenamiento de imágenes se corren algoritmos para comprimir las mismas, cuyo objetivo es la reducción del número de bits con vistas a transmitir o almacenar dicha imagen en condiciones óptimas (Arozarena, 2009). Los algoritmos de compresión se clasifican en dos: Compresión sin pérdida de información y Compresión con pérdida de información. Para los modelos vector y ráster, se presentan limitantes relacionadas principalmente con su manejo en los formatos tradicionales ya mencionados, caracterizadas por el elevado consumo de recursos de cómputo como consecuencia de dos aspectos: el tamaño de almacenamiento de los datos y la eficiencia del software en la gestión específicamente para el caso del software SIG de escritorio, y el tamaño de almacenamiento y el número de transacciones en una arquitectura de software cliente-servidor, como en el caso del software SIG Web. En el caso de software SIG de escritorio, usualmente se especializan en uno de los dos formatos ráster o vector, especialmente cuando se requiere hacer análisis espacial con los datos. Lo anterior tiene implícito que cada software SIG de escritorio se especializa en la creación de algoritmos para realizar operaciones espaciales. 52


Como alternativa moderna para la gestión de los datos en el modelo vector y ráster soportada en los formatos tradicionales descritos (Shapefile, GeoTIFF respectivamente) y en las bases de datos geográficas, surge el formato de archivo abierto GeoPackage. El OGC publicó en el 2015, de manera oficial la especificación del estándar de codificación GeoPackage (GPKG), descrito como un formato de archivo abierto para datos geográficos de tipo vector y ráster, “basado en estándares, independiente de la aplicación o de la plataforma, portable, interoperable y auto descriptivo” (Open Geospatial Consortium, 2015). El formato de archivo GeoPackage esta soportado en la librería de software SQLite. La cual “…provee un contenedor de archivo único, auto contenido, multiplataforma, independiente de servidor, transaccional y basado en un sistema de gestión de bases de datos relacional RDBMS abierto” (Open Geospatial Consortium, 2015). Sin embargo, a la fecha no existe un estudio comparativo para el Software SIG que evalué la eficiencia de desempeño del software con relación al formato GeoPackage, frente a los ya descritos formatos tradicionales para los modelos de datos vector y ráster. Para las categorías de software SIG de Escritorio y SIG Web, existen dos programas SIG con licencia pública GNU-GPL, que cuentan actualmente con la implementación de GeoPackage, para el software SIG de escritorio QGIS y para el caso SIG Web el software GeoServer. Determinar si existen mejoras considerables de rendimiento de los dos programas, SIG justificaría el cambio de los datos de los formatos de los activos geográficos existentes al nuevo formato, y determinar en qué contextos es procedente hacerlo y en cuales no, para así obtener provecho del cambio tecnológico y solucionar diferentes problemas que se han detectado con el uso de los formatos tradicionales.

53


1.2.

Objetivos

1.2.1.

Objetivo General.

Evaluar la eficiencia de desempeño de los productos de software libre SIG de Escritorio QGIS y Web GeoServer, para el manejo de datos en formato vector y ráster utilizando el formato estándar GeoPackage en comparación con los formatos habituales Shapefile, PostgreSQL extensión PostGIS y GeoTIFF.

1.2.2.

Objetivos Específicos.

Diseñar la evaluación del desempeño del software SIG Libre en las categorías de Escritorio y de Ambiente Web, determinando las métricas requeridas para medir la característica de eficiencia, de acuerdo con el modelo de calidad propuesto por la ISO/IEC 25010.

Evaluar el desempeño del software SIG libre de escritorio QGIS para la gestión de datos geográficos vector y ráster basados en GeoPackage, en comparación con datos vectoriales en formato Shapefile y almacenados en bases de datos geográfica PostgreSQL con extensión PostGIS y datos ráster en formatos GeoTIFF dispuestos desde un directorio de archivos.

Evaluar el desempeño del software SIG Web GeoServer para la implementación de Servicios Web OGC (especificación WMS) basados en

GeoPackage,

en

comparación

con

servicios

Web

OGC

(especificación WMS) soportados en repositorios de datos vector en formato Shapefile y almacenados en bases de datos geográfica PostgreSQL con extensión PostGIS y datos ráster en formato GeoTIFF, dispuestos desde un directorio de archivos.

54


1.3.

Pregunta de Investigación

¿Es posible detectar mejoras en la eficiencia del desempeño de los productos de software SIG libre, utilizando formato de archivo GeoPackage comparado con el uso de los formatos habituales SIG, en entorno de escritorio y en ambiente Web, para el manejo de información vector y ráster?

1.4.

Justificación

La Ley 1523 sobre Gestión del Riesgo de Desastres, establece que las instituciones oficiales que ejercen funciones públicas, en particular las Corporaciones Autónomas Regionales - CAR, tienen la función de “apoyar a las entidades territoriales de su jurisdicción ambiental en todos los estudios necesarios para el conocimiento y la reducción del riesgo y la integración de los mismos a los planes de ordenamiento de cuencas, de gestión ambiental, de ordenamiento territorial y de desarrollo municipal”. Como un insumo y resultado de estos estudios, las Corporaciones Autónomas Regionales, ponen a disposición de sus usuarios un conjunto de datos geográficos básicos y temáticos, atendiendo a la Resolución oficial 364 de 2012, que adopta oficialmente las “políticas de acceso, uso e intercambio de la información geográfica oficial básica del Instituto geográfico Agustín Codazzi IGAC” (Instituto Geográfico Agustin Codazzi, 2012). Para estas corporaciones y sus usuarios institucionales, que utilizan software libre SIG de escritorio, una de las mayores desventajas se presenta en el acceso concurrente a archivos SIG alojados en servidores institucionales, debido al considerable tamaño de almacenamiento que pueden tener los mismos, especialmente en el caso de la información de tipo ráster en formatos como GeoTIFF. Por otra parte, el acceso concurrente a archivos en formato vectorial Shapefile, mediante el uso de un directorio de datos, ha evidenciado la generación de archivos corruptos.

55


Recientemente, con la publicación de la especificación del estándar de codificación GeoPackage por parte de la “Open Geospatial Consortium - OGC”, se generó una alternativa de solución al problema descrito para las CAR, se resume como la posibilidad de contar con un formato de archivo abierto para el intercambio de datos geográficos de tipo vector y ráster, que sea independiente de la aplicación (Visor Web Geográfico ambiental) o de la plataforma SIG de escritorio que los usuarios utilicen y como menciona la OGC, basado en estándares, independiente de la plataforma, portátil e interoperable. Este proyecto de investigación surge ante la necesidad e inexistencia actual de una evaluación de desempeño del software SIG libre QGIS utilizando el formato GeoPackage. Identificar su desempeño y una posible mejora significativa será de gran interés para múltiples instituciones estatales en Colombia, como el caso de las Corporaciones Autónomas Regionales, que utilizan software SIG libre como herramienta básica de acceso a información espacial, tanto en escritorio como Web, abriendo la posibilidad de reducir costos de mantenimiento de herramientas licenciadas a través de la utilización de estas alternativas para la gestión de datos geográficos en línea, además de tener una amplia serie de opciones que cubran necesidades de gestión de datos georreferenciados que herramientas licenciadas no ofrecen ni son posibles de adaptar.

1.5.

Alcance

En el marco de este proyecto se plantea el diseño de la evaluación del desempeño de los productos software QGIS y GeoServer, con base en las métricas que valoran su eficiencia de acuerdo con los criterios establecidos en la norma ISO/IEC 25010, con la utilización de los servicios prestados por el estándar GeoPackage y con la implementación de los formatos habituales. Una vez diseñada la evaluación será ejecutada para observar el desempeño de QGIS con datos de tipo vector y ráster basados en GeoPackage y en formatos

56


habituales donde los resultados obtenidos producto de la evaluación serán objeto de análisis. De manera complementaria se evaluará GeoServer para servicios Web OGC, específicamente WMS, con datos tipo vector y ráster basados en formatos habituales, los cuales serán comparados con archivos almacenados en el formato GeoPackage.

57


2. MARCO TEÓRICO

Los fundamentos teóricos que se presentan en este capítulo se han estructurado de la siguiente manera: Las secciones 2.1 a 2.4 presentan los criterios de calidad de un producto de software, las características evaluables en los requisitos no funcionales del producto y los atributos seleccionados a ser evaluados en el proyecto. Las secciones 2.5 a 2.7 describen los fundamentos del proceso de monitorización de los atributos de calidad seleccionados. Las secciones 2.8 y 2.9 describen los modelos lógicos y los formatos de datos geográficos. Finalmente, en la sección 2.10 se referencian las herramientas tecnológicas utilizadas en el estudio y la sección 2.11 recoge los estándares OGC utilizados en el presente estudio.

2.1.

Modelos de Calidad en la Ingeniería de Software.

La eficiencia del desempeño de los productos de software es un concepto intrínseco a los modelos de calidad en la ingeniería de software.

A

continuación, se presenta una breve referencia a los modelos de calidad. Los modelos de calidad del software se han abordado desde dos perspectivas: El estudio de la calidad del producto de software y el estudio del proceso de construcción del software. Estas dos perspectivas son mutuamente complementarias, sin embargo, para nuestro caso de estudio priorizamos las relacionadas con el producto, dado que se estudian la eficiencia computacional de productos de software SIG. Es pertinente aclarar que el proceso de pruebas es distinto a la depuración, ya que el primero hace referencia a determinar la existencia de errores en el producto, mientras que el segundo, se define para encontrar el lugar de origen del error y erradicarlo. Donde primero se prueba para luego depurar.

58


Se toma entonces como concepto de pruebas de software al “proceso empleado para identificar que una aplicación sea correcta, completa, segura y de buena calidad en el desarrollo” (Univalle, 2009). Es considerado un proceso complejo de aplicar dentro del ciclo de vida del desarrollo es, significando un alto costo, pero de igual considerado “elemento crítico para determinar la calidad del producto” (Univalle, 2009). Los modelos de calidad orientados al producto se basan en los requisitos del producto, en particular en los denominados requisitos no funcionales. En los siguientes apartados y párrafos se presentan los criterios de validación y pruebas de los requisitos no funcionales del producto de software. Los requisitos no funcionales (URPS): “Describen atributos del sistema o atributos del ambiente del sistema” (Ocampo et al, 2011). Este tipo de requisitos se divide en “requisitos del producto, requisitos organizacionales, requisitos externos” (Sommerville, 2011), ver figura 1.

Figura 1. Categorías de los requisitos no funcionales. Fuente: (Sommerville, 2011)

Los requisitos del producto: se definen como aquellos requisitos que determinan el comportamiento del producto, como son la Fiabilidad (Reliability), la Usabilidad (Usability), la Portabilidad, la Eficiencia del desempeño y la Capacidad de soporte (Supportability).

59


Los requisitos organizacionales: hacen parte de las políticas y procedimientos existentes en la organización del cliente y en la del desarrollador. Los requisitos externos: son aquellos que derivan factores externos al sistema y su proceso de desarrollo.

A su vez estos requisitos, derivan en otros tal y como se presenta en la figura 2.

Figura 2. Tipos de requisitos no funcionales y sus categorías. Fuente: (Sommerville, 2005)

El origen de los requisitos no funcionales parte de diversos factores, entre ellos las restricciones de “presupuesto, las políticas de la organización, la interoperabilidad del sistema con otros sistemas software o hardware, también surgen de los otros factores externos como la seguridad o la legislación sobre la privacidad” (Univalle, 2009).

60


2.2.

Atributos de Calidad del Software que son Evaluables

al Aplicar Pruebas No Funcionales. A continuación, se describe la jerarquía de los requisitos no funcionales en la figura 3.

Figura 3. Jerarquía de Requisitos No Funcionales. Fuente: (Heshusius, 2009)

Al analizar la jerarquía de requisitos no funcionales y al realizar una integración de lo que dice la ISO/IEC 9126, la cual define seis categorías de requisitos, los cuales

garantizan la calidad del software, donde cada uno a su vez tiene

asociados diferentes requisitos no funcionales, (Sommerville, 2011) hace referencia a estos requisitos, definiéndolos como requisitos del producto y el modelo FURPS+ (Pressman, 2015), donde los establece como cinco categorías, siendo los mismos requisitos: a. Usabilidad b. Eficiencia c. Fiabilidad d. Portabilidad 61


e. Mantenibilidad

A partir de los requisitos antes mencionados, se procede a describir los atributos principales que se pueden llegar a medir, de tal forma que se pueda inferir su aporte hacia la calidad del producto software desarrollado. Se entiende como atributo, aquella entidad que tiene un producto software, que posee la característica de poder ser verificada o medida. Donde la medición implica asignar un valor a dicha entidad.

Dichos atributos no se encuentran definidos como estándares ya que se diferencian entre uno y otro producto software, dependiendo de la lógica del negocio y por tanto del producto que se requiere desarrollar.

Debido a la dificultad para identificar y cuantificar con objetividad dichos atributos no funcionales, es por ello por lo que se requiere conocer las técnicas para medirlos, de tal forma que se pueda intentar estudiar el impacto de estos sobre la calidad del software, independiente del modelo o metodología de desarrollo. Finalmente, estos atributos son evaluados de forma subjetiva, debido a su difícil identificación en la recolección de requisitos, ya que su levantamiento se realiza de igual forma para los funcionales como para los no funcionales.

2.2.1.

Características Evaluables del Requisito de Usabilidad.

En la actualidad se ha avanzado con respecto a concientizar a los clientes de un software, sobre la importancia de realizar pruebas a este factor de calidad, “las pruebas y evaluaciones durante el desarrollo del producto han ganado amplia aceptación como estrategia para mejorar la calidad del producto” (Florián et al, 2010). Es decir, que ya se considera como uno de los atributos fundamentales para alcanzar el éxito de un proyecto. Lo cual ha generado “un 62


interés creciente en el mundo del desarrollo de software como factor de calidad” (Ferré, 2003). En el plano académico la usabilidad se ha convertido en una actividad de fuerte espacio investigativo y disciplinar donde confluye el área de interfaces humano computador y donde existen resultados extraordinarios que deben ser puestos al alcance de la pequeña y mediana industria del software. Sin embargo, aunque se reconozca la importancia de lograr un producto de software de calidad en el uso, no ha sido fuerte su difusión, lo que conlleva a que dicho proceso aún no sea un factor incondicional en el ciclo de desarrollo software. La usabilidad se refiere a "la eficacia, eficiencia y satisfacción con la que un producto permite alcanzar objetivos específicos a usuarios específicos en un contexto de uso específico" (Reyes et al, 2015). Requisito

Atributos medibles

Descripción atributo

a través de pruebas Tolerabilidad

Capacidad del producto software para proporcionar tiempos de respuesta, tiempos de procesamiento y velocidad

la

ejecución

de

funciones,

bajo

condiciones determinadas.

Usabilidad (Usability)

en

Aprendizaje

Capacidad del producto software que le permite al usuario aprender su funcionamiento y operación.

Atractividad

Capacidad del producto software para ser atractivo al usuario.

Comprensibilidad

Capacidad del producto software que le permite al usuario entender si el producto es adecuado a los requisitos definidos, el alcance de este y las condiciones de uso particular.

Tabla 1 RFN Usabilidad. Fuente (Ocampo et al, 2011; Cuellar, 2015)

63


2.2.2.

Características Evaluables del Requisito de Eficiencia

del Desempeño. De este atributo se derivan las características de rendimiento, escalabilidad. Características que enmarcan entre otros, los tiempos de respuestas solicitados por el cliente, y las capacidades de ofrecer un servicio de acuerdo con lo solicitado. Es también pertinente recordar el concepto de requisitos de desempeño para un sistema, el cual se define como que “Un sistema con buen desempeño es aquel que realiza su función en el menor tiempo posible y utilizando la menor cantidad de recursos. Para efectos prácticos, y a pesar de las diversas categorías de requisitos de desempeño que pueden existir, los desarrolladores que construyen sistemas en los cuales el desempeño es un requisito importante, se enfocan fundamentalmente en la velocidad a la cual el sistema puede realizar su función, teniendo en cuenta los recursos finitos y sus características de Calidad del software” (Serna, 2011). Requisito

Atributos medibles a

Descripción atributo

través de pruebas Capacidad

Tiempo de respuesta

del

producto

software

para

proporcionar tiempos de respuesta, tiempos de procesamiento y velocidad en la ejecución de funciones, bajo Eficiencia del Desempeño

condiciones determinadas. Desempeño

Capacidad del producto software para adherirse

(Performance)

a las normas y convenciones definida bajo condiciones determinadas. Tráfico

generado

en

las comunicaciones

Se refiere al consumo del recurso de networking cuando se ejecuta una función definidas bajo condiciones determinadas

Tiempo

de

Se refiere al tiempo total desde que se presenta

recuperación de fallas

la falla hasta la normalización del servicio.

Utilización de recursos

Capacidad del producto de software para utilizar

(Memoria,

la cantidad y tipos de recursos adecuados

CPU,

networking,

cuando se ejecuta una función definidas bajo

almacenamiento,

condiciones determinadas.

tarjeta de video) Tabla 2. RFN Eficiencia de Desempeño. Fuente: (Ocampo et al, 2011; Marcos et al, 2016)

64


2.2.3.

Características Evaluables del Requisito de Fiabilidad

Este requisito está relacionado con la capacidad de la aplicación para recuperarse en el menor tiempo ante la ocurrencia de una falla del sistema, y recuperar el servicio como había sido especificado (Sommerville, 2011), garantizar no perder datos en él envió hacia el servidor o hacia los clientes. De este atributo se derivan las características de disponibilidad.

Requisito

Atributos

Descripción atributo

medibles a través de pruebas Confiabilidad (Reliability)

Capacidad del producto software para reestablecer un Recuperabilidad

nivel de servicio y desempeño especificado y de recuperar los datos afectados luego de la ocurrencia de una falla.

Frecuencia

de

fallas

Capacidad del software para mantener un nivel especificado de desempeño en caso de fallos del software o de infringir sus interfaces especificados

Disponibilidad

Corresponde al tiempo total en que un sistema puede ser usado en un período determinado. También puede definirse el grado en que un sistema está en un estado operable definido cada vez que se necesite.

Severidad fallas

de

Capacidad del producto software para reportar la severidad de una falla y activar una contingencia que garantice la continuidad del servicio.

Tabla 3. RFN Fiabilidad. Fuente: (Sommerville, 2011; Ocampo et al, 2011)

2.2.4.

Características

Evaluables

del

Requisito

de

Portabilidad

La Portabilidad es una característica de calidad de software definida en la norma ISO/IEE 9126-1 como la capacidad de producto de software de ser 65


transferido de un ambiente a otro (Padilla, 2014), sin alterar la funcionalidad del producto de software.

Requisito

Atributos medibles a

Descripción atributo

través de pruebas Adaptabilidad

Capacidad del producto software para ser adaptado a diferentes entornos especificados, sin aplicar acciones o mecanismos distintos de aquellos

Portabilidad

proporcionados para este propósito por el propio

(Portability)

software considerado Instalabilidad

Capacidad del producto software para ser instalado en un entorno especificado.

Facilidad adaptación

de al

Se refiere a viabilidad de adaptar el producto de software a los cambios de su especificación.

cambio Coexistencia

Capacidad del producto software para coexistir con otro software independiente, en un entorno común, compartiendo recursos comunes sin generar fallas en el producto u otros productos ya instalados.

Tabla 4. RFN Portabilidad. Fuente: (Sommerville, 2011; Ocampo et al, 2011)

2.2.5.

Características

Evaluables

del

Requisito

de

Mantenibilidad La mantenibilidad de un producto de software se refiere a su capacidad para adherirse a normas o convenciones relacionadas con la mantener vigente el producto de software garantizando su operación en el tiempo, siendo capaz de operar bajo cambios tecnológicos no extremos.

66


Requisito

Atributos medibles

Descripción atributo

a través de pruebas Mantenibilidad

Analizabilidad

Capacidad

(Maintainability)

del

producto

software

para

serle

diagnosticadas deficiencias o causas de los fallos en el software, o para identificar las partes que han de ser modificadas, es decir, es el grado de complejidad para diagnosticar deficiencia y causas de falla Facilidad

de

cambio Facilidad pruebas

Se refiere a viabilidad de adaptar el producto de software a los cambios de su especificación.

de

Capacidad del producto software que permite que el software modificado sea validado, es decir, facilidad de ser probado

Estabilidad

Capacidad del producto software para evitar efectos inesperados debidos a modificaciones del software

Tabla 5. RFN Mantenibilidad. Fuente: (Ocampo et al, 2011)

2.3.

Normas Técnicas ISO/ISO/IEC 2501.

El modelo de calidad es el eje principal en torno al cual gira un sistema que se empleará para evaluar un producto; en este sentido surge inicialmente la norma técnica ISO/IEC 9126 y posteriormente la norma técnica ISO/IEC 25010, éstas definen un modelo de calidad del producto software que se vuelve esencial al momento de perfilar los requisitos de calidad (Portal ISO 25.000, 2016). La norma técnica ISO/IEC 25010 ha sido aplicada tanto en desarrollos Web para medir su calidad como en sistemas de escritorio para evaluar su desempeño (Software Engineering and Application, 2014). El estándar mencionado está compuesto por 8 características, estas son: adecuación funcional, eficiencia de desempeño, compatibilidad, usabilidad, fiabilidad, seguridad, mantenibilidad y portabilidad. A su vez, cada una de las características se divide en varios aspectos donde la adecuación funcional se compone de completitud, corrección funcional y pertinencia funcional; la eficiencia de desempeño está integrada por el comportamiento temporal, la utilización de recursos y la capacidad; la compatibilidad reúne la coexistencia y 67


la interoperabilidad; la usabilidad se deriva en inteligibilidad, aprendizaje, operatividad, protección frente a errores de usuario, estética y accesibilidad; la fiabilidad se subdivide en madurez, disponibilidad, tolerancia a fallos y capacidad de recuperación; la seguridad se compone de confidencialidad, integridad, no repudio, responsabilidad y autenticidad; la mantenibilidad se fundamenta en modularidad, reusabilidad, analizabilidad, capacidad de ser modificado y capacidad de ser probado; finalmente la portabilidad se basa en adaptabilidad, facilidad de instalación y capacidad de ser reemplazado (Alves et al, 2014).

De acuerdo con este modelo, la calidad se especifica a través de ocho características presentadas en la figura 4. De las características mostradas en la figura 4, es la eficiencia de desempeño, quien mide los aspectos relacionados con el rendimiento de una aplicación o un producto de software. Por lo anterior, esta investigación se enfocará en ese aspecto.

Figura 4 Características ISO/IEC 25000.

La característica de eficiencia de desempeño, “representa el desempeño relativo a la cantidad de recursos utilizados bajo determinadas condiciones” (Portal ISO 25.000, 2016). Esta característica se subdivide a su vez en tres sub categorías que son comportamiento temporal, utilización de recursos y capacidad; la primera está relacionada con los tiempos de respuesta y procesamiento, así como los ratios de throughput de un sistema cuando lleva a 68


cabo sus funciones bajo condiciones determinadas en relación con un banco de pruebas (benchmarking) establecido; la segunda se relaciona con las cantidades y tipos de recursos utilizados cuando el software lleva a cabo su función bajo condiciones determinadas; la tercera se refiere al grado en que los límites máximos de un parámetro de un producto o sistema software cumplen con los requisitos (Portal ISO 25.000, 2016).

2.4.

Atributos de Calidad Seleccionados para el Proyecto.

En el marco de este proyecto, los atributos priorizados para detectar las mejoras en la eficiencia del desempeño de los productos de software SIG libre al utilizar el formato GeoPackage serán:

La eficiencia de desempeño es la característica que se pretende evaluar entre dos productos de software del tipo SIG, con el propósito de identificar y medir las diferencias entre QGIS y GeoServer bajo el uso GeoPackage y de formatos habituales, como Shapefile, para el caso de datos tipo vector y GeoTIFF para datos ráster.

Con base en el comportamiento demostrado en las validaciones realizadas, se analizará la cantidad de recursos utilizados en determinadas condiciones teniendo en cuenta el comportamiento temporal relacionado con los tiempos de respuesta y procesamiento de los sistemas cuando se ejecutan bajo las condiciones especificadas en un banco de pruebas predeterminado; además, se consideran las cantidades y tipos de recursos consumidos por el software en tiempo de ejecución, así como la capacidad que implica el grado en que los límites máximos de un parámetro de un producto o sistema software cumplen con los requisitos (Ouhbi et al, 2015).

69


La portabilidad del formato GeoPackage, es otro atributo que será evaluado, por cuanto esta característica es fundamental en los procesos de migración, especialmente de datos geográficos. Atributos Requisito

medibles a

Variables estudiadas

través de

Descripción atributo

pruebas Eficiencia del

Desempeño

SIG Escritorio Tiempo de ejecución del Geoprocesamiento. SIG Web Tiempo de respuesta de un servicio Web en milisegundos (ms), para la operación GETMAP, Sujeto a variación en el número de usuarios.

Desempeño (Performance)

Utilización

Portabilidad (Portability)

de

SIG Escritorio  Consumo de memoria (Kb). recursos  Porcentaje de uso de CPU (%). (Memoria, CPU, Gestión de disco duro I/O (Kb/s). almacenamiento) SIG Web Porcentaje de utilización de la CPU por Host (%). Uso de Memoria (%). Utilización de discos por Host, máquina virtual o almacén de datos en cuanto a Lectura y escritura (Kb/s). Coexistencia

Capacidad

del

producto

software para adherirse a las normas

y

convenciones

definidas

bajo

condiciones

determinadas.

Capacidad del producto de software

para

utilizar

la

cantidad y tipos de recursos adecuados cuando se ejecuta una función definidas bajo condiciones determinadas.

Capacidad

del

producto

software para coexistir con otro software independiente, en

un

entorno

compartiendo

común, recursos

comunes sin generar fallas en el producto u otros productos ya instalados.

Tabla 6. Atributos seleccionados para las características de Calidad objeto de Evaluación.

A menudo sucede que es difícil verificar los requisitos no funcionales, por cuanto para algunos atributos no es posible establecer métricas que expresen el cumplimiento de la característica de calidad (Sommerville, 2005). Por lo anterior, los atributos seleccionados para cada característica de calidad priorizadas para la evaluación de la eficiencia del desempeño de los productos

70


de software SIG libre al utilizar el formato GeoPackage, se pueden apreciar en la Tabla 6.

2.5.

Monitoreo de Hardware para las métricas de los

atributos de calidad seleccionados para el Proyecto. A partir de las características de calidad seleccionadas para evaluar el formato GeoPackage, es fundamental realizar el monitoreo de los componentes de arquitectura del hardware que permita identificar la forma en la cual los productos SIG de escritorio y SIG Web, utilizan tales recursos.

Para lo anterior se considera que la creación de una máquina virtual provee un entorno de hardware controlable y medible a través de las herramientas administrativas para monitoreo.

Las máquinas virtuales son consumidores de recursos de hardware, los cuales se asignan a través del proceso de configuración que se realiza para la máquina virtual en el momento de su creación. Este proceso implica asignar un porcentaje de los recursos compartidos de la capacidad total de CPU, memoria y E/S de almacenamiento del proveedor de recursos, o bien una reserva con garantía de la CPU y la memoria. Al encender esa máquina virtual, el servidor comprueba la cantidad de recursos sin reservar disponibles y permite el encendido únicamente si los recursos son suficientes. Este proceso se denomina control de admisión, (VMware, 2018).

Un grupo de recursos es una abstracción lógica que permite una administración flexible de los recursos. Los grupos de recursos pueden agruparse en jerarquías y utilizarse para particionar jerárquicamente los recursos disponibles de CPU y de memoria. En consecuencia, los grupos de recursos pueden considerarse tanto proveedores como consumidores de recursos. No sólo proporcionan 71


recursos a los grupos de recursos secundarios y las máquinas virtuales, sino que también consumen recursos de sus elementos primarios. Las herramientas administrativas de los desarrolladores de software para virtualización, permite evaluar la forma en la cual la máquina virtual está consumiendo los recursos asignados (VMware, 2018).

2.6.

Operación del Monitoreo de Hardware.

El modelo de información común (CIM, Common Information Model) es un estándar abierto que permite definir un marco para el monitoreo de recursos de hardware sin agentes y basado en estándares de los hosts en los que se ejecuta la arquitectura del hardware (VMware, 2018). A partir de este marco, los desarrolladores de máquinas virtuales facilitan un administrador de objetos CIM, también llamado intermediario CIM, y un conjunto de proveedores de CIM.

Los proveedores de CIM se utilizan a modo de mecanismo para proporcionar a la administración acceso a los controladores de dispositivos y al hardware subyacente. Los distribuidores de hardware, incluidos los fabricantes de servidores y los distribuidores de dispositivos de hardware específicos, pueden crear proveedores para que monitoreen y administren sus dispositivos particulares (VMware, 2018).

Los desarrolladores de máquinas virtuales también crean proveedores que sirven para monitorear la infraestructura de almacenamiento del hardware de los servidores y los recursos específicos de virtualización (CPU, memoria, networking). Estos proveedores se ejecutan dentro del host y, por lo tanto, están diseñados para ser extremadamente livianos y para centrarse en tareas administrativas específicas (VMware, 2018).

72


El intermediario CIM recolecta información de todos los proveedores de CIM y la hace pública por medio de API estándares, como WS-MAN y CIM-XML. Cualquier herramienta de software que comprenda una de estas API, como HP SIM o Dell OpenManage, puede leer esta información y, por lo tanto, monitorear el hardware del host del administrador (VMware, 2018).

Uno de los consumidores de la información de CIM es como son las máquinas virtuales y sus desarrollos para administrar y monitorear, puede ver el estado del hardware de cualquier host de administración y monitoreo en su entorno, lo que ofrece una vista única del estado físico y virtual de sus sistemas (VMware, 2018).

2.7.

Registro del Monitoreo de Hardware.

El registro es importante para la solución de problemas y para monitorear los recursos consumidos y en general el cumplimiento de la configuración definida para la máquina virtual. EL host de administración y monitoreo permite exponer registros de todos los componentes del sistema mediante un formato syslog estándar del sector, con la capacidad de enviar registros a un servidor de registro central. El registro persistente en un archivo de un datastore local accesible

para

el

host

de

administración

y

monitoreo

se

realiza

automáticamente si hay un datastore adecuado disponible. Es fundamental mantener el host de administración y monitoreo sincronizado con una fuente de hora exacta para garantizar la precisión de los registros. Además, esto es necesario para el cumplimiento (VMware, 2018).

73


2.8.

Estructuras de Datos en un Sistema de Información

Geográficos.

En un sistema de información geográfica, existen dos modelos lógicos para mostrar y organizar las variables y objetos del mundo real, de forma tal que represente de la manera más adecuada posible los fenómenos de la naturaleza y se conocen como el modelo vector y modelo ráster de datos geográficos, ver figura 5.

Figura 5. Modelos de representación de datos geográficos. Fuente: (Telecentro Regional en Tecnologías Geoespaciales, 2018)

El manejo, integración, producción, administración y gestión de información geográfica que realizan los SIG de escritorio para la producción de productos cartográficos finales, se logran a partir del análisis de varios niveles de información o capas de datos o entidades geográficas, algunas en formato vector y otros en formato ráster. Por ejemplo, un mapa de Temperatura promedio multianual puede tener alrededor de 7 entidades geográficas vectoriales e incluir una entidad en formato ráster. 74


Un mapa con sólo la entidad geográfica temática como es en este caso la entidad geográfica de Temperatura promedio multianual, no dice mucho sino cuenta con las entidades geográficas de referencia que le ayuda al usuario de ese mapa final a optimizar su utilización. Esto se aplica tanto a productos cartográficos como a servicios de información geográficos.

Mapa Final

Entidades geográficas

Entidades geográficas Base

Temática

Tipo de dato

Temperatura promedio

Vector Limite Departamental

Vector

Mapa de

Limite municipal

Vector

Temperatura

Centros poblados

Vector

promedio

Vías

Vector

multianual

Drenaje doble

Vector

Drenaje sencillo

Vector

Modelo digital de elevación

Ráster

Tabla 7. Contenido de un mapa de Temperatura promedio multianual.

Es decir, la entrega de un mapa en formato digital para SIG es una copia de todas los niveles de información para el caso de datos vector, en formato Shapefile y para datos ráster en formato GeoTIFF, y la plantilla del software SIG de escritorio utilizado para generar el producto cartográfico requerido. Lo anterior, es fundamental para generar la composición del mapa.

75


Figura 6. Mapa de Temperatura Promedio Multianual

A continuación, se presentan las estructuras de datos que se utilizan en los Sistemas de información geográfica y los cuales se utilizaran en las pruebas de desempeño del formato GeoPackage.

76


2.8.1.

Datos Geográficos en Formato Vector

Los datos vector, son una estructura de datos que representan los objetos geográficos y es utilizada para almacenar las geometrías vectoriales, los cuales se componen de puntos, líneas, definidos por sus puntos de inicio y fin, y puntos donde se cruzan varias líneas, llamados nodos. La localización de los nodos y la estructura topológica se almacena de forma explícita. Las entidades quedan definidas por sus límites solamente y los segmentos curvos se representan como una serie de líneas conectadas. El almacenamiento de los vectores implica el almacenamiento explícito de la topología, sin embargo, sólo almacena aquellos puntos que definen las entidades y todo el espacio fuera de éstas no está considerado (Del Rio, 2010).

La posición de los fenómenos geográficos, representados mediante objetos geométricos, se registra de modo explícito la posición de estos objetos, mediante las coordenadas de los puntos que los definen. En el modelo de datos vectorial, según la dimensión geométrica de los objetos geográficos se representan las coordenadas de un punto (objetos puntuales de dimensión cero), la secuencia de puntos (objetos lineales de dimensión uno), o las de una secuencia cerrada de puntos (objetos superficiales de dimensión dos). Las estructuras de datos del modelo vectorial pueden agruparse en dos grandes categorías: listas de coordenadas y diccionarios de puntos (García, 2006).

Normalmente, los sistemas vectoriales tienen dos componentes: uno que almacena los datos espaciales y otro los datos temáticos (atributos). A éste se le denomina sistema de organización híbrido, por unir una base de datos relacional, para los aspectos temáticos, con una base de datos topológica, para los geográficos. Un elemento clave en este tipo de sistemas es el identificador de cada objeto. Éste es único y diferente para cada objeto y permite la conexión entre ambas bases de datos (Ellis, 2001).

77


Las unidades básicas de información geográfica en los datos vectoriales son puntos, líneas y polígonos. Cada una de éstas se compone de uno o más pares de coordenadas, por ejemplo, una línea es una colección de puntos interconectados, y un polígono es un conjunto de líneas interconectadas. En la Figura 7 se presentan los formatos de almacenamiento e intercambio habituales para datos Vector.

Reconociendo la importancia del formato de intercambio de datos vectoriales, Shapefile, a continuación se presenta este el detalle de este formato el cual se ha seleccionado por este proyecto para su evaluación frente al formato GeoPackage.

Figura 7. Formatos de almacenamiento e intercambio habituales para datos Vector.

Formato de intercambio Shapefile:

Este formato fue desarrollado en el año 1998 por Environmental Systems Research Institute, Inc. (ESRI), almacena geometrías sin topologia e información de atributos para los objetos geográficos. 78


Es un estándar de facto, el formato Shapefile solo puede almacenar objetos geográficos de una sola geometría punto, línea ó polígono.

Usualmente

contiene entidades grandes con muchos atributos asociados y actualmente es el formato de datos más utilizado en aplicaciones de software SIG de escritorio como ARCMAP, GVSIG, QGIS, JUMP, ERDAS, GRASS, entre otros. El formato Shapefile está compuesto por varios archivos los cuales se detalla en la tabla 8. Extensión del

Rol del archivo

Contenido del archivo

archivo

dentro del formato

Condición

Archivos originales del formato .shp

Archivo principal

Almacena la geometría de la entidad

obligatorio

.shx

Archivo index

es el archivo de índice que almacena el

obligatorio

índice de la geometría de la entidad .dbf

Un archivo de base

Es la tabla dBASE que almacena la

de datos

información

de

atributos

de

obligatorio

las

entidades. Entre la geometría y los atributos existe una relación de uno a uno, basada en el número de registro. Los registros de atributo del archivo dBASE deben estar en el mismo orden que registros del archivo principal Extensiones del formato .prj

Archivo

de

Almacena la información de proyección

opcional

proyección xml

Archivo de metadatos

Contiene el metadato de los datos

opcional

.sbn y .sbx

Archivo de indice

Almacenan el índice espacial de las

opcional

entidades .fbn y .fbx

Archivos indices

Almacena el índice espacial de las

(solo

entidades para los Shapefiles que son

lectura)

inalterables .ain y .aih

Archivo de indice

Almacena el índice de atributo de los

opcional

campos activos en una tabla o el tema de la tabla de atributos .atx

Archivo de indice

Es un índice de atributos de Shapefile

Opcional

dBASE creado en ArcCatalog. ArcGIS

Depende

no utiliza los índices de atributo de

del cliente

79


Extensión del

Rol del archivo

archivo

dentro del formato

Contenido del archivo

Condición

ArcView GIS 3.x de los archivos

Que lee el

Shapefile y dBASE. Se ha creado un

formato

nuevo

modelo

de

indexación

de

atributos para los archivos Shapefile y dBASE. .ixs

Archivo de indice

.mxs .cpg

Archivo de indice Archivo de indice

Índice de geo codificación para los

de lectura

Shapefiles.

y escritura

Índice de geo codificación para los

lectura

Shapefiles de (formato ODB).

escritura

Se puede utilizar para especificar la

opcional

y

página de código para identificar el conjunto de caracteres que se va a utilizar. Tabla 8. Archivos que componen el formato Shapefile. Fuente: (Environmental Systems Research Institute ESRI, 2018)

En la figura 8, se presenta un esquema preconceptual del formato Shapefile.

Figura 8. Resumen del formato Shapefile mediante un Esquema Preconceptual. Fuente: (Soto et al, 2014).

80


2.8.2.

Datos Geográficos en Formato Ráster

El formato ráster divide el espacio en un conjunto regular de celdillas, cada una de estas celdillas contiene un número que puede ser el identificador de un objeto (si se trata de una capa que contiene objetos) o del valor de una variable (si la capa contiene esta variable). En este modelo de representación sólo se registra de modo explícito una parte de los datos de posición; los demás se codifican de modo implícito, basándose en la ordenación de los datos temáticos. El fundamento de este modelo es la construcción de la cuadricula regular en el espacio de coordenadas del sistema de referencia, recubriendo por completo el objeto geográfico. En este tipo de datos, cada celda de la cuadricula (ráster) se asocia con el valor de una variable temática, relacionada con u fenómeno geográfico, (García, 2006). Este formato, por tanto, cubre la totalidad del espacio, este hecho supone una ventaja fundamental ya que pueden obtenerse valores de forma inmediata para cualquier punto de este, lo cual se puede observar en una imagen de satélite. “Las áreas que contienen idéntico atributo temático son reconocidas como tal, aunque las estructuras ráster no identifican los límites de esas áreas como polígonos en sí” (Del Rio, 2010). Los principales formatos más habituales para almacenar datos ráster se pueden observar en la figura 9.

Figura 9. Formatos de almacenamiento e intercambio habituales para datos Ráster. Fuente: Environmental Systems Research Institute ESRI, 2018. PostgreSQL, 2018

81


Las estructuras ráster pueden implicar en ocasiones un incremento del espacio de almacenamiento, ya que almacenan cada celda de la matriz sin tener en cuenta si se trata de una entidad o simplemente de un espacio “vacío” (Montoya, 1996). A continuación, se definen conceptos básicos para comprender la lectura de un dato ráster: Pixel: Pixel es la abreviatura de las palabras “picture element”. Es usada frecuentemente en teledetección para referirse a cada unidad de una imagen. En los SIG ráster nos referimos a veces al pixel como la celda o el elemento base de una rejilla. El pixel/celda se refiere a la unidad mínima de información de una imagen o un mapa ráster. Es el elemento más pequeño al que un dispositivo de visualización puede asignarle de forma independiente un atributo como es el color. (Montoya, 1996). Tamaño del pixel y número de filas y columnas: "El tamaño del pixel debe ser la mitad de la longitud más pequeña que sea necesario representar. A mayor tamaño de la celda, menor será el número de filas y columnas de la malla que cubre la superficie”. (Montoya, 1996). En esta estructura de datos el valor de cada pixel se registra individualmente, de forma que no se aplica ningún método de compresión cuando el mismo valor numérico aparece reiteradas veces seguidas.

2.9.

Especificación del Formato GeoPackage.

GeoPackage es una especificación de formato para intercambio de información geográfica, creado Open Geospatial Consortium (OGC), el cual es un foro global para la colaboración de desarrolladores y usuarios de productos y servicios de datos espaciales. El OGC coordina más de 400 instituciones en el desarrollo de estándares geoespaciales. En los últimos años, dos tendencias 82


principales están causando interrupciones en las aplicaciones geoespaciales: la primera tendencia es el uso compartido de dispositivos y contextos. Los dispositivos móviles se conectan intermitentemente a Internet y tienen una capacidad informática menor que una computadora de escritorio. En función de esta tendencia, un nuevo estándar de formato de archivo OGC llamado GeoPackage permitirá un mayor intercambio de datos geoespaciales en dispositivos móviles, (Singh et al, 2013). La segunda tendencia es el mapeo colaborativo, en el cual se actualiza un mapa con la colaboración en línea de múltiples usuarios localizados en sitios diferentes. En esta tendencia los dispositivos móviles actúan como sensores, capaces de capturar información en campo, que puede contribuir al internet de las cosas IoT.

El formato GeoPackage nace de la necesidad existente en el mercado, de capturar información geográfica con los dispositivos móviles y compartirla, pero con una fuerte restricción de espacio en almacenamiento en tales dispositivos.

Hasta la aparición del formato GeoPackage, el formato Shapefile era el formato de intercambio para datos geográficos dominante en el mercado, sin embargo, este formato tenía varias restricciones que son resueltas con la aparición del formato GeoPackage y que a continuación se mencionan:

Cada Shapefile solo admite un tipo de dato: punto, línea o polígono. No puede almacenar datos ráster.

Los nombres de propiedad están restringidos por el formato dBASE

Cada Shapefile requieren múltiples archivos para codificar un solo conjunto de datos.

Se requieren múltiples Shapefiles para codificar conjuntos de datos múltiples.

Tamaño máximo que soporta el formato es de 2GB

83


GeoPackage se basa en un contenedor de base de datos, SQLite, que es autónomo, de archivo único, multiplataforma, sin servidor, transaccional y de código abierto. Proporciona un contenedor de base de datos de plataforma independiente SQLite, es abierto y no propietario para la distribución y el uso directo de información geoespacial de tipo vectorial y ráster, multiplataforma, sin servidor transaccional.

Este formato lo hizo público la OGC en 2014, cuya especificación se puede consultar en http://www.GeoPackage.org/spec/, su singularidad, y de ahí la importancia estratégica de este nuevo formato, es la capacidad de integrar en un mismo paquete datos vectoriales y tiles ráster en distintas escalas.

La creación de este estándar les ha proporcionado a los desarrolladores de aplicaciones móviles una forma de resolver las limitantes de almacenamiento de estos y proporcionar servicios de aplicaciones geoespaciales e información asociada en entornos con limitada conexión de red, sin conexión u otras aplicaciones

procedentes

de

diversas

fuentes.

GeoPackage

ha

sido

desarrollado por miembros de la OGC con la participación de desarrolladores (CartoSIG, 2016).

GeoPackage es un estándar de codificación OGC, permite el intercambio de información geoespacial a través de dispositivos, aplicaciones y servicios Web en aplicaciones móviles. Actualmente, ya se presentan experiencias de implementación para mapas colaborativos (Rashidan et al, 2015).

El formato ofrece una extensión SQLite que permite gestionar directamente los datos geográficos sin la intermediación de ninguna API, asegurando así la integridad de la información independientemente del software utilizado. A esta posibilidad, se añade el hecho de estar especialmente diseñado para su aprovechamiento en entornos móviles (Singh et al, 2013).

84


Pese a todo esto, necesita ser soportado por aquellas aplicaciones que gozan de una mayor implantación en el mercado. GeoPackage aún no ha sido totalmente implementado, ya que hasta hace poco tiempo las herramientas capaces de soportar datos en este formato eran muy limitadas lo que provocaba un aprovechamiento muy pobre de las capacidades vectoriales de esta herramienta. Sin embargo, el número de aplicaciones capaces de soportar este estándar ha ido creciendo. Es la alternativa más reciente a formatos como GeoTIFF y Shapefile.

GDAL, por ejemplo, actualmente, ofrece la posibilidad de tratar con datos GeoPackage, ya sean vector o ráster, por tratarse de una de las librerías de código abierto más utilizadas en el ámbito de la Geomática, representa un apoyo determinante a GeoPackage, necesario para extender su uso de una manera muy significativa.

Las herramientas SIG: QGIS, ArcGIS 10.5, ArcGIS Pro, GeoServer, GeoTools y OpenJUMP PLUS soportan la lectura de GeoPackage. Además, QGIS al utilizar la librería GDAL internamente es capaz ya de leer y escribir el estándar GeoPackage (QGIS, 2016).

Su funcionalidad radica en que es muy útil para el intercambio de información geográfica y también para ser utilizado directamente como repositorio de datos. Combina las virtudes de la facilidad de manejo del formato Shapefile y de las bases de datos espaciales, elimina los defectos del mismo formato Shapefile.

Aunque realmente un estándar no debería estar asociado a un software específico, en este caso GeoPackage está asociado a la base de datos SQLite, ver Figuras 10 y 11. El objetivo fue crear un formato de almacenamiento sencillo y potente y que además no requiriera bibliotecas externas como SpatialLite. 85


Ventajas del formato GeoPackage son: 

Sistemas de referencia bien definidos

Almacenamiento vectorial y ráster (teselado).

El almacenamiento de ráster se hace con tiles, construyendo mapas teselados en varias escalas, que garantiza un buen desempeño para la consulta de los datos.

Almacena la información no espacial de los objetos geográficos vector y ráster.

Almacena todos los datos en un único archivo, facilitando el intercambio de información.

Tamaño máximo de un archivo es de 140 TB

Empaqueta

la

composición

completa

de

un

mapa,

incluyendo

simbología, lo cual lo hace óptimo para realizar migración de la cartografía generada en un proyecto. 

El formato soporta la creación de extensiones a través de su lenguaje de programación, con las cuales se puede añadir el proyecto con el cual se elaboró el mapa incluida la plantilla de presentación de este.

El Uso del Esquema de la Base de datos SQLite permite: 

Utilizar una codificación definida

Garantizar Integridad

Capacidad de utilizar SQL

Implementa Integrity assertions, lo cual garantiza la validación de casos que no pueden ocurrir lo cual garantiza la integridad de los datos. Adicionalmente, permite generar alertas en caso de que se acceda a código del formato no accesible.

Contiene constraints (restricciones) para validación de la integridad de datos.

Hace control de las limitaciones del formato.

86


Figura 10 Diagrama de clases del Formato GeoPackage. Fuente: (Open Geospatial Consortium, 2018)

Figura 11 Modelo geométrico del Core del formato GeoPackage. Fuente: (Open Geospatial Consortium, 2018)

87


2.9.1.

Características del Soporte de GeoPackage para Datos

Vector y Ráster En la figura 12, se presenta las características del soporte del formato GeoPackage para datos Vector y Ráster.

Figura 12 Características del soporte del formato GeoPackage tanto para datos Vector y Ráster. Fuente: (Yutzler, 2017)

Al observar un mapa convertido al formato GeoPackage y utilizando una herramienta adecuada, se puede explorar la estructura presentada en el Diagrama de Clases del formato que se crea en la Base de datos SQLite embebida en el formato, ver de la figura 10.

La tabla 9, presenta los resultados de explorar la base de datos SQLite creada al convertir el mapa al formato GeoPackage. En este caso el formato contiene dos entidades geográficas, una en formato ráster y otra en formato vector, como se puede observar en la figura 13. La capa vector corresponde a tipo línea y presenta el drenaje de una región (USA_RÁSTER), la capa ráster es un modelo digital de elevación (DEM_USA).

88


Figura 13 Vista de las capas Ráster y Vector analizadas en el explorador de la base de datos SQLite.

Al crear el formato GeoPackage, en la base de datos SQLite, siempre se crea el modelo de datos presentado en la figura 10. Para el ejemplo presentado, en la tabla 10, se presenta las tablas creadas en la base de datos SQLite, y un análisis de los registros almacenados., con sus respectivas vistas en el explorador de SQLite, figuras 14, 15 y 16.

Nombre de la tabla

Contenido de la tabla

Figura

DEM_USA

Datos del DEM y atributos

14

USA_RÁSTER

Datos de la entidad geográfica USA_RÁSTER (drenaje) y

15

atributos asociados Tabla 9 Vista en SQLite de las tablas de Datos de las entidades geográficas cargadas en un formato GeoPackage.

89


Figura 14 Vista de Navegación sobre los datos de una Entidad espacial en el formato GeoPackage.

Figura 15 Vista de Tabla de los datos de una Entidad espacial Vector en el formato GeoPackage.

90


Figura 16 Vista de Tabla de los datos de una Entidad espacial Ráster en el formato GeoPackage.

Nombre de la tabla

Contenido de la tabla

Figura

gpkg_contents

En esta tabla cada registro corresponde a cada entidad

17

geográfica cargada en el formato GeoPackage, y algunos atributos como tipo de dato (vector o ráster), fecha de actualización, coordenadas X, Y del extent de la entidad, código EPSG de la referencia espacial. gpkg_ogr_contents

En esta tabla se registra las entidades geográficas de tipo

18

vector y el número de registros contenido en cada una de ellas. gpkg_spatial_ref_sys

Esta tabla se registra los sistemas de referencia de las

19

entidades geográficas cargadas en el formato GeoPackage y almacenadas en SQLite Tabla 10 Vista en SQLite de las tablas que registran información relacionada con las entidades geográficas o sus atributos cargadas en un formato GeoPackage.

91


Figura 17 Vista de Tabla gpkg_Contents del modelo de datos del formato GeoPackage creado como ejemplo.

Figura 18 Vista de Tabla gpkg_ogr_Contents en el formato GeoPackage creado como ejemplo.

92Â Â


Figura 19 Vista de Tabla gpkg_spatial_ref_sys en el formato GeoPackage creado como ejemplo.

Nombre de la tabla

Contenido de la tabla

gpkg_data_column_constraints

Se registra la definición de la restricción

Figura 20

asociada a atributo de las tablas existentes gpkg_data_columns

Se registra la definición de la restricción

21

asociada a cada tabla Tabla 11 Vista en SQLite de las tablas que registran información relacionada restricciones asociadas a las entidades geográficas o sus atributos cargadas en un formato GeoPackage.

SQLite en el formato GeoPackage, no incluye dentro de la definición de las tablas la creación de constraints (restricciones) diferentes a primary key (clave principal); por lo tanto, para validar datos a nivel del motor, las validaciones tipo foreing key o chequeos se hacen a través de triggers (disparadores). Es posible que cada vez que se desea construir una nueva validación se debe hacer con triggers nativos y se debe conocer el SQL nativo del motor, o se hace a través del código del mismo formato. Este aspecto debe evaluarse. 93


Figura 20 Vista de Tabla gpkg_data_column_constraints en el formato GeoPackage creado como ejemplo.

Figura 21 Vista de Tabla gpkg_data_columns en el formato GeoPackage creado como ejemplo.

94Â Â


Nombre de la tabla

Contenido de la tabla

gpkg_extensions

En esta tabla se registra las extensiones creadas

Figura 22

por el código del formato. Se observa que siempre se crea una extensión para la metadata y otra para el schema gpkg_geometry_columns

Cada registro de esta tabla corresponde a cada

23

entidad geográfica de tipo vector cargada, para la cual se almacena el tipo de capa vector cargada, el sistema de referencia. Tabla 12 Vista en SQLite de las tablas que registran información relacionada extensiones asociadas a las entidades geográficas cargadas en un formato GeoPackage.

Figura 22 Vista de Tabla gpkg_extensions en el formato GeoPackage creado como ejemplo.

95


Figura 23 Vista de Tabla gpkg_geometry_columns en el formato GeoPackage creado como ejemplo.

Nombre de la tabla

Contenido de la tabla

gpkg_metadata

Tabla

que

PUEDE

Figura contener

metadatos

en

24

codificaciones MIME estructuradas de acuerdo con cualquier especificación de metadatos autorizados, como ISO, FGDC entre otras. gpkg_metadata_reference

Esta tabla vincula los metadatos en la tabla

25

gpkg_metadata a los datos en la característica, y las tablas de teselas definidas en las cláusulas 2.1.6 y 2.2.7. La tabla gpkg_metadata_reference no necesita contener ningún registro. Tabla 13 Vista en SQLite de las tablas que registran información relacionada con la metadata asociadas a las entidades geográficas cargadas en un formato GeoPackage.

96


Figura 24 Vista de Tabla gpkg_metadata en el formato GeoPackage creado como ejemplo.

Figura 25 Vista de Tabla gpkg_metadata_reference en el formato GeoPackage creado como ejemplo.

97Â Â


Es importante, tener en cuenta que si bien las tablas gpkg_metadata y gpkg_metadata_reference (figuras 24 y 25), describen los metadatos, no existe un requisito de GeoPackage para que se proporcionen tales metadatos o para que los metadatos definidos se estructuren de manera jerárquica. Esta extensión simplemente proporciona un mecanismo para almacenar esta información. Si se utiliza esta extensión, dichos metadatos y los datos que lo relacionan con los contenidos de GeoPackage no se deben almacenar en otras tablas (Open Geospatial Consortium, 2017).

Nombre de la tabla

Contenido de la tabla

gpkg_tile_matrix

Estas

tablas

se

crean

Figura siempre

al

crearse

el

27

GeoPackage, sin embargo, solo aparecen registros cuando el GeoPackage contiene datos ráster. Cada registro de esta tabla corresponde a cada nivel (Tile) del ráster almacenado. Para este caso, el ráster tiene 13 tiles como se puede observar en la figura. gpkg_tile_matrix_set

Estas

tablas

se

crean

siempre

al

crearse

el

28

GeoPackage, sin embargo, solo aparecen registros cuando

el

GeoPackage

contiene

datos

ráster.

Almacena las coordenadas X, Y min y max del extent de la entidad geográfica tipo ráster cargada y el código EPSG de la entidad geográfica ráster. Tabla 14 Vista en SQLite de las tablas que registran información asociadas a las entidades geográficas de tipo Vector cargadas en un formato GeoPackage.

Al observar las tablas gpkg_tile_matrix y gpkg_tile_matrix_set del modelo de datos creado en SQLite al crearse el formato, se puede apreciar que los datos ráster se almacenan utilizando tiles, el cual se construye para formar con los datos ráster, pirámides de teselas.

Este concepto de estructura de pirámide de mosaicos se construye formando cada nivel con diferente extensión espacial y resolución para cada nivel de acercamiento (zoom), con los datos de los mosaicos en sí. El concepto de 98


"Mosaico" se refiere a una imagen ráster individual como, por ejemplo, PNG o JPEG que cubre un área geográfica específica.

El concepto de "Matriz de mosaico" se refiere a filas y columnas de mosaicos que tienen la misma extensión espacial y resolución en un nivel de acercamiento (zoom) particular. El concepto de "Conjunto de matriz de mosaico" se refiere a la definición de la estructura de mosaico de una pirámide de mosaico (Ver figura 26) (Environmental Systems Research Institute ESRI, 2017).

Figura 26 Esquema del Modelo Piramidal de almacenamiento para datos Ráster. Fuente: (Environmental Systems Research Institute ESRI, 2017)

99


Figura 27 Vista de Tabla gpkg_tile_matrix en el formato GeoPackage creado como ejemplo.

Figura 28 Vista de Tabla gpkg_tile_matrix_set en el formato GeoPackage creado como ejemplo.

100Â Â


Nombre de la tabla

Contenido de la tabla

Figura

Para cada entidad geográfica de formato ráster cargada se crean: rtree_USA_Ráster_geom

La única información que almacena una tabla

29

R * Tree es su ID entero y las coordenadas del extent de cada registro contenido en la entidad geográfica. En este caso, el extent de cada línea. La información adicional, como nodos,

debe

almacenarse

en

tablas

separadas y estar relacionada con el índice R * Tree utilizando la llave principal (primary key). rtree_USA_Ráster_geom_node

En esta tabla se almacena el ID de cada nodo

30

contenido en la entidad geográfica. rtree_USA_Ráster_geom_parent

En esta tabla se almacena el ID de cada nodo

31

padre contenido en la entidad geográfica y su relación con los nodos hijos (nodeno). rtree_USA_Ráster_geom_rowid

En esta tabla se almacena el ID de cada

32

registro de la entidad geográfica y su relación con los nodos hijos (nodeno). Tabla 15 Vista en SQLite de las tablas que registran los índices asociados a las entidades geográficas de tipo Ráster cargadas en un formato GeoPackage.

Un R-Tree es un índice especial que está diseñado para hacer consultas de rango. Los R-Trees son los más usados en sistemas geoespaciales donde cada entrada es un rectángulo con coordenadas X e Y mínimas y máximas. Dado un rectángulo de consulta, un R-Tree puede encontrar rápidamente todas las entradas que están contenidas dentro del rectángulo de consulta o que se superponen con el rectángulo de consulta. Esta idea se extiende fácilmente a tres dimensiones para su uso en sistemas CAD. Los R-Trees también encuentran uso en búsquedas de rango de dominio en donde puede existir una tercera variable como por ejemplo el tiempo (Open Geospatial Consortium, 2017).

101


Figura 29 Vista de Tabla rtree_USA_Ráster_geom en el formato GeoPackage creado como ejemplo.

Figura 30 Vista de Tabla rtree_USA_Ráster_geom_node en el formato GeoPackage creado como ejemplo.

102


Figura 31 Vista de Tabla rtree_USA_Ráster_geom_parent en el formato GeoPackage creado como ejemplo.

Figura 32 Vista de Tabla rtree_USA_Ráster_geom_rowid en el formato GeoPackage creado como ejemplo.

103


Nombre de la

Contenido de la tabla

Figura

tabla Estas tablas se crean cuando la implementación del GeoPackage crea una extensión: qgis project

Registra la plantilla de salida de un proyecto de conformación de

33

mapa. Es decir, esta tabla sólo se crea cuando se crea una extensión para almacenar en el GeoPackage la plantilla de un mapa. qgis resource

Esta tabla almacena las imágenes como logos que se cargan en

34

la plantilla para salida de mapas. Es decir, esta tabla sólo se crea cuando se crea una extensión para almacenar en el GeoPackage la plantilla de un mapa con los recursos asociados. Tabla 16 Vista en SQLite de las tablas que registran información asociada con las extensiones para el almacenamiento de las plantillas de salida cargadas en un formato GeoPackage.

Figura 33 Vista de Tabla qgis project en el formato GeoPackage creado como ejemplo.

104


Figura 34 Vista de Tabla qgis_resource en el formato GeoPackage creado como ejemplo.

SQLite es una base de datos basada en archivos, y su funcionalidad se soporta principalmente en la memoria cache del sistema operativo. La mayor parte de tiempo de operación lo emplea en la sincronización al comprometer una transacción, por cuanto al realizar operaciones múltiples, siempre debe envolverlos en una sola transacción. El formato GeoPackage permite intercambiar la composición del mapa, por cuanto el formato, contiene un sistema de almacenamiento de datos que utiliza SQLite y que permite guardar todos los niveles de información utilizados en la composición del mapa, incluyendo niveles en formato ráster, con un mínimo de carga en almacenamiento, por cuanto hay un ahorro alrededor del 40% menos (figura 35).

105


Figura 35 Proceso de migración y restauración de un Mapa utilizando formato Shapefile y GeoTIFF.

El uso de este formato no solo representa un ahorro en términos de almacenamiento de máquina, sino en tiempo para generar la copia del mapa, y su posterior restauración de la copia hasta llegar al mapa cargado en un SIG de escritorio, lo cual se puede observar en la figura 36.

106


Figura 36 Proceso de migración y restauración de un Mapa utilizando formato GeoPackage.

La alta interoperabilidad del formato y su eficiencia en almacenamiento, lo hace ideal para utilizarlo en aplicaciones para dispositivos móviles, en los cuales el almacenamiento es muy limitado, tal y como ocurre en algunas aplicaciones que se ejecuta en línea y fuera de línea. Un caso muy interesante es presentado en una aplicación para el desarrollo agrícola que accede a este formato para visualizar información geográfica en un dispositivo móvil. “La ventaja de trabajar con GeoPackage es que es un estándar abierto formulado por OGC y es integrable con otras herramientas SIG sin demasiadas dificultades”

(Bartling

et

al,

2016).

GeoPackage

aplica

componentes

desarrollados bajo estándares OGC, tanto a nivel de base de datos utilizando SQLite, haciendo a GeoPackage un muy eficiente formato de almacenamiento de datos, el cual permite el trabajo fuera de línea. Otros ejemplos que se destacan son el software Ubiquitous GIS el cual es diseñado para trabajar en dispositivos móviles (Rashidan et al, 2015 ), cuyos resultados se destacan teniendo en cuenta de las limitantes del trabajo de campo para la conexión a las redes de datos, lo cual es resuelto por este software utilizando el formato GeoPackage para garantizarle al usuario la visualización de los datos geográficos en ausencia de conexión a redes de datos, utilizando un mínimo de 107


almacenamiento del dispositivo móvil y una aplicación para dispositivos móviles EpiCollect+ (Aanensen et al, 2014), quienes en el 2014 ya presentaban la necesidad de contar con formato ligero para dispositivos móviles que facilitara colectar datos en campo, tal y como lo hace EpiCollect+, con la cual se capturan datos epidemiológicos asignando una coordenada geográfica GPS en el sitio de la toma de datos. La aparición desde hace unos años de una nueva tendencia como los mapas comunitarios, posiciona en el mercado de las aplicaciones para dispositivos móviles un formato ligero como GeoPackage, el cual sin duda es un aporte significativo en el desempeño de este tipo de aplicaciones.

2.10.

Herramientas Tecnológicas Utilizadas en este Estudio.

Los siguientes apartados describen las herramientas tecnológicas que de manera directa o indirecta se utilizan durante el estudio.

2.10.1.

Herramientas

para

del

Monitoreo

de

Hardware

Seleccionadas 2.10.1.1. VMware vSphere El programa vSphere recopila datos de rendimiento para diversos elementos del inventario y sus dispositivos. Los contadores de datos definen métricas de rendimiento individuales. Las métricas de rendimiento se organizan en grupos lógicos que se basan en el objeto o el dispositivo del objeto. Las estadísticas de una métrica o más se muestran en un gráfico (VMware, 2018). Grupo de métricas Servicios de clústeres

Descripción Estadísticas

de

rendimiento

para

clústeres

configurados

mediante vSphere Distributed Resource Scheduler, vSphere High Availability o ambos. CPU

Utilización de CPU por host, máquina virtual, grupo de recursos o recurso informático.

108


Grupo de métricas

Descripción

Almacén de datos

Estadísticas de utilización de almacenes de datos.

Disco

Utilización de discos por host, máquina virtual o almacén de datos. Las métricas de discos incluyen el rendimiento de E/S, como la latencia de las velocidades de lectura y escritura, y las métricas de utilización para el almacenamiento como un recurso finito.

Memoria

Utilización de memoria por host, máquina virtual, grupo de recursos o recurso informático. El valor obtenido es uno de los siguientes: Para las máquinas virtuales, la memoria se refiere a la memoria física del invitado. La memoria física del invitado es la cantidad de la memoria física que se presenta como un componente de hardware virtual a la máquina virtual, en el momento de su creación, y que está disponible cuando la máquina virtual está en ejecución. Para los hosts, la memoria se refiere a la memoria de los equipos. La memoria de los equipos es la memoria RAM que está instalada en el hardware que compone el host. La utilización de la red para las NIC virtuales y físicas y otros

Red

dispositivos de red. Los conmutadores virtuales que admiten conectividad entre todos los componentes, como los hosts, las máquinas virtuales y el VMkernel. Energía

Estadísticas de consumo energético por host.

Adaptador

de

almacenamiento Ruta

de

acceso

Estadísticas de tráfico de datos por adaptador de bus de host (HBA).

de

Estadísticas de tráfico de datos por ruta de acceso.

almacenamiento Sistema

Disponibilidad general del sistema, como el tiempo de actividad y el latido del sistema. Estos contadores están disponibles directamente en los hosts y en vCenter Server.

Disco virtual

Métricas de utilización de discos y rendimiento de discos para máquinas virtuales.

Flash virtual Operaciones

Contadores de dispositivos flash virtuales. de

Operaciones de aprovisionamiento y encendido o apagado de

máquinas virtuales

máquinas virtuales en un clúster o un centro de datos.

vSphere Replication

Estadísticas de la replicación de máquinas virtuales realizadas por VMware vCenter Site Recovery Manager.

Tabla 17. Grupo de Métricas Monitoreadas por vSphere de VMware. Fuente: (VMware, 2018)

109


2.10.1.2. JMeter JMeter fue un proyecto de Apache Software Foundation iniciado en 2001, corresponde a un software que puede ser utilizado como una herramienta de prueba de carga para analizar y medir el desempeño de una variedad de servicios, con énfasis en aplicaciones Web. Puede ser usado como una herramienta de pruebas unitarias para conexiones de bases de datos con JDBC, FTP, LDAP, Servicios Web, JMS, HTTP y conexiones TCP genéricas. Igualmente, puede también ser configurado como un monitor, aunque es comúnmente considerado una solución ad-hoc respecto de soluciones avanzadas de monitoreo (Apache Software Foundation, 2006).

Mientras que JMeter es clasificado como una herramienta de "generación de carga", no es una descripción completa de la herramienta. JMeter soporta aserciones para asegurarse que los datos recibidos son correctos, por cookies de hilos, configuración de variables y una variedad de reportes (Apache Software Foundation, 2006).

JMeter es una de las aplicaciones de código abierto con grandes posibilidades y potencialidades, contradictoriamente presenta carencias en cuanto a documentación de uso, por lo que para sacar todo su potencial es necesario invertir considerables cantidades de tiempo probando para optimizar sus utilizaciones.

Originalmente JMeter fue diseñado para realizar pruebas de estrés sobre aplicaciones Web (pruebas Web clásicas). Sin embargo, hoy en día su arquitectura ha evolucionado, ahora no sólo puede llevar a cabo pruebas en componentes típicos de Internet (HTTP), sino también puede realizar pruebas sobre Bases de Datos, scripts Perl, servlets, objetos java, servidores FTP y prácticamente cualquier medio de los que se pueden encontrar en la red (EJIE S.A., 2009).

110


Para un óptimo desarrollo de pruebas, es necesario tener ciertas nociones funcionales de la aplicación que se va a evaluar, de los datos que se van a emplear y nociones del comportamiento de estos en determinados entornos. Si esto no es así, las pruebas no serán completas al no saber por ejemplo si ha devuelto la hoja apropiada a la petición hecha.

El Apache JMeter está diseñado para desarrollar diferentes tipos de test; desde pruebas sencillas que soliciten simples páginas Web, como complejas secuencias de requisiciones que permitan evaluar el comportamiento de una aplicación, o como la capacidad de carga máxima que pueda tener una aplicación en un servidor (pudiendo llegar a satura el servidor) (EJIE S.A., 2009).

JMeter, tiene aplicación en las siguientes áreas y pautas: 

Verificación de recibo de Software: Realizar Pruebas Técnicas, para esto diseña pruebas dinámicas, hace verificación estableciendo escenarios específicos de pruebas, y grabar los casos de prueba que se vayan a realizar posteriormente en las pruebas de rendimiento.

Verificación y ajustes en entornos: Realizar pruebas dinámicas, en esta área se establece que, entre otros aspectos, se verifique si el rendimiento de la aplicación es bueno ante situaciones de carga y estrés definidas previamente, y establece cuatro tipos de pruebas de rendimiento: rendimiento, estrés, sostenidas y picos.

El proceso de instalación de la herramienta es bastante sencillo, básicamente se descarga el software de http://jakarta.apache.org/jmeter/, solo necesita como prerrequisito tener instalado JRE 1.5+ y basta con descomprimir en un directorio (por ejemplo en /usr/local/ en Unix/Linux, o c:/ en Windows), aunque para usar JMeter no es imprescindible, se recomienda descargar e instalar los plugins para JMeter del proyecto JMeter Plugins. Estos plugins añaden componentes adicionales a los que JMeter implementa por defecto. 111


2.10.1.3. Ubidots Ubidots es una herramienta cuyo core de negocio se enfoca al Internet de las cosas, una tendencia mundial que integra en la red millones de datos desde máquinas, dispositivos móviles e interfaces para conectar a los objetos.

La tecnología Ubidots, es desarrollada para ofrecer una experiencia segura para los usuarios que tienen sensores para toma de datos. Las API amigables para dispositivos (a las se accede a través de protocolos HTTP / MQTT / TCP / UDP) proporcionan una conexión simple y segura para enviar y recuperar datos hacia y desde un servicio en la nube en tiempo real. Los servicios backend de series de tiempo de Ubidots están optimizados para el almacenamiento, el cálculo y la recuperación de datos de IoT. La plataforma por Ubidots para aplicaciones admite visualización de datos interactiva en tiempo real (widgets) y un IoT App Builder que permite a los desarrolladores ampliar la plataforma con su propio código HTML / JS para la personalización privada cuando se desee. Ubidots existe para potenciar los datos desde los usuarios desde el dispositivo a la visualización (Ubidots, 2018).

En Colombia, Ubidots ha hecho posible el acceso al Internet de las cosas, buscando facilitar la vida diaria de personas y compañías. La herramienta desarrollada por Agustín Peláez, de 27 años y originario de Medellín, y Jorge Cardona, matemático aspirante a doctor en la Universidad de Miami, permite la toma de decisiones en tiempo real al analizar la información almacenada en “la nube” sobre hábitos de compra, temperatura o funcionamiento de equipos, que van desde maquinaria empresarial hasta electrodomésticos.

2.10.1.4. PSutil Para realizar la prueba de desempeño en el software SIG de escritorio, se utiliza una librería de Python llamada PSutil, la cual es una librería 112


multiplataforma para recuperar información sobre procesos en ejecución y la forma que estos procesos utilizan los recursos del sistema (CPU, memoria, discos, red, sensores) en Python. Es útil principalmente para supervisar el sistema, perfilar y limitar los recursos del proceso y la gestión de los procesos en

ejecución.

Implementa

muchas

funcionalidades

ofrecidas

por

las

herramientas en línea de comandos de UNIX tales como: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice, ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. La librería PSutil está disponible desde las versiones de Python 2.6 hasta la versión 3.6, soporta arquitecturas de 32 bits y 64 bits, y actualmente es compatible con las siguientes plataformas: Linux, Windows, OSX, FreeBSD, OpenBSD, NetBSD, SUN Solaris, AIX.

2.10.1.5. Python Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis que favorezca un código legible. Se trata de un lenguaje de programación multiparadigma, ya que soporta orientación a objetos, programación imperativa y, en menor medida, programación funcional. Es un lenguaje interpretado, usa tipado dinámico y es multiplataforma (Python Software Foundation, 2001).

Python tiene la poderosa capacidad de contar con una sintaxis muy limpia y clara, es decir, altamente legible y comprensible para el ser humano. Cuenta con módulos, clases, excepciones, tipos de datos de muy alto nivel, así como tipado dinámico. Existen interfaces para hacer llamadas al sistema y librerías, así como diversos sistemas de ventanas. Nuevos módulos pueden ser fácilmente escritos en C o C++ (o algún otro lenguaje, dependiendo de la implementación seleccionada). Python es usado como un lenguaje para extender aplicaciones escritas en algún otro lenguaje, que necesite ser usado bajo scripting o automatización de la interfaz (Python Software Foundation, 2001). 113


Es administrado por la Python Software Foundation. Posee una licencia de código abierto, denominada Python Software Foundation License, que es compatible con la Licencia pública general de GNU.

El proceso de instalación es muy sencillo, se descarga el instalador de la herramienta y se ejecuta, se siguen los pasos y se realizan las configuraciones necesarias de acuerdo con lo solicitado.

2.10.2.

Herramientas seleccionadas para ejecutar los Geo

procesos para las pruebas de desempeño

Los siguientes apartados describen las herramientas tecnológicas que de manera directa o indirecta se utilizan durante el estudio, en las versiones que soportan el formato GeoPackage. Para el caso de la evaluación del SIG de escritorio se utilizará el software QGIS (versión 2.18 Las Palmas) porque tiene soporte directo a través de la librería GDAL (versión) GeoPackage y

para el formato

en el caso en ambiente SIG Web se evalúa el software

GeoServer (versión 2.12.1) por tener una extensión desarrollada para publicar servicios de información geográfica (WMS, WFS, WCS) utilizando el formato GeoPackage y adicionalmente cuenta con soporte a través de la librería GTOOLS (versión 18.2) la cual se soporta en GDAL.

2.10.2.1. QGIS QGIS (anteriormente llamado también Quantum GIS) es una herramienta para SIG, una de sus principales características es que es de código licenciado bajo GNU (General Public License). QGIS es un proyecto oficial de “Open Source Geospatial Foundation” - OSGeo. Corre sobre Linux, Unix, Mac OSX, Windows y Android y soporta numerosos formatos y funcionalidades de datos vector, datos ráster y bases de datos. Fue uno de los primeros ocho proyectos de 114


OSGeo, nació en 2002 y en 2008 oficialmente paso de la fase de incubación. Esta herramienta permite manejar formatos tipo ráster y vector (punto, línea y polígono) a través del uso de las bibliotecas GDAL y OGR, así como bases de datos (Quantum Gis, 2016).

Una de sus mayores ventajas de QGIS consiste en la posibilidad de usarlo como GUI de la herramienta SIG GRASS, utilizando toda la potencia de análisis de este último en un entorno de trabajo más amigable. QGIS está desarrollado sobre C++, usando la biblioteca “Qt” para su Interfaz gráfica de usuario. QGIS permite la integración de “plugins” desarrollados tanto en C++ como Python (Quantum Gis, 2016). Algunas de sus características generales son: 

Soporte para la extensión espacial de PostgreSQL, PostGIS.

Manejo de archivos vectoriales Shapefile de ESRI, ArcInfo coverages de ESRI.

Soporte para un importante número de tipos de archivos ráster (GRASS GIS, GeoTIFF, TIFF, JPG, etc.)

QGIS puede ver y superponer datos vectoriales y ráster en diferentes formatos y proyecciones sin necesidad de conversión a un formato interno o común.

Los formatos soportados incluyen tablas de PostgreSQL con capacidad espacial, archivos en formatos ráster e imágenes soportadas por la biblioteca GDAL, datos ráster y vectoriales, de GRASS, de bases de datos, entre otros.

Tiene la capacidad de permitir el diseño de mapas y explorar datos espaciales de forma interactiva con una interfaz amigable.

Permite además crear, editar, administrar y exportar mapas vectoriales en varios formatos.

Tiene herramientas para digitalización para formatos admitidos por OGR y capas vectoriales de GRASS.

Permite crear y editar archivos Shapefile y capas vectoriales de GRASS. 115


Permite geo codificar imágenes con el complemento Georreferenciador.

Presenta herramientas GPS para importar y exportar formato GPX y convertir otros formatos GPS a GPX.

Tiene la capacidad de guardar capturas de pantalla como imágenes georreferenciadas.

Permite realizar análisis de datos espaciales de PostgreSQL/PostGIS y de otros formatos admitidos por OGR usando el complemento de Python fTools.

QGIS

ofrece

herramientas

de

análisis

vectorial,

muestreo

y

geoprocesamiento, geometría, administración y gestión de bases de datos. 

Puede usar las herramientas de GRASS integradas, que incluyen la funcionalidad completa de GRASS de más de 350 módulos.

QGIS también se puede usar como cliente WMS o WFS y como servidor WMS además de permitir exportar datos a un archivo Mapfile y publicarlos en Internet usando un servidor Web con MapServer instalado.

Fundamentalmente QGIS sirve para crear, editar, visualizar, analizar y publicar información geoespacial, navegar y previsualizar datos y metadatos, arrastrar y soltar datos de una base de datos a otra, publicar capas y proyectos de QGIS como OGC compatibles con servicios WMS y WFS, controlar cuales capas, atributos, planos y sistemas de coordenadas son exportados y publicar proyectos de QGIS en la Web con “Ease” (Quantum Gis, 2016).

Esto para cumplir con los diferentes propósitos de las organizaciones en las que la información geográfica cumple un papel relevante.

Básicamente el procedimiento es descargar la aplicación e instalarla, consiste en una aplicación visual.

116


Figura 37. Vista General de QGIS.

Como se puede apreciar en la figura 37, el entorno es gráfico. Allí se han destacado los siguientes elementos: 1. Barra de Menú 2. Barras de herramientas 3. Paneles 4. Vista del mapa 5. Barra de Estado

2.10.2.2. GeoServer GeoServer es un servidor de mapas de código abierto escrito en Java que permite a los usuarios compartir y editar información geoespacial usando estándares abiertos. Implementa varios estándares definidos por OGC, como 117


por ejemplo el ampliamente utilizado WMS. Diseñado para la interoperabilidad, publica datos de las principales fuentes de datos espaciales usando estándares abiertos. GeoServer ha evolucionado hasta llegar a ser un método sencillo de conectar información existente a bodegas virtuales tales como Google Earth y NASA World Wind. GeoServer sirve de implementación de referencia del estándar OGC, y también implementa las especificaciones de Web Map Service y Web Coverage Service (Instituto Geográfico Militar, Secretaria Nacional de Planificación y Desarrollo, s.f.).

Entre las principales características de GeoServer están: 

Enteramente compatible con las especificaciones WMS, WCS y WFS, testados por el test de conformidad de la OGC.

Fácil utilización a través de la herramienta de administración vía Web.

Soporte amplio de formatos de entrada PostGIS, Shapefile, ArcSDE y Oracle. VFP, MySQL, MapInfo y WFS.

Soporte de formatos de salida tales como JPEG, GIF, PNG, SVG y GML.

Soporte para edición de datos de banco de datos individuales a través del protocolo WFS transactional profile (WFS-T), disponible para todos los formatos de datos.

Basado en servlets Java (JEE), puede funcionar en cualquier servlet contenedor.

Proyectado para ser compatible con extensiones.

Facilidad de escritura de nuevos formatos de datos con la interfaz de almacenamiento de datos GeoTools y clases de ayuda.

Incluye un cliente integrado OpenLayers para previsualizar capas de datos.

GeoServer soporta la publicación de datos geoespaciales para Google Earth a través del uso de enlaces de red, utilizando KML para ello. Funciones avanzadas disponibles para output de Google Earth incluyen plantillas para pop-ups personalizados, visualizado de altitud y longitud, y "super-overlays". 118


Principalmente GeoServer sirve para publicar información geoespacial, permite a los usuarios compartir y editar información geográfica usando estándares abiertos. Implementa varios estándares definidos por OGC, como por ejemplo el ampliamente utilizado WMS, entre otros. Al igual que otras herramientas, se debe descargar el software e iniciar el proceso de instalación de acuerdo con las instrucciones, es de anotar que se debe instalar con las configuraciones de un servidor, se accede a la herramienta a través de un browser para internet, por ejemplo: el explorador de Windows, Google Crome o Mozilla Firefox. Ver figura 38 (Instituto Geográfico Militar, Secretaria Nacional de Planificación y Desarrollo, s.f.).

Figura 38. Vista General de GeoServer

2.10.2.3. PostgreSQL/PostGIS PostgreSQL es un sistema de gestión de bases de datos relacional orientado a objetos, y siendo software libre está publicado bajo la licencia PostgreSQL,1 similar a la BSD o la MIT.

119


Fue seleccionado para este estudio, a partir del conocimiento por parte del equipo de trabajo, de este software de código abierto y por el tiempo de respuesta que se ofrece en los diferentes foros de soporte al software, aunque una limitante del software es que PostgreSQL no tiene un gestor de errores, haciendo muy difícil conocer el estado de sus defectos.

Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre o apoyados por organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).

El PGDG solo desarrolla el Motor de Datos y un número pequeño de utilidades, para potenciar el trabajo con PostgreSQL se hace preciso agregar utilidades externas creadas especialmente para este motor, lo cual gracias a su licencia BSD, permite la utilización del código para ser comercializado. Uno de los casos más conocidos es la de Enterprise DB (PostgreSQL Plus), la cual incluye varios agregados y una interfaz de desarrollo basada en Java. Entre otras empresas que utilizan PostgreSQL para comercializar se encuentra CyberTech (Alemania), con su producto CyberCluster (Madruñero, 2011).

En actividades relacionados con SIG: 

PostGIS: Extensión que añade soporte de objetos geográficos a PostgreSQL y permite realizar análisis mediante consultas SQL espaciales o mediante conexión a aplicaciones GIS (Sistema de Información Geográfica).

En actividades relacionados con Replicación: Replicación maestro esclavo y multi maestro asincrónica.

120


    

PgCluster Replicación multi maestro. Slony-I Replicación maestro esclavo. PyReplica

PostgreSQL/PostGIS es una base de datos muy robusta, tal y como se puede apreciar en la comparación de varios aspectos realizada por una importante empresa de servidores virtuales – Digital Ocean, quienes, en el año 2014, publicaron una interesante comparación de motores de bases de datos, que se presenta en la tabla No. 18.

121


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

Datos Tipo de datos que soporta

TINYINT

SMALLINT

MEDIUMINT

Integer

Bigint

Float

Double, Double

Decimal, Numeric

date

datetime

Timestamp

Precisión, Real

timestamp [(p)]

 

with time zone Time

Year

Char

VARCHAR


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

Datos TINYBLOB,

TINYTEXT Blob, Text

MediumBlob,

MediumText Longblob,

Longtext Enum

Set

Null

xml

uuid

txid_snapshot

tsvector

tsquery

tsvector

serial

polygon

123


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

Datos point

path

money

macaddr

lseg

line interval [fields]

 

[(p)] inet

circle

cidr

bytea

box

boolean

bit varying [(n)

bit [(n)]

bigserial

124


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

La base de datos consiste en un

Fácil de trabajar con: MySQL se puede

Un

único

instalar

Datos compatible

con

el

Las

estándar SQL de código abierto:

biblioteca vinculada lo que hace

herramientas de terceros, incluidas las

PostgreSQL es de código abierto y

extremadamente

visuales (es decir, las GUI), facilitan el

gratuito,

inicio

administración de bases de datos

archivo

Estándares

en

disco

y

una

portable.

utilizados:

hace

muy

de

la

fácilmente.

base

de

datos.

una

pero

un

sistema

de

relacionales

muy

poderoso.

fuerte:

PostgreSQL

implementación de base de datos

Característica rica MySQL admite una

"simple", SQLite usa SQL. Tiene

gran cantidad de la funcionalidad SQL

Comunidad

algunas

que se espera de un RDBMS, ya sea

cuenta con

directa

comunidad dedicada y experimentada

características

omitidas

(RIGHT OUTER JOIN o FOR CADA DECLARACIÓN),

sin

Ideal provee

para una

desarrollar solución

o

indirectamente.

y

probar:

cuando

el respaldo

de

una

a la que se puede acceder a través

embargo,

algunas adicionales están incluidas.

Ventajas

RDBMS

de

de bases de conocimiento y sitios de

seguridad, algunas bastante avanzadas,

preguntas y respuestas 24/7 de forma

están

gratuita.

Seguro:

Muchas construidas

características en

MySQL.

se

requiere escalar para la concurrencia.

Escalable y poderoso: MySQL puede

Fuerte

soporte

de

manejar una gran cantidad de datos y,

Independientemente

además, se puede usar "a escala", si es

características

necesario.

avanzadas,

terceros: de

las

extremadamente PostgreSQL

está

adornado con muchas herramientas Rápido: Renunciar a algunos estándares

geniales y de código abierto de

permite a MySQL trabajar de manera

terceros para diseñar, gestionar y

muy eficiente y reducir las esquinas, lo

utilizar

el

sistema

de

gestión.

que proporciona ganancias de velocidad. Extensible:

Es

posible

extender

PostgreSQL programáticamente con

125


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

Datos procedimientos almacenados, como debería ser un RDBMS avanzado. Objetivo: PostgreSQL no es solo un sistema de administración de bases de datos relacionales sino objetivo, con soporte para anidamiento, y más. Limitaciones

de datos avanzadas vienen con el

MySQL no tiene la intención de hacer

de

soporte para los usuarios, es decir,

todo

limitaciones

puede ser un exceso de destrucción y

las conexiones gestionadas con los

funcionales que pueden requerir algunas

puede parecer menos eficiente que

privilegios de acceso establecidos a

aplicaciones

las

y

conocidas:

viene

con

de

Por

las

última

diseño,

Actuación: Para operaciones simples

Sin soporte para usuarios: Las bases

generación.

lectura

pesada,

contrapartes,

PostgreSQL

como

MySQL.

la base y a las tablas. Dado el propósito y la naturaleza de SQLite

Problemas de confiabilidad: La forma en

Popularidad: Dada la naturaleza de

(no

que se maneja cierta funcionalidad con

esta

MySQL

popularidad

hay

niveles

concurrencia

superiores

multi-cliente),

característica

no

de esta

existe.

Desventajas Falta de posibilidad de rendimiento

(por

ejemplo,

referencias,

herramienta, en

carece

de

términos

de

transacciones, auditoría, etc.) la hace un

popularidad, a pesar de la gran

poco menos confiable en comparación

cantidad de implementaciones, que

con

pueden afectar la facilidad con la que

algunos

otros

RDBMS.

se

adicional: El diseño de SQLite no es

puede

obtener

soporte.

posible obtener un mayor rendimiento

Desarrollo estancado: Aunque MySQL

adicional. La biblioteca es sencilla de

todavía es un producto técnico de código

Alojamiento: Debido a los factores

afinar y simple de usar. Técnicamente

abierto, hay quejas con respecto al

mencionados anteriormente, es más

no

proceso

difícil que los hosts o proveedores de

es

posible

rendimiento.

alcanzar

más

de

desarrollo

desde

su

adquisición. Sin embargo, cabe señalar

servicios

que

administradas de PostgreSQL sean

hay

algunas

bases

de

datos

que

ofrecen

instancias

126


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

Datos totalmente MySQL

integradas

que

agregan

basadas

en

valor

las

a

más difíciles.

instalaciones estándar de MySQL (por ejemplo, MariaDB).

Aplicaciones integradas: Todas las

Operaciones

aplicaciones

necesitan

Cuando necesita más de lo que SQLite

Integridad de los datos: Cuando la

requieren

puede ofrecer, incluyendo MySQL a su

confiabilidad y la integridad de los

expansión, p. aplicaciones locales de

pila de implementación, al igual que

datos son una necesidad absoluta sin

un solo usuario, aplicaciones móviles

cualquier servidor de base de datos

excusas, PostgreSQL es la mejor

o

independiente, brinda mucha libertad

opción.

portabilidad,

que que

no

juegos.

operativa Reemplazo de acceso al disco: En

distribuidas:

junto

con

características

algunas avanzadas.

Cuando usar el producto

Procedimientos

complejos

necesitan leer / escribir archivos en el

Alta

seguridad:

base de datos realice procedimientos

disco

Las características de seguridad de

personalizados, PostgreSQL, al ser

beneficiarse de cambiar a SQLite

MySQL

extensible,

para obtener funcionalidad adicional y

confiable para el acceso a datos (y el

simplicidad que proviene del uso del

uso)

directamente

pueden

proporcionan de

una

una

protección

manera

simple.

(SQL).

es

la

mejor

opción.

Integración: En el futuro, si existe la posibilidad de que surja la necesidad

lenguaje de consulta estructurado Sitios

web

y

aplicaciones

web:

de migrar todo el sistema de bases de

La gran mayoría de los sitios web (y

datos a una solución adecuada (por

Pruebas: Es excesivo para una gran

aplicaciones web) simplemente pueden

ejemplo, Oracle), PostgreSQL será la

parte de las aplicaciones utilizar un

trabajar en MySQL a pesar de las

base más compatible y fácil de usar

proceso adicional para probar la

limitaciones. Esta herramienta flexible y

para

el

cambio.

127

y

personalizados: Si requiere que su

muchos casos, las aplicaciones que


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

lógica de negocios (es decir, el

algo escalable es fácil de usar y fácil de

objetivo principal de la aplicación: la

administrar, lo que resulta muy útil a

Diseños complejos: En comparación

funcionalidad).

largo

con otras implementaciones RDBMS

Datos

plazo.

de fuente abierta y gratuitas, para Soluciones

personalizadas:

diseños complejos de bases de datos,

Si está trabajando en una solución

PostgreSQL ofrece la mayor cantidad

altamente específica y extremadamente

en

personalizada, MySQL puede alinearse

posibilidades sin renunciar a otros

fácilmente y seguir sus reglas gracias a

activos valiosos.

términos

de

funcionalidad

y

su gran configuración y modos de operación Aplicaciones

Si

Velocidad: Si todo lo que necesita son

el

objetivo es una aplicación en la que

Cumplimiento de SQL: Como MySQL no

operaciones

varios clientes necesitan acceder y

[trata de] implementar el estándar SQL

PostgreSQL no es la herramienta

usar la misma base de datos, es

completo,

adecuada.

mejor elegir un RDBM con todas las

completamente compatible con SQL. Si

funciones.

necesita integración con tales RDBMS,

Configuraciones simples: A menos

cambiar

que requiera integridad absoluta de

Aplicaciones

Cuando no usar el producto

multiusuario:

que

requieren

esta

de

herramienta

MySQL

no

no

será

es

fácil.

de

lectura

rápida,

los datos, compatibilidad con ACID o

altos

volúmenes de escritura: Una de las

Concurrencia: funcionan muy bien con

diseños

limitaciones

las

operaciones de lectura, sin embargo, en

puede ser una sobre estimación para

operaciones de escritura. Este DBMS

operaciones de las escrituras de lectura

configuraciones

permite que solo se lleve a cabo un

concurrentes pueden ser problemáticas.

de

SQLite

es

complejos,

Replicación:

solo funcionamiento de escritura * en

A

PostgreSQL simples.

menos

que

un momento dado, lo que permite un

La falta de características: Carece de

dispuesto a gastar el tiempo, la

rendimiento limitado.

búsqueda de texto completo

energía y los recursos, lograr la

128

esté


Nombre de Producto de Base de

SQLite

MySQL

PostgreSQL

Datos replicación con MySQL podría ser más

simple

carecen

de

para la

aquellos

que

experiencia

en

administración de sistemas y bases de datos

Tabla 18 Comparativo de Bases de datos SQL. Fuente: (Terzer, 2014).

129


En actividades relacionados con Herramientas de administración: PgAdmin: Entorno de escritorio visual libre y de código abierto. Instalable en plataformas Linux, FreeBSD, Solaris, Mac OSX y Windows. Permite conectarse a bases de datos PostgreSQL que estén ejecutándose en cualquier plataforma. Está disponible en diferente.

Figura 39 Principales características de PostgreSQL.

Algunos límites de la base de datos PostgreSQL se pueden ver en la tabla 19. Limite

Valor

Maximum Database Size

Ilimitado

Maximum Table Size

32TB

Maximum Row Size

1.6 TB

Maximum Field Size

1 GB


Limite

Valor

Maximum Rows per Table

Ilimitado

Maximum Columns per Table

250 - 1600 depending on column types

Maximum Indexes per Table

Ilimitado

Tabla 19 Límites técnicos más relevantes de PostgreSQL. Fuente: (PostgreSQL, 2018)

2.11.

Estándares OGC Utilizados en el Estudio.

Para ejecutar el conjunto de pruebas seleccionadas para medir el desempeño del formato GeoPackage con respecto al formato Shapefile, se tiene previsto generar servicios Web de Información geográfica.

Un servicio Web es una aplicación que se ejecuta continuamente en una maquina (servidor), accesible desde la Intranet o desde Internet, la cual recibe una petición en el formato adecuado, y genera la respuesta correspondiente a dicha petición, es decir, es una parte distinguible de la funcionalidad proporcionada por una entidad a través de una interfaz (ISO19119 -2005).

El soporte y manejo para las bases de datos estarán soportados en el motor PostgreSQL/PostGIS permitiendo conexiones simultáneas y multiusuario a las bases de datos geográficas para almacenamiento, actualización, edición y despliegue de la información Geográfica requerida. El licenciamiento del producto no está limitado a la cantidad de Cores físicos del lado del servidor.

Para lo anterior, y teniendo en cuenta que la mayor parte del software utilizado es software libre, las pruebas serán ejecutadas utilizando las especificaciones que a continuación se relacionan, por la posibilidad de contar con una Instalación distribuida de la plataforma QGIS. 131


 Servicio Web de Mapas (WMS) (Visualización): Su principal objetivo es visualizar los datos geográficos almacenados en la base de datos geográfica. Este servicio Web de mapas puede ser solicitado por un usuario a través del uso de un programa cliente SIG (como es el caso de QGIS u otros softwares SIG de escritorio como GVSIG, QUANTUMGIS, ArcGIS) o de un cliente ligero (Navegadores Web: Google Chrome, Internet Explorer, Mozilla Firefox, Opera) desde donde el usuario envía una petición en forma de URL, la cual es recibida por el servidor WMS que como respuesta devuelve al usuario una imagen en formato JPEG, GIF, PNG. Este servicio permite también consultar los atributos alfanuméricos de la información que se visualiza en el cliente. Para el caso del Ambiente de Publicación la propuesta es contar con una plataforma basada en software libre GNU/GPL denominada GeoServer que posibilite la publicación los servicios WMS requeridos y disminuya los con los costos de implementación de la arquitectura propuesta evitando adquirir otra licencia de ArcGIS server (Open Geospatial Consortium, 2006).

Servicio Descriptor de Estilos de Capa (SLD): Es una extensión del

servicio WMS que permite a los usuarios utilizar estilos de simbolización propia, permitiendo definir cómo se representan los datos visualizados en el cliente SIG o en el cliente Ligero (Open Geospatial Consortium, 2007).

Servicio Web de Entidades u Objetos (WFS) - Feature (Vector- Descarga):

Este servicio permite acceder y consultar los atributos de un objeto (Feature) geográfico y manipular (editar, borrar, crear) la información almacenada en la base de datos, por otra parte, posibilita la descarga de los datos (Open Geospatial Consortium, 2014).

Servicio Web de Coberturas (WCS) – Ráster: Este servicio es análogo al

WFS, pero su operación se lleva a cabo sobre datos Ráster y no sobre formato vectorial. Permite visualizar la información Ráster y consultar el valor del o los atributos almacenados en cada píxel (Open Geospatial Consortium, 2016). 132


3. METODOLOGÍA (Materiales, Métodos y Procedimientos)

A continuación, se detalla el conjunto de procedimientos ejecutados para evaluar los atributos de calidad seleccionados y presentados en el ítem 2.4 del capítulo anterior, de los productos SIG de escritorio (QGIS), y SIG ambiente Web (GeoServer), en cuanto a su operación con el formato GeoPackage frente a los formatos ya consolidados Shapefile y datos almacenados en una base de datos espacial como PostgreSQL/PostGIS.

Para ejecutar las pruebas diseñadas, se utilizan 4 entidades geográficas, de las cuales tres entidades corresponden a datos de formato vector y una cuarta entidad es de formato Ráster. Los datos utilizados corresponden a entidades geográficas de Estados Unidos que se encuentran disponibles en Internet. Son datos grandes de tamaño superiores a 1GB y las especificaciones se detallan en la tabla 19. Estos datos, se transforman a los formatos que van a evaluarse tal y como se

PUNTOS_LIDAR

Vector

INEGI

Shapefile

2006

Vector

ESRI

Shapefile

2018

2

Vector

U.S. Geological Survey

Shapefile

2016

DEM_USA

Ráster

NASA

GeoTIFF

2011

USA_Detailed_Streams

POLIGONOS_COVEROK

8´830.2 92 1´067.9 18 5´956.2 94 48806x2 3326

TAMAÑO

REGISTROS

NÚMERO

PUBLICACIÓN

AÑO

FORMATO

TIPO

FUENTE

GEOGRÁFICA

DATO

NOMBRE ENTIDAD

TIPO DE

puede apreciar en la tabla 20.

1.4 GB

1.2 GB

1.5 GB

4.8 GB

133


TAMAÑO

REGISTROS

NÚMERO

PUBLICACIÓN

AÑO

FORMATO

TIPO

FUENTE

DATO

GEOGRÁFICA

TIPO DE

NOMBRE ENTIDAD

pixels POLIGONOS_COVER_GP KG PUNTOS_LIDAR_GPKG USA_Detailed_Streams _GPKG

gpkg

Autor

gpkg

2016

gpkg

Autor

gpkg

2018

gpkg

Autor

gpkg

2018

8´830.2 92 1´067.9 18

1.7 GB

1.7 GB

5´956.2

778.5

94

MB

Tabla 20 Especificaciones de los datos utilizados en las pruebas para evaluar el formato GeoPackage.

Para evaluar el formato GeoPackage se diseñan dos procesos metodológicos. El primero evalúa el formato en un software de SIG de escritorio y el segundo evalúa el formato en un software SIG en ambiente Web.

3.1.

Metodología para el ambiente de SIG de Escritorio

Los recursos de hardware y software utilizados para el desarrollo de las pruebas se presentan en las tablas 21 y 22 respectivamente: Componente Hardware

Especificación

Arquitectura

64 bits.

CPU

i7 Core 4.2 Ghz.

RAM

40 GB

Tarjeta de video

RADEON P20 580 - 868.

Sistema Operativo

Windows 10

Tabla 21 Especificaciones del hardware utilizado para ejecutar las pruebas de Calidad para SIG de escritorio.

134


Componente Software SIG de Escritorio

Especificación QGIS 3.0 Girona ArcGIS 10.5

Base de Datos

PostgreSQL 9.3 64 BITS

POSTGIS 2.1 64 bits

PGADMIN 1.22.1

Contenedor de pruebas

Ms Excel - Ubidots

Lenguaje

Python

programación

de

PSutil

Tabla 21 Especificaciones del software utilizado para ejecutar las pruebas de Calidad para SIG de escritorio.

En las pruebas para el software SIG de escritorio (QGIS versión 3.0 Girona), se evaluaron las siguientes variables asociadas con la eficiencia de desempeño: tiempo de Ejecución del geoprocesamiento (s), consumo de memoria (Kb), porcentaje de uso de CPU (%), gestión de disco duro I/O (Kb/s). Para desarrollar las pruebas, fue necesario diseñar e implementar una rutina de programación basada en el lenguaje Python, la cual mediante la librería PSutil de este lenguaje, obtiene los valores de las variables descritas sobre el proceso en ejecución asociado al software SIG libre de escritorio QGIS, en una maquina local al efectuar una operación de geoprocesamiento para el caso de datos vectoriales o de exportación de la sesión de trabajo para el caso de datos ráster. Para el caso de datos vectoriales, se evalúo el desempeño del software SIG de escritorio QGIS al ejecutar un geo proceso para el cálculo de centroides en tres estructuras de datos vectoriales (puntos, líneas y polígonos) por separado y a partir de los formatos Shapefile, Base de Datos: PostgreSQL extensión PostGIS y GeoPackage.

Para el caso de los datos ráster, se evalúo el desempeño del software SIG de escritorio QGIS al ejecutar la exportación de la sesión de trabajo completa a formato de imagen PNG (Portable Network Graphics), la sesión de trabajo tiene 135


previamente cargado como capa (layer) un modelo digital de elevación DEM, en los formatos GeoTIFF, PostgreSQL extensión PostGIS, y GeoPackage. Como paso previo, para la realización de las pruebas de eficiencia del desempeño del software libre SIG de escritorio (QGIS) se realizó la transformación de las entidades geográficas a los formatos requeridos.

En el caso de los datos vectoriales correspondió a transformaciones de formato de las entidades geográficas de shapefile a GeoPackage, y del formato Shapefile a Base de datos del tipo PostgreSQL extensión PostGIS. En el caso de los datos ráster la transformación del formato GeoTIFF a los formatos GeoPackage y a base de datos del tipo PostgreSQL extensión PostGIS respectivamente.

Los datos de cada una de las variables resultado de las pruebas SIG de escritorio (QGIS), asociadas con la eficiencia de desempeño, fueron almacenados localmente en un archivo digital de Microsoft Excel, y sincronizados con repositorio de la aplicación Ubidots en Internet para posterior consulta y análisis.

3.1.1.

Transformación de entidades geográficas para evaluación

Las pruebas diseñadas y ejecutadas en ambiente SIG de escritorio, tienen como punto de partida la disposición de los datos en los tres formatos seleccionados para las pruebas. El programa creado en Python para correr el geo proceso de la prueba busca los datos en: 

La Carpeta Proyecto_Python

136


Figura 40 Vista de la Carpeta DATOS utilizada para la prueba SIG de escritorio.

La Base de datos PRUEBA

Figura 41 Vista de la Repositorio de datos (PRUEBA) PostgreSQL-PostGIS utilizada para la prueba SIG de escritorio.

137


Las capas originales vectoriales en Shapefile, se disponen en la carpeta respectiva (ver figura 42), y previamente se procede a la creación de los índices espaciales, utilizando la librería GDAL por la línea de comandos mediante la sintaxis:

ogrinfo -sql"CREATE SPATIAL INDEX ON file1 [DEPTH N]" file1.shp

Donde file corresponde al nombre de cada entidad geográfica empleada.

Adicionalmente, los datos en Shapefile se transforman a los demás formatos utilizados en las pruebas de evaluación. Para lo anterior, se ejecutan los procedimientos que se detallan a continuación:

a. Transformar los datos vectores en formato Shapefile a formato PostgreSQL/PostGIS Se ejecuta el comando “shp2pgsql” de PostgreSQL para la transformación de los datos vectoriales por la línea de comando con la siguiente sintaxis: “shp2pgsql -I ruta_archivo public. tabla | psql -d base_datos – s 4326”

Dónde: “ruta_archivo” es la ruta completa del archivo Shapefile, “public. tabla” es el esquema (public por defecto) y el nombre que se le quiere dar a la tabla donde se almacenara el Shapefile, “base_datos” es el nombre de la base de datos donde se carga el Shapefile. “-s 4326”, almacena los datos en la proyección EPSG 4326.

138


Figura 42 Ejecución comando transformación datos vector Shapefile a formato PostgreSQLPostGIS.

Para cada capa vectorial exportada a la base de datos se crearon de forma individual los índices espaciales, mediante el uso del siguiente comando: CREATE INDEX [Nombre_del_indice] ON [Nombre_de_tabla] USING GIST ([campo_de_geometria]);

Empleando para ello el lenguaje estructurado de consulta (SQL), y el uso de la herramienta PGADMIN 3.

Cabe anotar que La mayor parte de las funciones en PostGIS (ST_Contrains, ST_Intersects, ST_DWithin) incluyen un filtrado adicional por índice espacial automático.

Finalmente se realiza la operación de VACUUM desde la herramienta PGADMIN 3 para garantizar, la eficiencia de la base de datos.

b. Transformar los datos vector en formato Shapefile a formato GeoPackage

139


Para ejecutar el cambio de formato de datos vector Shapefile a formato GeoPackage, se recurre a la herramienta de software SIG de escritorio QGIS, ejecutando la siguiente secuencia de actividades que se detalla a continuación: 

Cargar la entidad geográfica.

Seleccionar la entidad geográfica que desea transformarse de formato. Es importante tener presente que si la entidad no se selecciona no se puede ejecutar el siguiente paso, por cuanto la opción de Guardar como no se activa.

En el menú Capa

, seleccionar la opción

Al oprimir la opción de Guardar como se abre una ventana nueva. En esta ventana, en la parte superior, debe seleccionarse en Formato la opción de PaqueteGeo. Esta opción hace la transformación del formato actual al formato GeoPackage (ver figura. 43).

Figura 43 Menú en Qgis para cambiar formato Shapefile a GeoPackage.

140


Para la creación de los índices espaciales se utiliza la librería GDAL por la línea de comandos mediante la sintaxis: ogrinfo -SQL "CreateSpatialIndex('table_name', 'geom_column_name')" GeoPackage.gpkg

Donde table_name corresponde al nombre de cada entidad geográfica empleada.

c. Transformar los ráster en formato GeoTIFF a formato PostgreSQL/ PostGIS Se ejecuta el comando raster2pgsql para la transformación de los datos ráster por la línea de comando de la manera siguiente como se indica en la Figura 44.

Figura 44 Ejecución comando transformación datos ráster GeoTIFF a PostgreSQL/PostGIS.

d. Transformar los ráster en formato GeoTIFF a formato GeoPackage Para el caso del formato GeoPackage, se ejecutan dos procedimientos diferentes dependiendo del tipo de datos, Vector o ráster.

Para ejecutar la transformación de datos ráster a formato GeoPackage, se recurre al software QGIS y al software ArcGIS Desktop, en los cuales se ejecutan los siguientes pasos: 141


Crear el contenedor GeoPackage. Se crea en QGIS, tal y como se detalló anteriormente para el procedimiento de datos vector (figura 44).

Agregar los datos ráster al contenedor GeoPackage en el software ArcGIS (figura 45). Es importante tener presente que la funcionalidad para agregar los datos ráster está activa como herramienta de geo procesos en el Arc toolbox desde la versión 10.5 en adelante. En versiones anteriores, se debe realizar el procedimiento por la línea de comando. Los datos transformados se ubican en una carpeta llamada DATOS, como lo muestra la figura 40.

Figura 45 Agregar Datos Ráster con Arc toolbox de ArcGIS al contenedor de GeoPackage.

142


3.1.2.

Ejecución del Geoproceso de la prueba

Para lograr obtener los datos requeridos para las métricas seleccionadas, a continuación, se presenta las especificaciones de los geoprocesos seleccionados para la prueba de SIG de escritorio, para datos vector (cálculo de centroides), como para datos ráster (exportación de la sesión de trabajo completa a formato de imagen PNG (Portable Network Graphics).

Geoproceso ejecutado con Datos Vector – Calcular centroide Aspectos conceptuales del Cálculo de los Centroide de una entidad geográfica.

Un Centroide es un concepto que tiene un significado en la geometría y la física. En geometría, un centroide representa el centro de simetría de una figura geométrica. En física, el centroide, es un concepto puramente geométrico que depende de la forma del sistema (discreto o continuo) y todas las fuerzas de gravedad que actúan sobre el mismo. Cuando nos referimos al centroide como el centro de masas de un sistema discreto o continuo es el punto geométrico que dinámicamente se comporta como si en él estuviera aplicada la resultante de las fuerzas externas al sistema. Cuando el centroide es el centro de gravedad, el cálculo es el punto de aplicación de la resultante de todas las fuerzas de gravedad. “Un ejemplo de aplicación de centroide es configurar la ubicación de una anotación, como colocar una etiqueta a un edificio en un mapa” (Yang et al, 2017).

Para efectos de esta prueba el Centroide que se va a calcular es el concepto geométrico,

para

las

entidades

de

puntos

(PUNTOS_LIDAR),

líneas

(USA_Detailed_Streams) y polígonos (POLIGONOS_COVEROK2). Este punto de simetría puede ser calculado de manera sencilla a través de cálculos geométricos 143


de los valores de coordenadas X e Y. Sin embargo, este punto medio puede llegar a presentar diferentes situaciones espaciales (figura 46).

Figura 46 Cálculo de centroides para entidad vector de tipo polígono. Fuente: GIS and Beers, 2016.

Para el cálculo de los Centroides, a continuación, se presenta la secuencia de la rutina programada en lenguaje Python: a. Se declara el juego de caracteres que será utilizado y se cargan las librerías que van a ser utilizadas en la rutina:

Figura 47 Declaración de juego de caracteres y cargue de librerías utilizadas en rutina Python.

b. Se configura las carpetas utilizadas en la prueba (figura 48): 

Carpeta de la cual se toman los datos (conf_datos)

Carpeta en la cual se guardan los resultados (conf_salida) 144


Nombre del archivo que registra los tiempos medidos (Tiempos.csv)

Configuración de la conexión con Ubidots (conf_ubidots)

Figura 48 Configuración Python de las carpetas utilizadas.

c. Se definen las variables que se van a medir y se programa la forma en la cual cada variable se va a calcular (figura. 49) Se busca medir el tiempo que utiliza el software en t0 al inicio de la prueba y el tiempo t1 que corresponde al tiempo en el cual finaliza el Geoproceso, lo cual se expresa en la creación del archivo de salida, el cual se almacena en la carpeta denominada SALIDAS. Los resultados de la rutina se registran a partir de la librería de Python PSutil que permite calcular:    

Tiempo t de ejecución del Geoproceso en segundos (s). Porcentaje de uso de CPU (%) Consumo de memoria RAM (Kb) Gestión de disco duro I/O (Kb/s)

145


Figura 49 Declaración y cálculo de variables en rutina Python.

Proceso ejecutado con Datos Ráster – Exportar sesión de trabajo QGIS con datos ráster DEM a formato png

Para evaluar el desempeño del software SIG de escritorio QGIS con los datos ráster, se implementó rutina de programación en el lenguaje Python utilizando la librería PSutil, a partir de la rutina denominada QGIS2IMG publicada en 2015 por Nathan Woodrow. La rutina de programación permite efectuar la exportación de la sesión de trabajo QGIS completa a formato de imagen PNG (Portable Network 146


Graphics), la cual tiene previamente cargado como capa (layer) un modelo digital de elevación DEM, en los formatos GeoTIFF, PostgreSQL extensión PostGIS, y GeoPackage. Como paso previo, para la realización de las pruebas de eficiencia del desempeño del software libre SIG de escritorio (QGIS), se realizó la transformación de las entidades geográficas a los formatos requeridos. En el caso de los datos ráster la transformación del formato GeoTIFF a los formatos GeoPackage y a base de datos del tipo PostgreSQL extensión PostGIS respectivamente.

Los datos de cada una de las variables resultado de las pruebas SIG de escritorio (QGIS), asociadas con la eficiencia de desempeño, fueron almacenados localmente en un archivo digital de Microsoft Excel, y sincronizados con repositorio de la aplicación Ubidots en Internet para posterior consulta y análisis. A continuación, se describe el procedimiento para evaluar el proceso en el software SIG de escritorio QGIS. a. Se abre una sesión de trabajo en el software SIG QGIS (figura 50)

Figura 50 Cargar Datos Ráster a sesión de trabajo software SIG QGIS.

147


b. Se carga la entidad geográfica en formato ráster a la sesión de trabajo de QGIS (figura 51)

Figura 51 Menú para Cargar Datos Ráster a sesión de trabajo software SIG QGIS.

c. Se exporta la sesión de trabajo a formato PNG (figura 52). La programación del código que ejecuta este proceso es de elaboración propia, a partir del código publicado en Github por Nathan Woodrow, QGIS Core developer en el año 2016.

148


Figura 52 Rutina en Python para exportar sesión de trabajo QGIS a formato png. Programación propia basada en el software QGIS2IMG. Fuente: Woodrow, 2015

d. Se definen las variables que se van a medir y se programa la forma en la cual cada variable se va a calcular (figura 49), del procedimiento vector. El proceso completo diseñado para la prueba SIG de escritorio, se puede apreciar en el Diagrama de proceso presentado en la figura 53.

149


Figura 53 Diagrama de proceso para la prueba de SIG – Escritorio.

150


3.2.

Metodología para el ambiente de SIG WEB

En las pruebas para el software SIG en ambiente Web (GeoServer), se evaluaron las siguientes variables asociadas con la eficiencia de desempeño: tiempo de respuesta de un servicio Web de mapas estándar WMS del Open Geospatial Consortium OGC, en milisegundos (ms), para la operación GETMAP (obtener un mapa) utilizando un navegador Web, esta variable se recopilo mediante el uso del software Apache JMeter, con un plan de pruebas basado en un conjunto de 5 peticiones por segundo a los diferentes servicios WMS y grupos de 1, 5, 10, 25, 50,100, 200, 300, 400, 500 y 1000 usuarios. Para la recopilación de las variables relacionadas con la utilización de la CPU por Host (%), uso de Memoria (%), utilización de discos por Host, máquina virtual o almacén de datos en cuanto a Lectura y escritura (bytes), se utilizó la herramienta VMware VSphere, la cual retorna por medio de tablas y gráficos de rendimiento los datos de cada variable descrita.

Las pruebas diseñadas y ejecutadas para el software SIG en ambiente Web, requirieron la implementación previa de los servicios Web de mapas bajo la especificación OGC- WMS. Para el caso de los servicios WMS se utilizaron como almacenes de datos y Capas en GeoServer las tres estructuras de datos vectoriales (puntos, líneas y polígonos), almacenadas en los tres formatos a evaluar (Shapefile, PostgreSQL extensión PostGIS, y GeoPackage). Para el caso de los servicios WMS utilizando los datos ráster se procedió a la creación previa de los almacenes de datos y Capas en el software GeoServer en los tres formatos a evaluar (GeoTIFF, PostgreSQL extensión PostGIS, y GeoPackage). El software utilizado para crear los servicios Web de mapas WMS fue GeoServer versión 2.12.1 y 2.13 Beta, el cual se instaló sobre el servidor de aplicaciones Apache Tomcat 8.5.24. La Metodología para SIG Web se ejecuta en el hardware cuyas especificaciones se presenta en la Tabla 22 y el software presentado en la Tabla 23. 151


Componente Hardware

Especificación

Arquitectura

64 bits.

CPU

Intel Xeon CPU ES-2650 Q @2.00GH x 332

RAM

62.8 GB

Tarjeta de video

Gallium 0.4 on llvmpipe (LLVM 33.9, 256 bits)

Sistema Operativo

CENTOS LINUX 7.4.1708

Tabla 22 Especificaciones del hardware utilizado para ejecutar las pruebas de Calidad para SIG Web.

Componente Software

Especificación

Servidor de aplicaciones

Apache Tomcat/8.5.24

Base de datos

POSTGRES 9.3 64 BITS

POSTGIS 2.2.5 64 bits

PGADMIN 1.22.1

Servidor de Mapas

GeoServer 2.12.1 – GeoServer 2.13 Beta.

Programa

Apache JMeter 3.3 R1808647

de

Pruebas

Funcionales Tabla 23 Especificaciones del software utilizado para ejecutar las pruebas de Calidad para SIG Web.

3.2.1.

Transformación de entidades geográficas para evaluación

Las pruebas diseñadas y ejecutadas en ambiente SIG Web, tiene como punto de partida la disposición de los datos en los tres formatos seleccionados para las pruebas. Para el caso de los datos en formato Shapefile, los datos se disponen en la carpeta respectiva (figura 51), y previamente se crearon los índices espaciales mediante el software QGIS. Los datos en formato PostgreSQL, se transforman mediante línea de comando y se cargan a la base de datos, con el procedimiento descrito en el ítem 3.1.1, los cuales agilizan las consultas. Los datos se almacenan como se presenta a continuación:

La Carpeta Capas-jmeter (figura 54) 152


Figura 54 Vista de la Carpeta Capas_jmeter utilizada para la prueba SIG Web.

La Base de datos PostgreSQL/PostGIS creada: capas_jmeter

Figura 55 Vista de la Repositorio de datos vector (capas_jmeter), PostgreSQL/PostGIS utilizada para la prueba SIG Web.

153


Las capas originales vectoriales en Shapefile se transforman a los formatos utilizados en las pruebas de evaluación. Los datos transformados en el procedimiento SIG Escritorio, se utilizan igualmente en la prueba SIG Web, es decir el procedimiento es el mismo. Lo anterior se puede observar en las figuras 54, 55 y 56.

Figura 56 Vista del Repositorio de datos ráster (capas_jmeter) PostgreSQL/PostGIS utilizada para la prueba SIG Web.

154


3.2.2.

Creación de servicios WMS con GeoServer para las

pruebas Web Las pruebas diseñadas y ejecutadas en ambiente SIG Web, se basan en la creación de servicios de información geográfica de mapas de especificaciones WMS, utilizando los tres orígenes de datos antes especificados, para posteriormente dejarlos disponibles para la siguiente actividad de la prueba. El software utilizado para crear los servicios WMS fue GeoServer 2.12.1 y en versión de prueba Geoserver 2.13 Beta, el cual se instaló sobre el servidor de aplicaciones Apache Tomcat 8.5.24. La figura 57, muestra la configuración del servidor de mapas - GeoServer.

Figura 57 Configuración del Servidor Web de mapas - GeoServer utilizado para la prueba SIG Web.

155


Para realizar la prueba del SIG Web se crean en el servidor de mapas un total de 21 almacenes de datos, los cuales son los contenedores de 14 capas vector cargadas provenientes de los tres orígenes de datos. La figura 58 presenta los almacenes de datos creados.

Figura 58 Almacenes de datos creados en el Servidor Web de mapas - GeoServer.

La figura 59, presenta las capas cargadas desde los orígenes de datos preparados. Cada capa cargada al servidor de mapas representa los servicios de información que recibirán las transacciones enviadas desde la herramienta JMeter.

156


Figura 59 Capas de datos cargados como servicios WMS en el Servidor Web de mapas GeoServer.

Para la creación de los servicios WMS con datos Ráster, en el software SIG Web seleccionado (GeoServer) es necesario adicionar unas librerías en la instalación de java e instalar un plugin a GeoServer. Una vez terminado el proceso de instalación de estos componentes el servicio Tomcat debe ser reiniciado. A continuación, se presenta el proceso de instalación de los componentes requeridos para la publicación de los datos Ráster como servicios WMS.

Instalación extensión mosaico JDBC

Se debe bajar en la sección de descargas de GeoServer (http://Geoserver.org la extensión mosaico jdbc) el componente Geoserver-2.12.1-imagemosaic-jdbc157


plugin.zip de la versión de GeoServer que se tenga instalada, para este caso es la versión 2.12.1, ver figura 60.

Figura 60 Vista de la página de descargas de GeoServer para descargar extensión. Fuente: GeoServer, 2017

El archivo zip del plugin de GeoServer debe ser descomprimido y su contenido se copia en la carpeta de GeoServer “WEB-INF/lib/”.

Instalación librerías para imágenes

Se descargaron los archivos de las librerías de java para la manipulación de imágenes usando las siguientes URL: http://download.java.net/media/jai/builds/release/1_1_3/jai-1_1_3-lib-linux-amd64.tar.gz

http://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-linux-amd64.tar.gz

158


Después de descomprimir ambos archivos, se deben copiar los contenidos de estos en la carpeta de las librerías de la instalación de Java. Los archivos con extensión .jar generados se copian en “lib/ext” y los archivos con extensión .so en “lib/amd64”. 

Creación de capas JDBC

El primer paso es situarse en el directorio donde se tiene la imagen GeoTIFF que se desea publicar en GeoServer, con el siguiente comando se busca crear un mosaico virtual que se usara como base para dividir la imagen: $ gdalbuildvrt dem_usa.vrt *.tif

Posteriormente se crean los tiles y pirámides para el mosaico usando la utilidad de la librería GDAL “gdal_retile.py”. Como paso previo se crea el directorio “tiles” que es donde serán almacenadas las imágenes resultado del proceso $ mkdir tiles $ gdal_retile.py -co TFW=YES -r near -ps 256 256 -of GTiff -levels 6 -targetDir tiles dem_usa.vrt

Para enlazar la capa la base de datos se deben crear tres archivos de control, el primero define la conexión a la base de datos, el segundo mapea la estructura de la base de datos fuente de la capa de información, y el tercero integra los dos primeros. Estos archivos deben ser guardados en la carpeta “data/coverages” de GeoServer. A continuación se presenta el contenido de los tres archivos: Contenido archivo dem_usa.PostGIS.xml: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE ImageMosaicJDBCConfig [ <!ENTITY mapping PUBLIC "mapping" "mapping.PostGIS.xml.inc"> <!ENTITY connect PUBLIC "connect" "connect.PostGIS.xml.inc">

159


]> <config version="1.0"> <coverageName name="aster"/> <coordsys name="EPSG:4326"/> <scaleop interpolation="1"/> <verify cardinality="false"/> &mapping; &connect; </config>

Contenido archivo connect.PostGIS.xml.inc: <connect> <dstype value="DBCP"/> <username value="gisuser"/> <password value="gisuser"/> <jdbcUrl value="jdbc:PostgreSQL://localhost:5432/gisdata"/> <driverClassName value="org.PostgreSQL.Driver"/> <maxActive value="10"/> <maxIdle value="0"/> </connect>

Contenido archivo mapping.PostGIS.xml.inc: <spatialExtension name="PostGIS"/> <mapping> <masterTable name="mosaic" > <coverageNameAttribute name="name"/> <maxXAttribute name="maxx"/> <maxYAttribute name="maxy"/> <minXAttribute name="minx"/> <minYAttribute name="miny"/> <resXAttribute name="resx"/> <resYAttribute name="resy"/> <tileTableNameAtribute name="tiletable" /> <spatialTableNameAtribute name="spatialtable" />

160Â Â


</masterTable> <tileTable> <blobAttributeName name="data" /> <keyAttributeName name="location" /> </tileTable> <spatialTable> <keyAttributeName name="location" /> <geomAttributeName name="geom" /> <tileMaxXAttribute name="maxx"/> <tileMaxYAttribute name="maxy"/> <tileMinXAttribute name="minx"/> <tileMinYAttribute name="minx"/> </spatialTable> </mapping>

Previamente a este paso se debe tener una base de datos creada con la extensión de PostGIS y crear una carpeta llamada “sqlscripts”. El siguiente comando genera un código SQL que define la estructura para almacenar la capa ráster, por lo tanto, al ejecutarlo se generarán un total de cuatro archivos en la carpeta “sqlscripts”, dos para crear la estructura de la base de datos y otros dos para removerla. Los scripts denominados “createmeta.sql” y “add_dem_usa.sql” se deben ejecutar en la base de datos.

$ java -jar /opt/tomcat/Webapps/Geoserver/WEB-INF/lib/gt-imagemosaic-jdbc-18.1.jar ddl -config /opt/tomcat/Webapps/Geoserver/data/coverages/dem_usa.PostGIS.xml spatialTNPrefix osm -pyramids 6 -statementDelim ";" -srs 4326 -targetDir sqlscripts

El siguiente comando recorre los tiles previamente creados y los guarda en las estructuras generadas en la base de datos para este fin. La carpeta “tiles” contiene los fragmentos de la imagen GeoTIFF.

161


$

java -classpath /opt/tomcat/Webapps/Geoserver/WEB-INF/lib/gt-imagemosaic-jdbc-

18.1.jar:/opt/tomcat/Webapps/Geoserver/WEB-INF/lib/PostgreSQL-42.1.1.jar org.geotools.gce.imagemosaic.jdbc.Toolbox

import

/opt/tomcat/Webapps/Geoserver/data/coverages/dem_usa.PostGIS.xml

-config -spatialTNPrefix

dem_usa -tileTNPrefix dem_usa -dir tiles -ext tif

3.2.3.

JMeter como herramienta para peticiones a servicios

WMS. Las pruebas diseñadas se basan en la medida del desempeño del software SIG GeoServer, basado en tiempo de respuesta de un servicio Web de mapas estándar WMS del Open Geospatial Consortium OGC, en milisegundos (ms), para la operación GETMAP (obtener un mapa) utilizando un navegador Web, esta variable se recopilo mediante el uso del software Apache JMeter, con un plan de pruebas basado en un conjunto de 5 peticiones por segundo a los diferentes servicios WMS y grupos de 1, 5, 10, 25, 50,100, 200, 300, 400, 500 y 1000 usuarios. Una vez que se han configurado los almacenes de datos en el software GeoServer con los orígenes de datos vectoriales en Shapefile, PostGIS y en GeoPackage y para los datos ráster en GeoTIFF, PostGIS y en GeoPackage como se ilustro en el apartado 3.4.2. Se configura la herramienta JMeter con los parámetros del servidor y con las diferentes configuraciones de usuario para lanzar peticiones de consulta basados en los servicios WMS.

Estas configuraciones están estandarizadas con parámetros de periodicidad de 1 segundo entre petición, con cinco peticiones para cada hilo (usuario). El objetivo es medir los tiempos de respuesta de GeoServer, conforme se van realizando las peticiones al servidor y a los repositorios que contienen las capas geográficas.

162


Para ejecutar la prueba, se diseña un plan de prueba para cada grupo de usuarios. Los grupos de usuarios definidos se pueden apreciar en la tabla 25. JMeter se configuro con un máximo de 5 peticiones por usuario. A continuación, se presenta la configuración de la herramienta en la cual se aprecia el diseño del plan de pruebas realizado para el grupo de usuarios entre 1 y 1000. Para cada grupo de usuarios se diseña el plan de pruebas respectivo, y los ítems que se configuran se muestran en la figura 61.

Grupo de usuarios

Peticiones configuradas

Total, peticiones realizadas

1

5

5

5

5

25

10

5

50

25

5

125

50

5

250

100

5

500

200

5

1000

300

5

1500

400

5

2000

500

5

2500

1000

5

5000

Tabla 25 Grupo de usuarios definidos para las pruebas de Calidad para SIG Web.

En JMeter se realizaron configuraciones para hacer solicitudes al servidor simulando los grupos de usuarios definidos anteriormente en cada prueba, cada usuario realizaba 5 peticiones al servidor, se almacenaron los resultados en cada una de las simulaciones: 

Número de Hilos (usuarios).

Peticiones por usuario.

Monitoreo de respuesta a peticiones

Tamaño de archivos para Capa vectorial.

163


Figura 61 Plan de prueba diseñado y ejecutado en JMeter ejemplo para 1000 usuarios.

La métrica queda descrita entonces como el Tiempo de respuesta del Software SIG GeoServer, ante cada operación descrita y su unidad de medida son segundos.

164


Figura 62 Plan de prueba diseñado y ejecutado en JMeter para 1 a 1000 usuarios.

165


4. RESULTADOS Y DISCUSIÓN DE LAS PRUEBAS REALIZADAS

A continuación, se presentan los resultados obtenidos discriminados en dos grupos: Pruebas software SIG escritorio y software SIG web.

4.1.

Resultados Pruebas SIG Escritorio (QGIS).

Luego de ejecutar las pruebas, se procede a analizar de forma individual el desempeño del software SIG de escritorio QGIS, al ejecutar el geoproceso para el cálculo de centroides para las tres estructuras de datos vectoriales (puntos, líneas y

polígonos)

en

cada

uno

de

los

formatos

evaluados

(Shapefile,

PostgreSQL/PostGIS, GeoPackage). Los resultados se integran con el propósito de observar y comparar el desempeño obtenido en las pruebas. Los resultados se presentan organizados por métrica estudiada.

4.1.1.

Tiempo de ejecución (QGIS) en segundos (s), del

geoproceso (centroides) para datos vector.

La tabla 24, presenta el tiempo de ejecución en segundos (s) del software SIG de escritorio QGIS, al efectuar el geoproceso que genera los centroides para las tres geometrías analizadas (puntos, líneas y polígonos) y para cada uno de los formatos de almacenamiento de datos: GeoPackage, PostgreSQL/PostGIS, y Shapefile.

166


Formato de datos usado en el

Tiempo de ejecución en segundos (s) Puntos

Líneas

Polígonos

GeoPackage

107,354

21,455

112,859

PostgreSQL/PostGIS

133,497

24,595

192,596

Shapefile

112,269

17,702

93,968

geoproceso

Tabla 24. Tiempo de ejecución (s) del geoproceso (generación de centroides) en información vector.

La figura 63, muestra en un diagrama de barras la comparación del tiempo de ejecución para cada formato de almacenamiento y agrupados por geometría. El eje “x” muestra los tipos de datos vector (puntos, líneas y polígonos), el eje “y” representa los tiempos de ejecución en segundos (s) del geoproceso, para cada una de las entidades geográficas analizadas.

200 180 160 140 120 100

GeoPackage

80

PostgreSQL/PostGIS

60 Shapefile

40 20 0 Puntos

Líneas

Polígonos

Tipo de Datos Vector Figura 63 Gráfica de Tiempo de ejecución en segundos (s) del geoproceso (generación de centroides) en información vector.

El desempeño del Software SIG QGIS, en tiempo de ejecución, para el cálculo de centroides se optimiza cuando la geometría es línea con respecto a las demás 167


geometrías, y con tiempos de ejecución muy similares, para la evaluación de los tres formatos. En geometrías de tipo punto, el comportamiento del formato GeoPackage es muy similar al formato Shapefile, mientras que el software QGIS utiliza un 19% menos de tiempo de ejecución en segundos en el geoproceso utilizando el formato Shapefile frente al formato PostgreSQL/PostGIS y un 15% menos utilizando el formato GeoPackage respectivamente. En geometrías de tipo polígono, el software QGIS ejecuta el geoproceso de forma menos eficiente empleando el formato PostgreSQL/PostGIS. Es así, que utiliza un 51% menos de

tiempo de ejecución en el geoproceso utilizando el formato

Shapefile frente al formato PostgreSQL/PostGIS y un 41% menos utilizando el formato GeoPackage respectivamente. Comparativamente, el

software QGIS

ejecuta el geoproceso un 16,8% más rápido con el formato Shapefile frente al GeoPackage, ver tabla 24 y figura 63.

4.1.2.

Tiempo de ejecución (QGIS) en segundos (s), para

exportación de sesión de trabajo con datos ráster. En el caso de los datos ráster, el tiempo de ejecución de la operación de exportación de sesión de trabajo QGIS con un layer en formato ráster es presentado en la tabla 25, y la figura 64, efectuando comparación de tiempos de procesamiento en segundos. Formato de datos del Layer usado en la operación QGIS Ráster

Tiempo de ejecución en segundos (s) GeoTIFF

PostGIS

158,757967

88,6219333

GeoPackage 67,3126333

Tabla 25 Tiempo de ejecución (QGIS) en segundos (s), para exportación de sesión de trabajo con layer ráster.

168


Tiempo de Ejecución 180

Tiempo de Ejecución (segundos)

160 140 120 100 80 60 40 20 0 Geotiff

PostGIS

GeoPackage

Tipo de formatos analizados Figura 64 Gráfica de Tiempo de ejecución (s) de la operación de exportación de sesión de trabajo QGIS con un layer en formato ráster.

Al analizar los resultados del software QGIS, al efectuar la operación de exportación de una sesión de trabajo incorporando un layer basado en datos ráster, se observa que el layer en formato GeoTIFF utiliza un 44.18% más tiempo de ejecución en segundos que el layer en formato PostgreSQL/PostGIS y un 57.60% con respecto al layer en formato GeoPackage, siendo este último el formato más eficiente en esta métrica.

4.1.3.

Consumo de memoria (QGIS) en kilobytes (Kb), del

geoproceso (centroides) para datos vector. La tabla 26, presenta el consumo de memoria (QGIS) en kilobytes (Kb) del geoproceso, para los datos vector (puntos, líneas y polígonos), empleando los formatos de almacenamiento GeoPackage, PostgreSQL/PostGIS y Shapefile. 169


Formato de datos usado en el geoproceso

Consumo de memoria (Kb) Puntos

Líneas

Polígonos

GeoPackage

36305,07

5545,89

34333,83

PostgreSQL/PostGIS

41041,26

11198,20

50848,75

Shapefile

42867,80

5550,80

27815,3559

Tabla 26 Consumo de memoria QGIS (Kb) en la ejecución del geoproceso con información vector.

La figura 65, presenta un gráfico de barras, donde el eje “x” muestra los tipos de datos vector agrupados (puntos, líneas y polígonos), para facilitar la comparación del consumo de memoria, que se representa en el eje “y” en kilobytes (Kb), para cada una de las entidades geográficas analizadas.

El consumo de memoria al ejecutar el geoproceso en el Software SIG QGIS, para el cálculo de centroides, se optimiza cuando la geometría es línea con respecto a las demás geometrías, y con consumos de memoria en Kilobytes muy inferiores, para

la

evaluación

de

los

tres

formatos.

Sin

embargo,

el

formato

PostgreSQL/PostGIS utiliza un 50% más de memoria que los formatos GeoPackage y Shapefile.

Memoria usada (Kbytes)

50000,00

40000,00

30000,00 GeoPackage 20000,00 PostgreSQL/PostGIS 10000,00

Shapefile

0,00

Puntos

Líneas

Polígonos

Tipo de Datos Vector Figura 65 Gráfica de Consumo de memoria QGIS (Kb) en la ejecución del geoproceso con información vector.

170


En geometrías de tipo punto, se presenta el mayor consumo de memoria RAM, con el formato Shapefile, con un consumo de un 15.31% por encima del formato GeoPackage y un 4.26% con respecto a PostgreSQL/PostGIS.

En geometrías de tipo polígono, el software QGIS ejecuta el geoproceso de forma menos eficiente empleando el formato PostgreSQL/PostGIS. Es así, que utiliza un 45.29% más de memoria al ejecutar el geoproceso de cálculo de centroides con respecto al Shapefile y un 32.48% con respecto a GeoPackage, ver tabla 26 y figura 65.

4.1.4.

Consumo

de

memoria

(QGIS)

en

bytes

(B),

para

exportación de sesión de trabajo con datos ráster.

El menor consumo de memoria se observa cuando el software de escritorio SIG QGIS realiza la operación de exportación de sesión de trabajo, con un layer en formato ráster basado en el formato GeoPackage como se puede observar en la tabla 27 y en la figura 66, teniendo los formatos GeoTIFF y PostgreSQL/PostGIS un comportamiento similar. ITEM

Consumo de memoria en bytes GeoTIFF

Memoria

1599495,89

PostGIS 1588855,36

GeoPackage 1523579,86

Tabla 27 Consumo de memoria QGIS (B) en la ejecución del geoproceso con información ráster.

171


Memoria Uso de Memoria (Bytes)

1620000 1600000 1580000 1560000 1540000 1520000 1500000 1480000

Geotiff

PostGIS

GeoPackage

Tipo de formatos analizados Figura 66 Gráfica de Consumo de memoria QGIS (B) en la ejecución del proceso con información ráster.

4.1.5.

Consumo

de

CPU

(QGIS)

en

porcentaje

(%),

del

geoproceso (centroides) para datos vector. El consumo de CPU en porcentaje (%), al ejecutar el geoproceso de cálculo de centroides, en el Software SIG QGIS, utilizando los tres orígenes de datos (Shapefile, GeoPackage y PostgreSQL/PostGIS), no presenta grandes diferencias con las tres geometrías (punto, línea y polígono). En las geometrías de tipo línea, el formato PostgreSQL/PostGIS, es el formato que menor consumo de CPU presenta, consumiendo un 20.6% menos de recurso de CPU con respecto al formato GeoPackage y un 19.55% con respecto al formato Shapefile. En geometrías de tipo punto, el mayor consumo de CPU, lo realiza el software SIG QGIS cuando ejecuta el geoproceso con el formato Shapefile, se presenta un 11.73% de mayor consumo de CPU con respecto al formato GeoPackage, y un 4.58% con respecto al formato PostgreSQL/PostGIS, siendo el formato GeoPackage el formato de mayor eficiencia en el consumo reducido de CPU. En geometrías de tipo polígono, el software QGIS ejecuta el geoproceso de forma menos eficiente empleando el mayor consumo de CPU. Cuando QGIS ejecuta el geoproceso utilizando el formato PostgreSQL/PostGIS, se presenta el mayor 172


consumo de CPU, alcanzando un 17.98%, es decir un 1.76% más de consumo de CPU con respecto al formato GeoPackage y un 1.31% con respecto a Shapefile, ver tabla 28 y figura 67. Formato de datos usado en el geoproceso

Consumo de CPU en % Puntos

Líneas

Polígonos

GeoPackage

14,40

16,32

16,22

PostgreSQL/PostGIS

15,57

12,95

17,98

Shapefile

16,32

16,10

16,67

Tabla 28 Consumo de CPU QGIS (%) en la ejecución del geoproceso con información vector

20 18

Procesamiento CPU (%)

16 14 12 10

GeoPackage

8

PostgreSQL/PostGIS

6

Shapefile

4 2 0 Puntos

Líneas

Polígonos

Tipo de Datos Vector Figura 67 Gráfica de Consumo de CPU QGIS (%) en la ejecución del geoproceso con información vector.

173


4.1.6.

Consumo de CPU (QGIS) en porcentaje (%), para

exportación de sesión de trabajo con datos ráster.

Al analizar los resultados del software QGIS al llevar a cabo la tarea de la exportación de la sesión de trabajo con un layer de tipo ráster. Se observó que el layer en cualquiera de los tres formatos GeoTIFF, PostgreSQL/PostGIS y GeoPackage tienen un comportamiento muy parecido frente al consumo de CPU, que oscila entre 19,26 al 18,93% de consumo de CPU, tal y como se observa en la figura 68 y tabla 29. Formato Ráster usado en el geoproceso CPU

Consumo de CPU en % GeoTIFF

PostGIS

GeoPackage

19,23

18,93

19,26

Tabla 29 Consumo de CPU QGIS (%) en la ejecución de exportar sesión de trabajo con información ráster.

CPU

19,3

Procesamiento CPU (%)

19,2 19,1 19

18,9 18,8 18,7 Geotiff

PostGIS

GeoPackage

Tipo de formatos analizados Figura 68 Gráfica de Consumo de CPU QGIS (%) en la ejecución de exportar sesión de trabajo con información ráster.

174


4.1.7.

Almacenamiento - Gestión de Disco Duro (QGIS) I/O en

Kb/s, del geoproceso (centroides) para datos vector. Los resultados de esta métrica, expresa la velocidad con la que se realiza la transferencia de datos entre la unidad de disco duro y la memoria RAM por cada hilo de proceso, la cual se mide en tiempo de Entrada / Salida (I/O) del disco físico activo. Al evaluar los resultados de las operaciones de escritura I/O, del Software SIG QGIS, al ejecutar el geoproceso con la geometría de tipo línea, llama la atención que al utilizar el formato PostgreSQL/PostGIS, mantiene una carga I/O constante, que oscila entre 190.000 Kb/s y 197.000 Kb/s. El uso del formato Shapefile, si bien es el formato que menor carga I/O genera al disco, porque oscila entre 167.000 a 170.000 Kb/s, tiene un comportamiento con grandes oscilaciones (picos) y en contraste el formato GeoPackage que, si bien tiene una carga media, 184.000 y 188.000 Kb/s, con respecto a los demás formatos es más constante en

Escritura en disco (kb/s)

la transferencia de datos entre la unidad de disco duro y la memoria RAM.

Figura 69 Gráfica de escritura en disco en la ejecución del geoproceso con información vector – geometría de línea.

175


Al analizar los resultados cuando se ejecuta el geoproceso con datos vector de geometría de punto, se evidencio que los formatos PostgreSQL/PostGIS y GeoPackage tienen una carga I/O al disco alta y estable, con valores alrededor de 695.000 a 705.000 Kb/s. Para el formato Shapefile se evidencio una carga I/O al disco baja, con valores que oscila entre 614.000 al 618.000 Kb/s, sin embargo,

Escritura en disco (kb/s)

con evidencias de picos fuertes y por lo tanto menor estabilidad. Ver figura 70.

Figura 70 Gráfica de escritura en disco en la ejecución del geoproceso con información vector – geometría de punto.

En la geometría de polígono, cuando el software SIG QGIS ejecuta el geoproceso, el formato shapefile es el formato que menos carga I/O al disco genera, con valores entre 145.400 y 146.600 kb/s, pero con comportamiento totalmente oscilante. La ejecución del geoproceso con el formato GeoPackage tiene un comportamiento oscilante muy similar al comportamiento del formato Shapefile, pero con una carga I/O al disco más alta con valores que oscilan entre 203.200 a 204.800 Kb/s. Para el formato PostgreSQL/PostGIS la carga I/O al disco es totalmente estable, con un valor de 195.000 Kb/s, ver figura 71. 176


Escritura en disco (kb/s)

Figura 71 Gráfica de escritura en disco en la ejecución del geoproceso con información vector – geometría de polígono.

Las figuras 69,70 y 71 representan los cambios que hay en operaciones de lecto escritura para los tres tipos de formatos y en los tres tipos de geometrías. Se advierte picos en el tamaño en los bloques de escritura por unidades de tiempo. Si se comparan las variaciones de los picos en las gráficas estas corresponden a valores inferiores al 1%, por lo tanto, se puede afirmar que son variaciones no significativas permitiendo que se desprecien como variaciones y trabajar con los valores promedios. Por lo tanto, en el análisis de las geometrías y sus formatos se usará el valor promedio calculado dentro de las pruebas. Las tablas 30 y 31, presentan los valores promedios calculados para operaciones de escritura y lectura respectivamente.

177


Tipo de Geometría

Formato de Datos Vector PostgreSQL kilobytes/s

GeoPackage

%

kilobytes/s

Shapefile

%

contra

contra

mayor t

mayor t

kilobytes/s

% contra mayor t

Polígono

195578

33.99

204107

39.84

145957

100

Línea

193443

14.56

186678

10.56

168844

100

Punto

699016

13.33

702249

13.86

616755

100

Tabla 30 Gestión de operaciones de escritura kilobytes/s en la ejecución del geoproceso con información vector.

Tipo de Geometría

Formato de Datos Vector PostgreSQL kilobytes/s

GeoPackage

%

kilobytes/s

%

contra

contra

mayor t

mayor t

Shapefile kilobytes/s

% contra mayor t

Polígono

898739

36.6

657856

100

705331

7.21

Línea

436529

12.64

345124

100

414754

20.17

Punto

6084332

12.05

542953

100

614748

13.22

Tabla 31 Gestión de operaciones de lectura kilobytes/s en la ejecución del geoproceso con información vector.

Para la lectura-escritura el formato que presenta mejores rendimientos en las tres geometrías es el Shapefile, lo cual es entendible por cuanto este formato no le genera carga al sistema por operaciones de transformación en el momento de la escritura. Estas operaciones se hacen más costosas en tiempo, para PostgreSQL/PostGIS y GeoPackage por tratarse de contenedores de base de datos, sin embargo, al compararse estos últimos, es más eficiente el uso del formato GeoPackage, lo cual se debe a la existencia de los procesos de escritura del sistema gestor de base de datos que preserva el log transaccional y las estadísticas de operación.

178


4.1.8.

Almacenamiento - Gestión de Disco Duro (QGIS) I/O en

Kb/s, para exportación de sesión de trabajo con datos ráster.

La tabla 32 y las gráficas 72 y 73 presentan los cambios que hay en operaciones de lecto - escritura del software QGIS, al efectuar la exportación de sesión de trabajo utilizando un layer en formato ráster: ITEM Lectura en disco

GeoTIFF 9090197,85

Escritura en Disco

662,088355

PostGIS

GeoPackage

890281,651

708584,939

619,758787

1130,70583

Tabla 32 Lectura y escritura QGIS (Kb/s) en disco en la ejecución del proceso con información ráster.

Los resultados de lecto – escritura I/O de la prueba ejecutada, son consistentes con los resultados de los tiempos de desempeño, en donde el formato GeoPackage demuestra su eficiencia basado en una mayor tasa de lectura, siendo hasta un 11,828% más eficiente que el formato nativo GeoTIFF y un 0,25% más eficiente que el formato PostgreSQL, tal y como se ilustra en las figuras 72 y 73.

Al analizar el comportamiento de la escritura en disco, los resultados muestran que el comportamiento del software QGIS en la ejecución del proceso de exportación de la sesión de trabajo, utilizando un layer en formato nativo GeoTIFF y PostgreSQL/PostGIS es más eficiente que con el layer en formato GeoPackage, un 45.1% y 41.44% respectivamente. Si bien se detecta una limitación del formato GeoPackage en la escritura en disco debido a que la base de datos SQLite solo soporta una operación de escritura por unidad de tiempo, su robustez en la lectura en disco hace que la gestión de disco duro – I/O en Kb/s, sea la más eficiente, incluso por encima de PostgreSQL. 179


Lectura en disco (kb/s) Escritura en disco (kb/s)

Figura 72. Lectura en kilobytes/s en el disco duro.

Figura 73 Escritura en kilobytes/s en el disco duro.

180Â Â


En el caso de la tabla de las operaciones de lectura kilobytes/s, el formato que es utilizado como línea base de comparación es GeoPackage al obtener la menor tasa de lectura en disco. La tabla 32, ilustra el tiempo de ejecución del software QGIS utilizando el layer en los formatos, que aquí se han comparado. Las dos tablas no son consistentes de manera directa. Lo anterior se debe al tiempo que debe ser empleado por la aplicación para decodificar el formato GeoPackage que a diferencia del formato Shapefile, no requiere el mismo proceso de decodificación. La disminución en el tiempo de lectura en el formato GeoPackage es la que justifica su utilización ante grandes volúmenes de datos en ambientes de escritorio, soportado en la base de datos embebida en el formato.

Es importante tener en cuenta que, al trabajar en una única sesión, el manejador de base de datos DBMS SQLite que soporta el formato GeoPackage, implementa un modelo compartido de bloqueo de lectura, que soporta varios lectores concurrentes activos en la base de datos al mismo tiempo, pero solo permite un escritor, y no puede tener ambos. Si utiliza la función de registro WAL puede tener un solo escritor y varios lectores, activos en la base de datos al mismo tiempo, pero no puede tener más de un escritor.

4.2.

Resultados Pruebas SIG Web (GeoServer).

4.2.1.

Tiempo de respuesta (GeoServer) en milisegundos (ms),

de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa), configurados a partir de almacenes de Datos vectoriales. Una vez realizados los análisis individuales de cada uno de los formatos evaluados, se integran los resultados con el propósito de observar y comparar el desempeño del software SIG Web GeoServer, a partir del tiempo de respuesta en 181


milisegundos (ms), para la petición GETMAP (obtener un mapa) para diferentes servicios web de mapas estándar WMS, configurados con distintos almacenes de datos. Las tablas 33 a 35 muestran los tiempos de respuesta para los almacenes (formatos analizados), y para las tres estructuras de datos vector analizadas (puntos, líneas, polígonos).

Las pruebas realizadas muestran que el software SIG Web GeoServer y el origen de datos basado en PostgreSQL/PostGIS presenta el mejor desempeño respecto a los almacenes de datos basados en Shapefile y GeoPackage. PUNTOS

Peticiones por usuario

Lidar

5

25

50

125

250

500

1000

1500

2500

5000

4661

4785

24333

40892

58752

61824

67138

89552

134414

263537

PostGIS

60015

60043

60141

52891

43530

32617

28652

60084

122755

248324

GeoPackage

45541

42785

60216

64558

82539

113569

168986

219886

312675

604507

Shapefile

Tabla 33 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer para los formatos analizados para la capa de Puntos (Datos Lidar).

LINEAS

Peticiones por usuario

Drenajes

5

25

50

125

250

500

1000

1500

2500

5000

Shapefile

1382

1483

5454

6703

10761

31018

55847

96806

183062

510764

PostGIS

9471

10391

28496

36145

43390

32264

29660

59353

127727

249271

GeoPackage

11541

11065

34317

47820

57174

59634

60760

86428

137545

237290

Tabla 34 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer para los formatos analizados para la capa de Líneas (Drenajes).

Cobertura

Peticiones por usuario 5

25

50

125

250

500

1000

1500

2500

5000

Shapefile

11911

12662

51312

60091

60397

60595

61434

108992

206243

503634

PostGIS

33556

35172

60101

53139

44359

35138

31763

74802

159777

297892

GeoPackage

58041

57750

60153

64187

86657

116751

176460

237035

330577

640983

Tabla 35 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer para los formatos analizados para la capa de Polígonos (Cobertura).

182


Al observar las tabla 33, 34 y 35 se observa que en el software GeoServer, los servicios web de mapas WMS configurados a partir de un almacén de datos basado en el formato Shapefile es el que tiene menores tiempos de respuesta (milisegundos) respecto a los demás. Se observa que los tiempos de respuesta van aumentando conforme aumentan las peticiones y los usuarios. Por otra parte, los servicios WMS basados en un almacén de datos en el formato GeoPackage, a medida que aumentan los usuarios sus tiempos de respuesta también aumenta, pero en mucha menor proporción que los otros formatos comparados, siendo en este sentido el más consistente. El almacén basado en PostgreSQL/PostGIS con menos usuarios tiene rendimientos similares a GeoPackage, pero, conforme van aumentando

sus

tiempos

de

espera

se

van

reduciendo,

mejorando

considerablemente su desempeño hasta llegar a un umbral en donde nuevamente aumentan los tiempos de respuesta conforme aumentan las peticiones realizadas al servidor.

La figura 74 presenta el comportamiento en cuanto a rendimiento en tiempos de respuesta de GeoServer y los servicios web de mapas WMS basados en el formato PostgreSQL/PostGIS, GeoPackage y Shapefile, en el eje “y” se puede ver el número de peticiones por usuario, en el eje “x” el tiempo de respuesta en milisegundos. En estas figuras se pueden observar las respuestas de los servicios web de mapas implementados con el software GeoServer, para cada formato y cada tipo de datos vectorial:

183


Figura 74 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer con relación a información geográfica con datos Vector.

184


4.2.2.

Tiempo de respuesta (GeoServer) en milisegundos (ms),

de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa) - BBOX, configurados a partir de almacenes de Datos vectoriales. Esta prueba se ejecuta con la misma metodología para la prueba SIG Web GeoServer, inicialmente presentada, la variación radica en incluir en la petición una ventana BBOX (Bounding Box), lo cual le permite a un usuario solicitar en la petición GETMAP un marco geográfico limite determinado. El valor del parámetro BBOX en una solicitud es una lista de coordenadas separadas por comas de la forma “minx,miny,maxx,maxy”. El objetivo de efectuar las peticiones GETMAP con el parámetro BBOX es evaluar el tiempo de respuesta cuando una petición sobre un servicio WMS utiliza los índices espaciales soportados por PostgreSQL/PostGIS y GeoPackage. GeoServer en la versión 10.2.1 no tiene incorporado soporte para consulta con índices espaciales para formato GeoPackage. Esta observación fue informada al equipo desarrollador de GeoServer y se incluyó ajuste en una versión 10.3 beta, para la versión 10.3, el desarrollador incorporara esta nueva funcionalidad como parte del Core del software. En la figura 75 se observa como el formato PostgreSQL/PostGIS se comporta conforme

van

aumentando

las

peticiones

concurrentes,

optimizando

su

rendimiento con respecto a los demás formatos analizados. En el eje “x” se representa el número de peticiones por usuario luego, en el eje “y” se observa el tiempo empleado en milisegundos.

185


Puntos - Lidar

Líneas – Drenaje

Polígonos – Cobertura

Figura 75 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos Vector.

186


Luego de hacer pruebas de carga y desempeño con las capas de puntos, líneas y polígonos en cada uno de los formatos evaluados (PostgreSQL/PostGIS, GeoPackage y Shapefile) se realizaron, igualmente, pruebas de desempeño de GeoServer con los servicios web WMS simulando consultas de acercamiento a una región en particular (BBOX) de cada una de estas capas y en los diversos formatos, a continuación, se presentan cada uno de los resultados logrados.

Al igual que en las comparaciones iniciales, se realizó un análisis de los tiempos de respuesta milisegundos (ms) de GeoServer y los servicios web de Mapas WMS incluyendo en la petición GETMAP el parámetro BBOX para los formatos analizados. Al igual que en las pruebas anteriores GeoServer presento mejor desempeño con servicios web de mapas WMS, configurados con almacén en el formato de datos PostgreSQL/PostGIS, a continuación, se presentan las tablas 36,37 y 38 con los resultados obtenidos.

Puntos Lidar

Peticiones por usuario BBOX 5

25

50

125

250

500

1000

1500

2500

1254

1823

1676

2447

2730

9715

36797

42505

73772

131954

PostGIS

60038

60030

60032

47566

30140

29842

26717

45835

87040

114960

GeoPackage

40805

41755

46151

61316

63878

69903

128046

182152

239931

528868

Shapefile

5000

Tabla 36 Tiempos de respuesta de GeoServer y servicios WMS ( GETMAP- BBOX ), para los formatos analizados para la capa de Puntos Lidar. Drenajes

Peticiones por usuario BBOX 5

25

50

125

250

500

1000

1500

2500

5000

Shapefile

1734

1965

2462

4994

18086

36231

58145

96409

163168

473981

PostGIS

4325

4483

5529

14093

22086

27637

28971

49669

101047

196896

GeoPackage

5100

6095

6799

8126

11134

33669

57383

80260

122323

216161

Tabla 37 Tiempos de respuesta de GeoServer y servicios WMS ( GETMAP- BBOX ), para la capa Drenajes.

187


Cobertura

Peticiones por usuario BBOX 5

25

50

125

250

500

1000

1500

2500

5000

Shapefile

12735

14369

15781

26312

51291

60847

61502

105709

187674

501183

PostGIS

33445

41959

46809

51734

30477

32302

30705

58077

130911

228299

GeoPackage

60077

60036

60098

60091

60496

69810

127770

187411

245749

564321

Tabla 38 Tiempos de respuesta de GeoServer y servicios WMS ( GETMAP- BBOX ), para la capa Cobertura.

Aunque en las tablas 36,37 y 38 se observa que GeoServer con el formato de almacén de datos en formato Shapefile es el que en general presenta menores tiempos (milisegundos) de respuesta respecto a los demás, se debe tener claro que estos tiempos van aumentando conforme aumentan las peticiones en consultas BBOX y los usuarios, igualmente GeoServer con servicios WMS y almacén de datos en formato GeoPackage conforme aumentan los usuarios sus tiempos también aumentan pero en mucho menor proporción siendo este más consistente. Para el caso de GeoServer y servicios WMS con un almacén de datos configurado a partir del formato PostgreSQL/PostGIS con menos usuarios tiene rendimientos similares a GeoPackage, pero conforme van aumentando sus tiempos de espera se van reduciendo, mejorando considerablemente su desempeño hasta llegar a un umbral en donde nuevamente aumentan los tiempos de respuesta conforme aumentan las peticiones realizadas al servidor.

En las figuras 76, 78 y 80 se puede observar el comportamiento en cuanto a rendimiento de GeoServer (milisegundos), con servicios WMS y almacén de datos basados

en

el

formato

PostgreSQL/PostGIS,

GeoPackage

y

Shapefile

respectivamente. En el eje “y” se puede ver el número de peticiones y usuarios, en el eje x el tiempo de respuesta en milisegundos. En este grafico se puede ver claramente cómo responden los formatos conforme aumentan los usuarios que realizan consultas sobre la información y como de acuerdo con un determinado número de usuarios y peticiones estos se comportan.

188


5000

Peticiones por usuario BBOX

2500 1500 1000 500

GeoPackage

250

PostGIS

125

Shapefile

50 25 5 0

100000

200000

300000

400000

500000

600000

700000

Tiempo (milisegundos) Figura 76 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos Vector (Puntos Lidar).

En las figuras 77, 79 y 81 se observan la tendencias de los datos con relación al tiempo de respuesta (ms) de GeoServer para los servicios web de mapas WMS y cada geometría analizada, encontrando que es el formato PostgreSQL/PostGIS el que se comporta de forma estable y tiene mejor rendimiento conforme van aumentando las peticiones de los usuarios al mismo tiempo, optimizando su rendimiento con respecto a los demás formatos analizados. En estas figuras, en el eje x se pueden ver el número de peticiones y en el eje “y” se pueden ver el tiempo de respuesta de GeoServer en milisegundos.

189


500000

y = 95,086x + 36114 R² = 0,9908

Tiempo (Milisegundos)

400000 Shapefile

300000

GeoPackage PostGIS

200000

Lineal (Shapefile) Lineal (GeoPackage) Lineal (PostGIS)

y = 27,024x + 862,18 R² = 0,9896 100000

y = 13,368x + 41576 R² = 0,5936

0 0

500

1000

1500

2000

2500 3000 3500 Numero de Peticiones

4000

4500

5000

Figura 77 Tendencia de los datos de Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos Vector (Puntos Lidar).

5000

Peticiones por usuario BBOX

2500 1500 1000 500

GeoPackage

250

PostGIS

125

Shapefile

50 25 5 0

50000

100000 150000 200000 250000 300000 350000 400000 450000 500000

Tiempo (milisegundos)

Figura 78 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos Vector (Líneas Drenajes).

190


500000 450000

y = 90,45x ‐ 13371 R² = 0,972

400000

Tiempo (Milisegundos)

350000 300000

Shapefile

250000

GeoPackage PostGIS

y = 37,841x + 4018,4 R² = 0,9869

200000

Lineal (Shapefile) Lineal (GeoPackage) Lineal (PostGIS)

150000 y = 43,199x + 7380,1 R² = 0,9924

100000 50000 0 0

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Numero de Peticiones

Figura 79 Tendencia de los datos de Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos Vector (Líneas Drenajes). 5000

Peticiones por usuario BBOX

2500 1500 1000 500

GeoPackage PostGIS

250

Shapefile 125 50 25 5 0

100000

200000

300000

400000

500000

600000

Figura 80 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos Vector (Polígonos Cobertura).

191


600000 y = 99,364x + 40732 R² = 0,9821

Tiempo (Milisegundos)

500000

400000 Shapefile

y = 92,266x + 2663 R² = 0,9651

300000

GeoPackage PostGIS

200000

Lineal (Shapefile) Lineal (GeoPackage) Lineal (PostGIS)

y = 38,12x + 26712 R² = 0,9112

100000

0 0

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Numero de Peticiones

Figura 81 Tendencia de los datos de Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos Vector (Polígonos Cobertura).

Una vez realizado en análisis se pudo evidenciar que los mejores desempeños de GeoServer con servicios web de mapas WMS y peticiones GETMAP incluyendo el parámetro BBOX, se logran cuando el almacén de datos está configurado a partir del formato PostgreSQL/PostGIS y el formato Shapefile (se debe tener en cuenta que este último corresponde a una estructura de archivo).

4.2.3.

Tiempo de respuesta (GeoServer) en milisegundos (ms),

de servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa) - BBOX, configurados a partir de almacenes de ráster (GeoTIFF, GeoPackage y PostgreSQL/PostGIS).

En la tabla 39 se puede ver cómo es el comportamiento en los tiempos de respuesta del servidor. Al aumentar las peticiones, estos tiempos se comportan con tendencia lineal, se observa claramente como los tiempos de respuesta de 192


GeoServer son mayores para servicios web de mapas WMS y peticiones GETMAP incluyendo el parámetro BBOX, con almacenes de datos ráster basados en formato de imagen GeoTIFF. Los almacenes de datos basados en este formato se puede considerar ineficientes respecto a los configurados en los otros formatos, este comportamiento a la larga puede afectar considerablemente el servidor y las aplicaciones, ocasionando bloqueos y fallos en el servidor. Para el manejo, publicación, disposición y distribución de información ráster con GeoServer, de acuerdo con los resultados, se recomienda el uso de servicios Web WMS basados en el estándar GeoPackage y en la base de datos PostgreSQL/PostGIS ya que presentan los menores tiempos de respuesta en milisegundos (ms). Imagen Ráster

Peticiones por usuario 5

25

50

125

250

500

1000

1500

GeoTIFF

119975

122712

136011

199506

347491

708358

1464734

1892418

PostGIS

121

169

248

241

492

809

1331

207979

GeoPackage

456

509

688

954

1912

2762

4726

195618

Tabla 39 Tiempos de respuesta (ms) de GeoServer para servicios basados en GeoPackage, PostgreSQL/PostGIS y GeoTIFF.

En la figura 82 se puede ver cómo es el comportamiento de los tiempos de respuesta una vez van aumentando las peticiones, estos tiempos se comportan de manera lineal, en el eje “Y” se presenta el número de peticiones y en el eje “X” se muestra el tiempo en milisegundos (ms), la gráfica refleja cómo van aumentando los tiempos de respuesta respecto a las peticiones realizadas, se observa claramente como los tiempos de respuesta de GeoServer, son menores para los servicios web de mapas WMS y peticiones GETMAP incluyendo el parámetro BBOX, con almacenes de datos ráster basados en los formatos GeoPackage y en la base de datos PostgreSQL/PostGIS, y como el formato de imagen GeoTIFF presenta tiempos de respuesta altos respecto a los otros, este comportamiento a la larga puede afectar considerablemente el servidor y las aplicaciones, ocasionando bloqueos y fallos en el servidor. Así mismo en la figura 83 se puede 193


observar el comportamiento tendencial del tiempo de respuesta de GeoServer para servicios WMS basados en GeoPackage, PostgreSQL/PostGIS y GeoTIFF.

1500 Peticiones por usuario

1000 500 250

GeoPackage

125

PostGIS

50

TIF

25 5 0

400000

800000

1200000

1600000

2000000

Figura 82 Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos ráster (GeoPackage, PostgreSQL/PostGIS y GeoTIFF). 2000000 y = 1256,1x + 81409 R² = 0,992

1800000

Tiempo (Milisegundos)

1600000 1400000

TIF

1200000

GeoPackage

1000000 PostGIS

800000 600000 400000 y = 106,54x ‐ 19589 R² = 0,6295

200000 0 ‐100

100

300

500

700 900 Numero de Peticiones

1100

y = 100,76x ‐ 17565 R² = 0,6445 1300 1500

Figura 83 Tendencia de los datos de Tiempo de respuesta milisegundos (ms) de los servicios web de Mapas WMS y GeoServer (GETMAP-BBOX) y almacén de datos ráster (GeoPackage, PostgreSQL/PostGIS y GeoTIFF).

194


4.2.4.

Consumo de memoria (GeoServer) en porcentaje y

servicios web de mapas estándar WMS para datos vector.

Se logró evidenciar con base en los resultados obtenidos, que el desempeño del software SIG Web GeoServer y los servicios web de mapas estándar WMS, basado en la métrica de uso de memoria RAM (%), tiene un comportamiento muy similar para los servicios WMS de la geometría de líneas configurados con los almacenes

de

datos

PostgreSQL/PostGIS

en

cualquiera

de

los

formatos

GeoPackage,

o Shapefile. Para el caso de servicios WMS de datos

vectoriales de puntos y polígonos configurados con almacén de datos PostgreSQL/PostGIS y GeoPackage presentan menores porcentajes de consumo de memoria RAM.

La tabla 41 presenta el Porcentaje de Memoria usada por GeoServer y los Servicios WMS configurados con los distintos formatos y para los tres tipos de datos vectoriales:

Puntos

Líneas

Polígonos

GeoPackage

24,00

49,68

37,60

PostgreSQL/PostGIS

17,35

41.24

16,50

Shapefile

31,52

45,38

20,85

Tabla 40 Porcentaje (%) de memoria RAM usada por GeoServer y servicios web de mapas WMS configurados a partir de almacenes de datos en formatos GeoPackage, PostgreSQL/PostGIS o Shapefile.

195


4.2.5.

Almacenamiento - Gestión de Disco Duro (GeoServer) I/O

en Kb/s y servicios web de mapas estándar WMS para datos vector.

Al evaluar los resultados de las operaciones de escritura I/O, del Software SIG Web GeoServer soportando servicios web de mapas estándar WMS, configurados a partir de almacenes de datos para las tres geometrías analizadas (puntos, líneas, polígonos). Se evidencio que con base en el formato shapefile se presenta una eficiencia superior en la lectura (kb/s) seguido muy de cerca por la operación de lectura (kb/s) del formato GeoPackage.

Sin embargo, frente a las operaciones de escritura (kb/s), la eficiencia del formato GeoPackage queda comprometida frente a los otros formatos, en especial frente a peticiones a los servicios WMS con más de 10 usuarios y 5 peticiones concurrentes. Puntos

Líneas

Polígonos

GeoPackage

0,46

49,86

1580,43

PostgreSQL/PostGIS

34,56

212,07

1804,12

Shapefile

6,96

18,86

1379,34

Tabla 41 Comportamiento de la lectura en disco (GeoServer) en Kb/s

Puntos

Líneas

Polígonos

GeoPackage

36920,00

12519,18

79736,87

PostgreSQL/PostGIS

355,86

723,99

1152,84

Shapefile

231,69

95,39

36,55

Tabla 42 Comportamiento de la escritura en disco (GeoServer) en Kb/s.

En las figuras 86 y 87 se presentan los comportamientos de lectura y escritura en el disco de la información en los diferentes formatos 196


1800,00 1600,00 1400,00

Lectura (Kb/s)

1200,00 1000,00 GeoPackage 800,00 PostgreSQL/PostGIS 600,00 Shapefile 400,00 200,00 0,00 Puntos

Líneas

Polígonos

Tipo de Datos Vector Figura 84 Desempeño de la lectura en disco (GeoServer) en Kb/s

80000,00

Escritura (Kb/s)

60000,00

GeoPackage

40000,00

PostgreSQL/PostGIS

20000,00

Shapefile

0,00

Puntos

Líneas

Polígonos

Tipo de Datos Vector Figura 85 Desempeño de la escritura en disco (GeoServer) en Kb/s

197


4.2.6.

Uso de CPU (GeoServer) en porcentaje (%),de servicios

web de mapas estándar WMS a la petición GETMAP (obtener un mapa), configurados a partir de almacenes de datos ráster.

Frente al uso de CPU en porcentaje (%), el software SIG GeoServer, se evidencio que el mayor porcentaje de uso de la CPU se presenta con los servicios WMS de datos ráster configurados con el almacén de datos en el formato GeoTIFF. Los servicios WMS con almacenes de datos configurados en formato GeoPackage y PostgreSQL/PostGIS presentan consumo de CPU (%) de características similares. En la tabla 44 se observan las métricas y los valores obtenidos: Ráster

GeoTIFF

PostGIS

GeoPackage

CPU (%)

84,52

10,56

16,75

Memoria (%)

77

61,78

56,05

Lectura en disco

2043,85

29,61

178,11

24,09

771,72

931,29

(Kb/s) Escritura en Disco (kb/s)

Tabla 43 Porcentaje de carga de la CPU (%), Uso de Memoria (%), Lectura y escritura (kb/s) para procesamiento de los ráster en los diferentes formatos analizados en el servidor.

La figura 88 presenta el consumo de CPU(%) de los servicios WMS implementados en GeoServer:

198


CPU 90

Procesamiento CPU (%)

80 70 60 50 40 30 20 10 0 Geotiff

PostGIS

GeoPackage

Tipo de formatos analizados Figura 86 Uso de CPU en porcentaje % (GeoServer) con servicios WMS y almacenes de datos ráster.

4.2.7.

Consumo de memoria (GeoServer) en porcentaje (%), de

servicios web de mapas estándar WMS a la petición GETMAP (obtener un mapa), configurados a partir de almacenes de Datos ráster.

Se logró evidenciar con base en los resultados obtenidos en la tabla 44, que el desempeño del software SIG Web GeoServer y los servicios WMS de datos ráster, basado en la métrica de uso de memoria RAM (%), tiene un comportamiento muy similar para los servicios WMS de datos ráster configurados con los almacenes de datos en cualquiera de los formatos GeoPackage y PostgreSQL/PostGIS, siendo más ineficiente el formato GeoTIFF aproximadamente un 20% de uso mayor de memoria con relación al formato GeoPackage.

La figura 89 presenta la gráfica del uso de Memoria (%), usada por el software GeoServer y los Servicios WMS de datos ráster, configurados almacenes de datos en los tres formatos: 199


Memoria 90

Uso de Memoria (%)

80 70 60 50 40 30 20 10 0 Geotiff

PostGIS

GeoPackage

Tipo de formatos analizados Figura 87 Uso de Memoria porcentaje % (GeoServer) con servicios WMS y almacenes de datos ráster

4.2.8.

Almacenamiento - Gestión de Disco Duro (GeoServer) I/O

en Kb/s y servicios web de mapas estándar WMS para datos ráster Al evaluar los resultados de las operaciones de escritura I/O, del Software SIG GeoServer y los servicios WMS para datos ráster, se encontró que el servicio configurado

a

partir

del

almacén

de

datos

basado

en

el

formato

PostgreSQL/PostGIS es el más eficiente en las operaciones de lectura-escritura, seguido del almacén soportado en el formato GeoPackage. El formato GeoTIFF es de lejos el más ineficiente en las operaciones de gestión de disco I/O. (kb/s). La disminución en el tiempo de lectura para el formato GeoPackage es la que justifica su utilización ante grandes volúmenes de datos en ambiente Web, soportado en la base de datos embebida del formato, sin embargo y como se evidencia con el SIG de escritorio,

el formato GeoPackage implementa un modelo compartido de 200


bloqueo de lectura, que soporta varios lectores concurrentes activos en la base de datos al mismo tiempo, pero solo permite un escritor, y no puede tener ambos.

Lectura en disco

Lectura en disco (Kb/s)

2500 2000 1500 1000 500 0 Geotiff

PostGIS

GeoPackage

Tipo de formatos analizados Figura 88 Desempeño en la lectura (Kb/s) de GeoServer con servicios WMS y almacenes de datos ráster

Escritura en Disco 1000

Escritura en disco (kb/s)

900 800 700 600 500 400 300 200 100 0 Geotiff

PostGIS

GeoPackage

Tipo de formatos analizados Figura 89 Desempeño en la escritura (Kb/s) de GeoServer con servicios WMS y almacenes de datos ráster

201


4.2.9.

Resultados Pruebas Portabilidad

Los resultados de portabilidad se basan en las pruebas ejecutadas, es decir a partir de las pruebas ejecutadas, se hace una evaluación de la portabilidad de los productos de software SIG utilizados para la prueba SIG de escritorio (QGIS) y el software SIG Web (GeoServer), y adicionalmente comprobar la portabilidad al utilizar

los

formatos

seleccionados

(Shapefile,

PostgreSQL/PostGIS

y

GeoPackage). Si bien la Coexistencia de las aplicaciones SIG seleccionadas está relacionada con la convivencia de estas con otros productos de software similares dentro del mismo

entorno compartiendo recursos comunes. Para

evaluar la coexistencia se recurre a registrar los ítems que se presentan en la tabla 45. Nombre Propósito

Grado de coexistencia Identificar los componentes de software incompatibles con los ya existentes en producción.

Método de aplicación

Contabilizar aquellos errores producidos por incompatibilidad de componentes software en un ambiente homologado destinado a pruebas.

Medición, formula

X=1-AB A= Errores de incompatibilidad en una prueba B= Número de pruebas totales

Interpretación

Mientras X esté más cercano a 1 mejor.

Tipo de escala

Absoluta

Tipo de medida

X

=

contador

A

=

contador

B = contador Fuente de medición

Casos de pruebas Software Inventario

ISO/IEC 12207

Verificación Revisión conjunta

Audiencia

Analista de control de calidad Desarrolladores Arquitectos de software

Tabla 44 Evaluación de Portabilidad – Coexistencia para las pruebas de calidad ejecutadas. Fuente: (Tamayo, 2015)

202


En la evaluación de coexistencia realizada, se evidencia que, en términos de portabilidad, el software SIG de escritorio y SIG Web, no presentan errores en los componentes evaluados, así como en la ejecución con los formatos seleccionados para las pruebas. Los resultados de las pruebas realizadas se presentan en la tabla 46.

Aplicación

Nombre

Errores registrados por componente evaluado

QGIS

GeoServer

Formato

Sistema

Convivencia otros

utilizado

operativo

software SIG similares

Base de Datos

Windows

Linux

ArcGIS

GvSIG

Lectura

Escritura

Shapefile

0

0

0

0

0

No soporta

PostgreSQL

0

0

0

0

0

0

GeoPackage

0

0

0

0

0

No soporta

Shapefile

0

0

0

0

0

No soporta

PostgreSQL

0

0

0

0

0

0

GeoPackage

0

0

0

0

0

No soporta

Multiusuario

Tabla 45 Evaluación de Portabilidad – Coexistencia para las pruebas de calidad ejecutadas.

Adicionalmente se presenta la evaluación de Portabilidad de los formatos utilizados en las pruebas realizadas con respecto a un mapa y la forma en la cual cada uno de los formatos utilizados en la evaluación del software SIG de escritorio y SIG Web pueden ser utilizados (ver tabla 47).

Para los usuarios de información geográfica, lograr la portabilidad del 100% de los componentes de un mapa, tiene un significado importante técnicamente, en la medida que es la primera vez que se puede empaquetar en un solo archivo, un mapa completo con todos sus componentes.

203


Ítem para evaluar Entidad geográfica vector

Shapefile

GeoTIFF

 

Entidad geográfica ráster

PostgreSQL

GeoPackage

Plantilla del mapa

Simbología

Base de datos asociada

Metadato

 

Tabla 46 Evaluación de Portabilidad de los formatos utilizados en las pruebas de calidad ejecutadas.

204


5. CONCLUSIONES 1. Al evaluar la eficiencia del desempeño de los productos de software SIG libre, en entorno de escritorio (QGIS) y en ambiente web SIG Web (GeoServer), basados en el uso de los formatos habituales para el manejo de información vector (Shapefile y PostgreSQL/PostGIS) y ráster (GeoTIFF y base de Datos PostgreSQL/PostGIS), comparados con el formato GeoPackage (GPKG), se puede afirmar de manera concluyente que si es posible detectar eficiencias en el desempeño de los productos de software SIG descritos, usando el formato GeoPackage. 2. Fue posible efectuar el diseño de una evaluación del desempeño del software SIG libre en las categorías de Escritorio y SIG Web, determinando las métricas requeridas para medir la característica de eficiencia, de acuerdo con el modelo de calidad propuesto por la ISO/IEC 25010. Para el Caso del SIG de Escritorio (QGIS) se debió implementar rutinas propias de programación en lenguaje Python, para la evaluación. Para el Caso del SIG en ambiente Web SIG Web se recurrió al uso de la aplicación JMeter para la evaluación del desempeño. Las rutinas desarrolladas para el caso del SIG de Escritorio (QGIS) pueden ser extendidas a cualquier otro software SIG y pueden convertirse en herramienta de utilidad no solo en bancos de prueba, sino en la etapa de Planeación de los SIG, en donde el profesional SIG, debe determinar los requerimientos de datos, productos de información, software, hardware, recursos de red, y recurso humano, considerando un análisis de costo beneficio.

3. Los resultados de las pruebas efectuadas son concluyentes para los SIG de Escritorio, por cuanto el desempeño del software QGIS empleando el formato GeoPackage es óptimo para la geometría de objetos vector de tipo punto y de mediano desempeño en las geometrías de tipo línea y polígono, en comparación con el uso de los datos vector en los formatos habituales 205


(Shapefile y base de Datos PostgreSQL/PostGIS). En el caso ráster el desempeño del software SIG de Escritorio es más eficiente de lejos con el formato GeoPackage, que con el formato habitual GeoTIFF. En definitiva, el formato GeoPackage es el ganador de las pruebas de eficiencia en el desempeño para vector y ráster en software SIG de Escritorio (QGIS). 4. GeoPackage como contenedor de archivo digital geográfico, optimiza tiempo y recursos de almacenamiento para la generación y restauración de mapas como productos de información, puesto que es el único formato capaz de alojar un mapa completo con todos sus niveles de información vector y ráster en un único archivo digital, y de integrar dentro del mismo archivo todos los elementos que para el software SIG de Escritorio (QGIS) se requieren para la restauración posterior del producto de información denominado mapa, entre otros: el proyecto con la extensión de archivo para el software SIG de escritorio QGIS, plantilla o rotulo de mapa, simbología, logos, norte geográfica, metadato, sistema de referencia y grilla de coordenadas, entre otros. A partir de esta conclusión, se puede recomendar de manera técnica a las instituciones estatales en Colombia, como el caso de las Corporaciones Autónomas Regionales, que utilizan software SIG libre como herramienta básica de acceso a información geográfica y a productos de información como mapas, tanto en escritorio como Web, abordar procesos de migración de datos de los formatos tradicionales al formato GeoPackage (vector y ráster), traduciéndose en beneficios para la gestión de datos geográficos en primera instancia para ser utilizados en SIG de Escritorio. Por otra parte, el formato GeoPackage garantiza a las Corporaciones Autónomas Regionales en Colombia, contar con una alternativa para la gestión de datos geográficos, con una portabilidad del 100% de los componentes de un mapa, empaquetados en un solo archivo mejorando el trabajo, el tiempo, y la eficiencia en el manejo de productos de información geográfica.

206


5. En ambiente SIG Web, el desempeño del Software GeoServer, usando el formato GeoPackage para la gestión de Servicios Web de mapas (WMS), si bien es completamente funcional y soportado, se ve comprometido frente a múltiples usuarios concurrentes. 6. El formato GeoPackage es un formato que, al trabajar con una base de datos embebida (SQLite), tiene fuertes limitantes en el número de usuarios concurrentes en una única sesión, por cuanto implementa un modelo compartido de bloqueo de lecto - escritura, que soporta varios lectores concurrentes activos en la base de datos, al mismo tiempo, sin embargo, solo permite un usuario escritor, no puede tener ambos. De acuerdo con las pruebas realizadas, el formato GeoPackage tiene su punto de inflexión, al llegar aproximadamente a los 500 usuarios concurrentes, a partir de este punto el formato consume por completo los recursos de hardware, especialmente el procesador (CPU). Lo anterior, tiene implícito, que, a partir de los 500 usuarios, es necesario por ejemplo implementar alternativas de escalamiento horizontal, lo cual es perfectamente posible por su bajo costo de implementación, o efectuar la gestión de Servicios Web OGC (especificación WMS) basados en el motor PostgreSQL/PostGIS. 7. Al utilizar los formatos seleccionados para las pruebas ejecutadas, se evidencio que es importante para el profesional en SIG, analizar cada formato de datos geográficos y utilizarlo de forma adecuada de acuerdo con el entorno y el tipo de software SIG para la gestión de archivos. Las pruebas efectuadas evidenciaron que el formato GeoPackage tiene un fuerte potencial para trabajo en SIG de Escritorio y en aplicaciones con dispositivos móviles y el formato basado en el motor de base de datos PostgreSQL/PostGIS, ofrece una gran estabilidad en aplicaciones SIG web, con fuerte tráfico de peticiones con una eficiencia en el desempeño constante y estable.

207


5.1.

Conclusiones con Relación a la Eficiencia Computacional

del SIG de Escritorio QGIS

Tiempo de ejecución: 

En el modelo vectorial, para el geoproceso de cálculo de Centroides se optimiza cuando la geometría es línea con respecto a las demás geometrías, y con tiempos de ejecución muy similares, para la evaluación de los tres formatos.

El software QGIS utilizando el formato GeoPackage presenta el mejor comportamiento en desempeño de geoprocesamiento, con la geometría de tipo punto, y en el caso de líneas y polígonos el comportamiento del formato GeoPackage es muy cercano al que ofrece el mejor desempeño que es el formato Shapefile. En el caso de datos ráster, GeoPackage es indiscutiblemente el formato que brinda el mejor desempeño para el software SIG de escritorio. Se puede ver que como el formato GeoPackage es el más estable respecto a las tres geometrías.

Consumo de Memoria: 

Para la ejecución del geoprocesamiento en el software de escritorio QGIS, se optimiza el consumo de la memoria RAM cuando la geometría es línea con respecto a las demás geometrías, el formato GeoPackage mostro consumos de memoria en Kilobytes inferiores o cercanos al formato Shapefile, el formato PostgreSQL/PostGIS siempre consume más memoria RAM.

GeoPackage brinda al software SIG de Escritorio, la mayor eficiencia en consumo de memoria RAM, en geoprocesamiento de geometrías de punto 208


y línea, y en el caso de polígonos ofrece el mejor comportamiento. Para datos ráster, GeoPackage también optimiza la eficiencia utilizando el menor consumo de memoria frente al formato habitual de imágenes GeoTIFF. Se pudo observar que GeoPackage es el formato más estable respecto a las tres geometrías en el manejo del recurso memoria RAM.

Consumo de CPU 

El consumo de CPU al ejecutar el geoproceso de cálculo de Centroides, utilizando los tres formatos (Shapefile, GeoPackage y PostgreSQL/PostGIS), no presenta grandes diferencias con las tres estructuras de geometrías (punto, línea y polígono).

GeoPackage presenta el mejor comportamiento relacionado con menor consumo de CPU en porcentaje usando el software SIG de Escritorio QGIS en geoprocesamiento de geometrías de punto y polígono, pero en el caso de líneas ofrece el peor comportamiento.

En el caso del geoprocesamiento de la geometría de líneas es PostgreSQL/PostGIS quien ofrece el mejor comportamiento con relación a menor consumo de CPU usando el software SIG de Escritorio QGIS.

En el procesamiento de datos ráster los tres formatos se comportan de manera similar y se podría afirmar que no existe diferencias significativas en el consumo de CPU en porcentaje usando el software SIG de Escritorio QGIS, para el formato GeoPackage ni para los formatos habituales (GeoTIFF y PostgreSQL/PostGIS)

Almacenamiento - Gestión de disco I/O 

El formato que presenta mejores rendimientos en gestión del disco duro en el geoprocesamiento de datos vectoriales y en las tres geometrías, es el formato Shapefile, lo cual es entendible por cuanto este formato no le genera carga al sistema por operaciones de transformación en el momento 209


de la escritura. Estas operaciones se hacen más costosas en tiempo, para PostgreSQL/PostGIS y GeoPackage al tratarse de contenedores de base de datos, sin embargo, al compararse estos últimos entre ellos, es más eficiente frente a la gestión del disco duro, el formato GeoPackage, lo cual se debe a la existencia de los procesos de escritura del Sistema de Gestión de Base de Datos SGBD del software PostgreSQL/PostGIS que preserva el registro (log) transaccional y las estadísticas de cada operación. 

Frente al comportamiento de la escritura en disco del software SIG de Escritorio QGIS, para datos ráster, los resultados muestran que, en la ejecución de la operación de exportar sesión de trabajo, formatos tradicionales GeoTIFF

utilizando los

y PostgreSQL/PostGIS hay

mayor

eficiencia que con el formato GeoPackage hasta en un 45.1% y 41.44% respectivamente. Se detecta una limitación del formato GeoPackage en la escritura en disco debido al que el DBMS de SQLite solo soporta una operación de escritura por unidad de tiempo, sin embargo su robustez en la lectura en disco hace que la gestión de disco duro - I/O en Kb/s, sea la más eficiente, incluso por encima de PostgreSQL/PostGIS.

5.2.

Conclusiones con Relación a la Eficiencia Computacional

del SIG Web GeoServer

Tiempo de respuesta 

Las pruebas realizadas muestran que el software SIG Web GeoServer y los servicios WMS configurados a partir de un almacén de datos en el formato tradicional PostgreSQL/PostGIS presentan mejor desempeño para la gestión de Servicios Web OGC (especificación WMS), respecto a los configurados en los formatos Shapefile y GeoPackage. 210


Los menores tiempos de respuesta (milisegundos) del Software GeoServer a peticiones de servicios Web de Mapas especificación (WMS) para fuentes de datos tipo vector, se dan cuando el servicio web de mapas está basado en el formato Shapefile esto comparado respecto a los otros dos formatos PostgreSQL/PostGIS y GeoPackage respectivamente. Se pudo observar que los tiempos de respuesta del Software SIG Web GeoServer van aumentando conforme aumentan las peticiones y el número de usuarios. Los tiempos de respuesta (milisegundos) del Software GeoServer a peticiones de servicios Web de Mapas especificación (WMS) para fuentes de datos tipo vector, basados

en el formato GeoPackage, conforme

aumentan los usuarios los tiempos de respuesta también aumentan, pero en mucha menor proporción siendo los servicios web de Mapas más consistentes en la respuesta. 

Para el caso de los tiempos de respuesta (milisegundos) de peticiones a servicios Web de Mapas especificación (WMS) para datos tipo vector, basados en un almacén PostgreSQL/PostGIS se encontró que hasta un numero de 10 usuarios concurrentes cada uno efectuando 5 peticiones simultaneas, tiene tiempos de respuesta similares a los obtenidos con el formato GeoPackage pero, a partir de ese punto de inflexión y

con el

incremento de los usuarios y por ende las peticiones a los servicios Web de Mapas especificación (WMS) los tiempos de respuesta (milisegundos) para el

formato

GeoPackage

aumentan.

Esto

se

explica

puesto

que

GeoPackage es un formato que, al trabajar con una base de datos embebida, SQLite, tiene fuertes limitantes en el número de usuarios concurrentes en una única sesión, por cuanto implementa un modelo compartido de bloqueo de lecto - escritura. 

Los menores tiempos de respuesta (milisegundos) del Software GeoServer, frente a peticiones (GETMAP) a servicios Web de Mapas especificación 211


(WMS) para fuentes de datos tipo vector, y número de usuarios concurrentes mayores a 25 usuarios, se obtienen cuando el servicio web de mapas está basado en el formato PostgreSQL/PostGIS.

5.3. 

Recomendaciones

El análisis de los resultados de CPU y Memoria, no permiten ser concluyentes con relación a los requisitos mínimos esperados para configuraciones de hardware de tipo bajo, medio y alto desempeño. Se sugiere para un trabajo futuro, intentar determinar una plataforma computacional óptima para la comparación de tres ambientes donde se pueda analizar el comportamiento de hilos de procesamiento y el tamaño de la memoria principal.

Se recomienda hacer una evaluación de los productos SIG de escritorio para identificar cuales tienen la capacidad de utilizar procesamiento multi hilo y multiprocesador.

Los formatos de datos espaciales que tienen soporte en un manejador de base de datos (GeoPackage y PostgreSQL/PostGIS), son los más eficientes en el manejo de los recursos computacionales.

5.4.

Valores ganados con el Proyecto

Como un valor destacable, está la interacción lograda con el equipo desarrollador del software GeoServer. A partir de los datos de este proyecto remitido al equipo desarrollador, éste manifestó que la versión de trabajo 212


GeoServer 2.12.1 no incorporaba soporte para las consultas con índices espaciales para el formato GeoPackage, y se brindó acceso a la versión 2.13 Beta para pruebas, a la cual se hicieron las respectivas modificaciones por

parte

del

equipo

desarrollador

para

incorporar

soporte

para

GeoPackage, no como una extensión de GeoServer, sino dentro del Core de la herramienta. Se sugiere que con cualquier otra versión del software para publicación de servicios web de mapas WMS, se realicen evaluaciones similares cuando se intente utilizar el formato GeoPackage.

213


6. BIBLIOGRAFIA

Aanensen, D., Huntley, D., Feil, E., al-Own, F., Spratt, B. (2018). EpiCollect.net. Accedido el 16 de Febrero de 2018 disponible en: http://www.epicollect.net/instructions/aboutus.html

Alegsa. (2010). Definición de Visual FoxPro. Accedido el 20 de Febrero de 2018 disponible en: http://www.alegsa.com.ar/Dic/visual_foxpro.php

Alves, T., Silva, P., Sales Dias, M. (2014). Applying ISO/IEC 25010 Standard to priories and Solve quality issues of automatic ELT processes. Applying ISO/IEC 25010 Standard to priories and Solve quality issues of automatic ELT processes. IEEE International Conference on Software Maintenance and Evolution.

Arozarena Villar, A. (2009). Introducción: Cartografía Digital de Imágenes. Instituto Geográfico Nacional. Madrid.

Apache Software Foundation. (2006). Apache JMeter™. Accedido el 19 de Febrero de 2018 disponible en: http://jmeter.apache.org/

Apache Software Foundation (2018) Apache Tomcat. Accedido el 16 de febrero de 2018 disponible en: http://tomcat.apache.org).

Badard, T., Kadillak, M., Percivall, G., Ramage, S., Reed, C., Sanderson, M. Singh, R. (2012). Geospatial Business Intelligence (GeoBI) [Inteligencia de Negocios Geoespacial (GEOBI)]. OGC White Paper, 10.

Bartling, M., Sotelo, S., Eitzinger, A., Atzmanstorfer, K. (2016). Press the Button: Online/Offline Mobile Applications in an Agricultural Context. 214


Bharucha, K. (1989). DBASE IV: A Comprehensive User's Manual for Nonprogrammers, Número 3224 (1st ed., p. 12). USA: Windcrest.

Bosque Sendra, J. (1998). Sistemas de Información Geográfica. “Edición corregida. RIALP., Shapefile Technical Description. Madrid ESRI.

Butterfield, A., Kerr, A., Ngondi, G. (2016). A dictionary of computer science (7th ed., p. 77). OXFORD University Press. Gran Bretaña.

Campbell, J. T. (2015). Appendix A: Exploring other browsers. In Discovering the Internet: Complete (5th ed.).

Campbell, J. T. (2015). Discovering the Internet: Complete (1st ed., p. 43). USA: Cengage Learning.

Carmona, R. O. (2017). Capítulo 3. Sistema Operativo, búsqueda de información: Internet/intranet y correo electrónico. (1st ed.). IC EDITORIAL. España.

Castro, L.

Morales, A. (2009). Sistema de procesos técnicos para el

Laboratorio de Metrología - variables Electro médicas. Universidad Tecnológica de Pereira. Pereira, Colombia. 

CartoSIG. (2016). Importar y exportar cartografía con GeoPackage y OGR: PostGIS y Shapefilelife. Importar y exportar cartografía con GeoPackage y OGR: PostGIS y Shapefilelife. Accedido el 16 de Marzo de 2018 disponible en: http://cartosig.Webs.upv.es/2015/02/10/importar-y-exportar-cartografiacon-GeoPackage-y-ogr-PostGIS-y-Shapefile-file/

215


Chaowei, Y. (2017). Introduction to GIS Programming and Fundamentals with Python and ArcGIS. Edition 1- Section 13.4.1.

Colombia, (2012). Ley 1523 de 2012. Norma. Bogotá, Colombia: Diario Oficial.

Cuellar, M. (2015). La Usabilidad. Accedido el 10 de marzo de 2018 disponible en: https://prezi.com/pahug48f8vii/loging/

Date, C. J. (2001). Capítulo 1: Panorama general de la administración de base de datos. Introducción a los sistemas de bases de datos (7th ed., p. 14). Wilmington (Delaware). Addison-Wesley Iberoamericana.

Del Rio, J. (2010). Modelos bidimensionales entidad relación. Introducción al tratamiento de datos espaciales en hidrología: Teoría (1st ed., p. 16). Bubok. Madrid, España.

EJIE S.A., Consultoría de Áreas de Conocimiento. (2009). Apache JMeter. Manual de usuario. Apache JMeter. Manual de usuario. Sociedad Informatica del Gobierno Vazco, EJIE S.A. Pais Vazco, España.

Ellis, F., Escobar, F., Hunter, G., Zerger, A. (2001). Introduction to GIS vector based GIS. Accedido el 01 de marzo de 2018 disponible en: https://geogra.uah.es/patxi/gisweb/GISModule/GIST_Vector.htm

EMC Corporation. (2018). Virtualización. Accedido el 10 de abril de 2018 disponible en: https://www.vmware.com/co/solutions/virtualization.html

Environmental Systems Research Institute ESRI (1998). ESRI Shapefile Technical Description. ESRI White paper. USA 216


Environmental Systems Research Institute ESRI. (2018). Arcgis For Desktop: ¿Que es una Cobertura? .Accedido el 12 de Abril de 2018 disponible

en:

http://desktop.arcgis.com/es/arcmap/10.3/manage-

data/coverages/what-is-a-coverage.htm 

Environmental Systems Research Institute ESRI. (2018). Introducción a ArcGIS.

Accedido

el

24

de

Abril

de

2018

disponible

en:http://resources.arcgis.com/es/help/gettingstarted/articles/026n00000014 000000.htm) 

Environmental Systems Research Institute ESRI. (2018). Un recorrido rápido por ArcMap. Accedido el 04 de Abril de 2018 disponible en: https://desktop.arcgis.com/es/arcmap/10.4/map/main/a-quick-tour-ofarcmap.htm

Environmental Systems Research Institute ESRI. (2018). Vocabulario de administración de la geodatabase esencial. Accedido el 01 de Abril de 2018 disponible en: http://desktop.arcgis.com/es/arcmap/10.3/manage-data/gdbsin-db2/geodatabase-admin-vocabulary.htm

Environmental Systems Research Institute ESRI. (2018). Explorar modelos digitales de elevación. Accedido el 09 de Abril de 2018 disponible en: http://desktop.arcgis.com/es/arcmap/10.3/tools/spatial-analysttoolbox/exploring-digital-elevation-models.htm

Environmental Systems Research Institute ESRI. (2018). Shapefile file extensions.

Accedido

el

08

de

Abril

de

2018

disponible

en:

http://desktop.arcgis.com/es/arcmap/10.3/managedata/Shapefiles/Shapefile-file-exensions.htm

217


Environmental Systems Research Institute ESRI. (2018). ¿Qué es KML? Accedido

el

19

de

abril

de

2018

disponible

en:

http://desktop.arcgis.com/es/arcmap/10.3/manage-data/kml/what-is-kml.htm 

Environmental Systems Research Institute ESRI. (2018). Términos esenciales de imágenes y ráster de ESRI. Accedido el 14 de Marzo de 2018 disponible

en:

https://pro.arcgis.com/es/pro-

app/help/data/imagery/essential-imagery-and-raster-terms.htm 

Environmental Systems Research Institute ESRI. (2018). Qué es un shapefile.

Accedido

el

20

de

Marzo

de

2018

disponible

en:

http://desktop.arcgis.com/es/arcmap/10.3/manage-data/shapefiles/what-isa-shapefile.htm

Environmental Systems Research Institute ESRI. (2018). Introducción a SIG.

Accedido

el

30

de

Marzo

de

2018

disponible

en:

http://resources.arcgis.com/es/help/gettingstarted/articles/026n0000000t000 000.htm 

Environmental Systems Research Institute ESRI. (2018). WCS servicios. Accedido

el

30

de

Marzo

de

2018

disponible

en:http://enterprise.arcgis.com/es/server/latest/publish-services/linux/wcsservices.htm 

Enrinle, B. (2017). Performance Testing with JMeter 3. (3st ed., p. 13). Birmingham UK: Packt Publishing.

218


Ferré, X. (2003). Incrementos de usabilidad al proceso de desarrollo software. VIII Jornadas de Ingeniería del Software y Bases de Datos GPLSI, (Sección Ingeniería del Software), 293-302. DOI: 2003 JISBD.

Fowler, A. (2015). NoSQL for dummies. (1st ed., p. 42). John Wiley & Sons, Inc. USA.

Flanagan, D. (2008). JavaScript: The Definitive Guide. (5st ed., p. 1). O’ REILLY.

Florian, B. E., Solarte, O., Reyes, J. M. (2010). Propuesta para incorporar evaluación y pruebas de usabilidad dentro de un proceso de desarrollo de software. Revista eia, 13 (ISSN 1794-1237), 123-141.

Free Software Foundation FSF. (2018). ¿Qué es GNU? Accedido el 28 de febrero de 2018 disponible en: https://www.gnu.org/home.es.html

Fundación para el Código Abierto Geoespacial OSGeo. (2018). GeoTools Características Principales. Accedido el 25 de febrero de 2018 disponible en: https://live.osgeo.org/es/overview/geotools_overview.html

García, F. (2006). Datos vectoriales, datos tabulares, Datos Ráster y matriciales. LatinGEO, UPM. Madrid.

Garg, R., Verma, G. (2017). Operating system: Overview. In Operating systems: An introduction (1st ed., p. 15). Mercury Learning and Information. USA.

GeoServer. (2017). About GeoServer. Accedido el 22 de febrero de 2018 disponible en: http://geoserver.org/about/ 219


GeoServer. (2017). ImageMosaic - GeoServer 2.15.x User Manual. Accedido

el

22

de

marzo

de

2018

disponible

en:

https://docs.geoserver.org/latest/en/user/data/raster/imagemosaic/ 

GIS and Beers. (2016). Cálculo de centroides en ArcMap - Gis&Beers [Web log

post].

Accedido

el

27

de

marzo

de

2018

disponible

en:

http://www.gisandbeers.com/calculo-de-centroides-en-arcmap-arcgis/ 

Google LLC. (2018). Google Chrome. Accedido el 27 de febrero de 2018 disponible en: https://www.google.com/chrome/

Guillén Rodríguez, J., Hernández Hernández, M. (2013). Glosario General. In Informática industrial. (1st ed., p. Glosario). Editorial Digital Tecnológico de Monterrey. Monterrey, México.

Guttman, A. Stonebraker, M. (1983). R-Trees: A Dynamic Index Structure for Spatial Searching. Ft. Belvoir: Defense Technical Information Center.

Harzer, C., Harzer, B. (2016). GIS-Report Software Date Firmen (ISBN: 978-3-9811899-7-1). Karlsruhe: Harzer.

Herring T. A. (1996). “The Global Positioning System”. Scientific American, pág. 32-38.

Heshusius Rodríguez, K. (2009). Desafíos de una industria en formación. Mayol Ediciones.

Humphrey, W. S. (2005). PSP: A self-improvement process for software engineers (1st ed.).

220


Hurtado, J. A., Collazos, C. A., Pardo, C. (2009). Agile - Software Process Improvement with Agile Spi-Process. DYNA, 77(164), 256. ISSN: 00127353

IBM. (2000). A Brief Linux Glossary for Windows Users. Accedido el 11 de abril

de

2018

disponible

en:

https://tech-

insider.org/linux/research/acrobat/010222-b.pdf 

IBM. (2018). Conceptos del Modelo de información común (CIM). Accedido el

11

de

Abril

de

2018

disponible

en:

https://www.ibm.com/support/knowledgecenter/es/STJKN5_12.0.3/xiv_apici mconcepts.html 

International Conference on Software Technologies. (2016). Conferencia Internacional en Tecnologías de Software. ICSOFT 2016. Accedido el 16 de abril de 2018 disponible en: http://www.icsoft.org/?y=2016

International Organization for Standardization. Quality Management and quality assurance Vocabulary ISO 8402 (1994). Suiza.

Instituto Español de Marketing Digital IIEMD. (2018). ¿Qué es Google Earth?

Accedido

el

30

de

Abril

de

2018

disponible

en:

https://iiemd.com/universidad/google-earth/que-es-concepto-google-earthpro-en-linea 

Instituto Geográfico Agustin Codazzi. (2012). Resolución 364 del 2012. Resolución 364 del 2012. Diario Oficial. Bogotá, Colombia.

Instituto de Ingenieros Eléctricos y Electrónicos IEEE. (1998). IEEE Standard 610.12-1990 Glossary of software Engineering Terminology. USA. 221


Instituto Geográfico Militar, Secretaria Nacional de Planificación y Desarrollo. (s.f.). Manual de Usuario GeoServer. Accedido el 10 de abril de 2018 disponible en: http://www.geoportaligm.gob.ec/portal/?wpfb_dl=25

ITL Education Solutions. (2012). Computer Memory and Storage. In Introduction to information technology. (2nd ed., p. 60). Pearson Education. India.

Java. (2018). ¿Qué es la tecnología Java y para qué la necesito? Accedido el

12

de

abril

de

2018

disponible

en:

https://www.java.com/es/download/faq/whatis_java.xml 

Jayaraman, S., Esakkirajan, S., & Veerakumar, T. (2011). Digital image processing (p. 40). Tata Education. New Delhi.

Khosrowpour, M., & Information Resources Management Association. (2016).

Geospatial

research:

concepts,

methodologies,

tools,

and

applications. 

Lavigne, D. (2010). The Definitive guide to PC-BSD. 1nd ed. APRESS, p.5.

Limaye, M. (2009). Software Testing: Principles. 1st ed. p.26. McGraw-Hill

Luna, F., Peña Millahual, C., Iacono, M. (2017). Programación Web Full Stack 23 (23rd ed., p. 22). RedUsers. Argentina.

Madruñero Padilla, E. R. (2011). Sistema de Comercialización de Agua Potable y Alcantarillado para el Municipio de Montúfar. Universidad Técnica del Norte. Carchi, Ecuador.

222


MappingGIS. (2018). ¿Qué podemos hacer con GRASS GIS 7? Accedido el 15 de abril de 2018 disponible en: https://mappinggis.com/2016/05/puedograss-gis-7/

Marcos, S. V., Pérez Diaz, Y., Torres Pérez, L., Delgado Dapena, M., Yánez Márquez, C. (2016). Pruebas de rendimiento a componentes de software utilizando programación orientada a aspectos. SCIELO, 37, 4-5. Retrieved from ISSN 1815-5936.

Marquez, A. (2015). Introducing PostGIS and setting it up. In PostGIS essentials: Learn how to build powerful spatial database solutions with PostGIS quickly and efficiently (1st ed., p. 2).

Matellanes, Quesada, Muñoz (2018). Herramientas de Geoprocesamiento. Geo Fascículo 9, página 1.

Massachussets Institute of Technology. (2018). Accedido el 28 de abril de 2018 disponible en: http://www.mit.edu/

Microsoft (2018). Microsoft Terminology Collection. Accedido el 01 de abril de 2018 disponible en: https://www.microsoft.com/en-us/language

Morales, A. (2017). Los formatos GIS ráster más populares - MappingGIS. Accedido

el

21

de

febrero

de

2018

disponible

en:

https://mappinggis.com/2015/12/los-formatos-gis-raster-mas-populares/ 

Networking and Emerging Optimization - NEO. (2018). El protocolo UDP. Accedido

el

23

de

febrero

de

2018

disponible

en:

http://neo.lcc.uma.es/evirtual/cdd/tutorial/transporte/udp.html

223


Reyes Vera, J. M., Berdugo Torres, M. I., Machuca Villegas, L. (2016). Evaluación de usabilidad de un sistema de administración de cursos basado en la plataforma Lingweb. Ingeniare. Revista chilena de ingeniería, 24(3), 435-444. doi:10.4067/s0718-33052016000300008

Ruiz, A. Kornus, W. (2003). Experiencias y Aplicaciones del Lidar.

Serna, S. (2011). Especificación formal de requisitos temporales no funcionales. Universidad Nacional de Colombia. Bogotá

Singh R.

Bermudez,

Technologies

in

L.

Earth

E. (2013). Emerging Geospatial Sharing and

Space

Science

Informatics.

American

Geophysical Union, Fall Meeting. 

Simmonds, D. Reynolds, L. (1989). Computer Presentation of Data in Science. 1st ed. Kluwer Academic Publishers, p.133.

Sommerville, I. (2011). Capítulo 4: Ingeniería de requerimientos. In Ingenieria de software (9th ed., p. 115). Addison-Wesley. México.

Soto Duran, D., Marín Morales, M., Vargas Agudelo, F. (2014). Caracterización

de

Formatos

de

Almacenamiento,

Transporte

y

Visualización de Datos Geográficos. Revista Lampsakos, 12(2145-4086), 27. 

Stevens, W. R., Fall, K. R. (2012). Chapter 12: TCP- The transmission control protocol (Preliminaries). In TCP/IP illustrated: Vol. 1 (1st ed., p. 591). Addison-Wesley. New Jersey.

224


Ocampo, A. Correa, L. (2011). Impacto de las pruebas no funcionales en la medición de la calidad del producto software desarrollado. Universidad Tecnológica de Pereira. Pereira, Colombia.

Open Geospatial Consortium. (2006). OGC Web Map Service Standard Implementation Specification.

Open Geospatial Consortium (OGC). (2006). Web Map Service WMS. Accedido

el

25

de

febrero

de

2018

disponible

en:

https://www.opengeospatial.org/standards/wms 

Open Geospatial Consortium. (2007). Styled Layer Descriptor profile of the Web Map Service Implementation Specification.

Open Geospatial Consortium. (2014). OGC Web Feature Service Standard. Disponible en: http://docs.opengeospatial.org/is/09-025r2/09-025r2.html

Open Geospatial Consortium. (2015). Accedido el 27 de febrero de 2018 disponible en: http://www.opengeospatial.org/search/node/GeoPackage

Open Geospatial Consortium. (2015). Accedido el 14 de febrero de 2018 disponible en: http://www.opengeospatial.org/search/node/GeoPackage

Open Geospatial Consortium. (2016). OGC Web Coverage Service Interface Standard.

Accedido

el

05

de

febrero

de

2018

disponible

en:

http://docs.opengeospatial.org/is/13-057r1/13-057r1.html 

Open Geospatial Consortium. (2017). OGC Geometry Model Figure. Accedido

el

06

de

febrero

de

2018

disponible

en:

http://www.GeoPackage.org/spec/#core_geometry_model_figure. 225


Open Geospatial Consortium OGC. (2018). GeoPackage Encoding Standard.

Accedido

el

16

de

febrero

de

2018

disponible

en:

https://www.opengeospatial.org/standards/geopackage 

Open Geospatial Consortium OGC. (2018). Style Layer Descriptor (SLD). Accedido

el

17

de

febrero

de

2018

disponible

en:

https://live.osgeo.org/archive/10.5/es/standards/sld_overview.html 

Open Source Geospatial Foundation, GDAL/OGR contributors. (2018). GDAL/OGR Geospatial Data Abstraction Software Library. Accedido el 19 de febrero de 2018 disponible en: https://www.gdal.org

ORACLE. (2018). Oracle Solaris 11: Security, Speed, Simplicity. Accedido el

19

de

Marzo

de

2018

disponible

en:

http://www.oracle.com/us/products/servers-storage/solaris/solaris-11-3-ds2593242.pdf, 2018). 

Oliveros Magaña, J., Valencia Moreno, T. (2011). Formato de intercambio de información geográfica entre dispositivos embebidos, volumen 8numero 2.

OSGeo. (2018). OSGeo Live - SIG de escritorio. Accedido el 15 de marzo de

2018

disponible

en:

https://live.osgeo.org/es/overview/gvsig_overview.html 

OSGeo. (2018). OSGeo Live - OpenJUMP GIS. Accedido el 10 de marzo de 2018

disponible

en:

https://live.osgeo.org/archive/10.5/es/overview/openjump_overview.html 

OSGeo. (2018). MapServer. Accedido el 12 de marzo de 2018 disponible en: http://gislars.github.io/mapserver_docs/es/ 226


OSGeo. (2018). OSGeo Live - OpenLayers. Accedido el 04 de Marzo de 2018

disponible

en:

https://live.osgeo.org/es/overview/openlayers_overview.html 

OSGeo. (2018). Sobre La Fundación. Accedido el 08 de marzo de 2018 disponible en: http://www2.osgeo.org/content/foundation/about_ES.html

Ouhbi, S., Adri, A., Fernandez-Alemán, J., Toval, A., Benjelloum, H. (2015). Applying ISO/IEC 25010 on Mobile Personal Health Records.

Padilla Pérez, D. (2014). Propuesta de procedimiento para realizar pruebas de Portabilidad a productos de software. Centro Nacional de Calidad de Software (Calisoft). La Habana, Cuba.

Pastrana Vicente, I., Araiz García, C. and Martínez Conte, V. (2005). Manual imprescindible de Java 2 v5.0. 1st ed. Anaya Multimedia. Madrid.

Python Software Foundation – PSF. (2018). PSutil Documentation. Accedido

el

08

de

febrero

de

2018

disponible

en:

https://psutil.readthedocs.io/en/latest/# 

Pitney, B. (2018). Localización Inteligente. Accedido el 24 de febrero de 2018

disponible

en:

https://www.pitneybowes.com/latam/location-

intelligence.html 

Portal ISO 25.000. (2016). Portal ISO 25000. Recuperado el 11 de Septiembre de 2016. Disponible en: http://iso25000.com/index.php/normasiso-25000/iso-25010.

227


Pressman, R. S. (2015). ingeniería del software: un enfoque práctico (7th ed., p. 188). McGraw-Hill Education. New York.

Procolombia. Peláez, A. (2015). Empresa colombiana le apuesta al “Internet de las Cosas” para vender en el mundo. El Espectador p. 18. Bogotá

Proyecto FreeBSD (2018). FreeBSD - The Power to serve. Accedido el 24 de abril de 2018 disponible en: https://www.freebsd.org/es/about.html

Quero, C. E. (2003). Capítulo 12: Características Generales del UNIX. Sistemas

operativos

y

lenguajes

de

programación:

sistemas

de

telecomunicación e informáticos (1st ed., p. 93). Thomson-Paraninfo. Madrid. 

QGIS. (2016). Working with GeoPackage in QGIS. Recuperado el 15 de Octubre

de

2016.

Disponible

en:

https://www.qgis.ch/de/ressourcen/anwendertreffen/2016/working-withGeoPackages-in-qgi 

QGIS, (2018). El SIG Líder de Código Abierto para Escritorio. Accedido el 25

de

abril

de

2018

disponible

en:

https://www.qgis.org/es/site/about/index.html 

Quantum Gis. (2016). Manual de Usuario Quantum Gis. Accedido el 24 de abril de 2018 disponible en: http://www.qgis.org

Rashidan, M. H., Musliman, I. A. (2015). GeoPackage as Future Ubiquitous GIS

Data

Format:

A

Review.

Jurnal

Teknologi,

73(5),

48.

doi:10.11113/jt.v73.4319

228


Romero Lozano, L. (2014). Organización y control del montaje de instalaciones solares térmicas. 1st ed. Paraninfo, p.297. Madrid.

Red Hat. (2018). What Are APIS. Accedido el 24 de Marzo de 2018 disponible en:

https://www.redhat.com/en/topics/api/what-are-application-

programming-interfaces) 

Ruz, R. (2018). ¿Qué es un host? Dominios y SEO. Accedido el 24 de abril de

2018

disponible

en:

http://www.cheapdomainregistration.es/2013/08/que-es-un-host.html 

Schonig, H. J. (2018). PostgreSQL Overview. In Mastering PostgreSQL 10Expert Technics on PostgreSQL 10 development and administration (1st ed., pp. 5-12)

Sommerville, I. (2011). Glossary. In Software engineering (9th ed., p. 740). Pearson. Boston.

Software Engineering and Application (ICSOFT-EA), 9th International Conference of Software. (2014). Tou Fik Marir, Farid Mokhati and Hassina Rouchghen-Seridi, Do we Need Specific Quality Models for Multi-Agent Systems? Towards using the ISO/IEC 25010 Quality Model for MAS.

Symantec. (2018). Glosario - localizador uniforme de recursos. Accedido el 04

de

Abril

de

2018

disponible

en:

https://mx.norton.com/online-

threats/glossary/u/url-uniform-resource-locator.html 

Tamayo, M. (2015). Guía ISO 9126. Accedido el 16 de abril de 2018 disponible en: https://es.slideshare.net/fmrodriv/guia-iso-9126

229


Telecentro Regional en Tecnologías Geoespaciales. (2018). Modelos y Estructuras de Datos. Accedido el 23 de Abril de 2018 disponible en: http://geoservice.igac.gov.co/contenidos_telecentro/fundamentos_sig/curso s/sem_2/uni2/index.php?id=2

Tezer, O. S. (2014). SQLite vs MySQL vs PostgreSQL: A Comparison of Relational Database Management Systems. Accedido el 16 de Marzo de 2018 disponible en:https://www.digitalocean.com/community/tutorials/sqlitevs-mysql-vs-postgresql-a-comparison-of-relational-database-managementsystems

Ubidots. (2018). Accedido el 23 de marzo de 2018 disponible en: https://www.pubnub.com/docs/blocks-catalog/ubidots

Unión Internacional de Telecomunicaciones. (2012). Redes de la próxima generación – Marcos y modelos arquitecturales funcionales. Serie Y: Infraestructura Mundial de la Información, aspectos del Protocolo Internet y Redes de la próxima Generación.

Universidad

de

Valencia.

(2018).

Introducción

a

los

Sistemas

CAD/CAM/CAE. Accedido el 03 de marzo de 2018 disponible en: http://ocw.uv.es/ingenieria-y-arquitectura/expresion-grafica/eg_tema_2.pdf 

Universidad del Valle UNIVALLE. (2009). Manual de procedimientos Aseguramiento

de

calidad

del

software.

Web-

http://procesos.univalle.edu.co. 

Vaswani, V. (2010). Chapter 1: An Introduction to MySQL. In MySQL database usage & administration (1st ed., p. 5). McGraw-Hill. New York.

230


VMware. (2018). Resource Management Guide. Accedido el 01 de marzo de 2018 disponible en: https://www.vmware.com/co/products/esxi-andesx.html

Woodrow, N. (2015). QGIS2IMG – A QGIS Render Benchmarking Tool and Image Renderer. Accedido el 08 de marzo de 2018 disponible en: https://nathanw.net/2014/06/05/qgis2img/

Yang, C., Yu, M., Huang, Q., Li, Z., Sun, M., Liu, K., Jiang, Y. (2017). Introduction to GIS Programming and Fundamentals with Python and ArcGIS (1st ed.). CRC PRESS. New York.

Yevilao Cuevas, F. A. (2018). Control automatizado de temperatura, humedad, riego por nebulización para cultivo a escala de lechugas. Universidad Técnica Federico Santa María. Hualpén, Chile.

Yutzler, J. (2017). GeoPackage. In Image matters Locate. Innovate (pp. 5-7). doi:703.669.5510

231


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.