21 jun 2017

Herramientas Web: Buscando el Mejor Rendimiento

En nuestra publicación anterior mencionamos cómo ArcGIS Pro está diseñado sobre el concepto de nube GIS, y esto tiene mucho sentido: ArcGIS Pro obedece a las necesidades y funcionalidades de las nuevas tendencias GIS y lo cierto es que hoy día no puede pensarse en las complejidades del mundo geoespacial sin tomar en consideración la nube.




El trabajo solía ser un lugar específico, pero con la explosión de las redes y aplicaciones móviles ahora el trabajo está en todos lados y el trabajador necesita poder acceder a información y enviar información desde todos lados.
El concepto de Web GIS permite la posibilidad de mapear, analizar y administrar datos de una manera colaborativa, tanto a través de mi organización como con todo el público.
Veamos algunas sugerencias para mejorar el rendimiento a la hora de crear herramientas web.


1. Utilice las Capas de Datos de Proyecto

Cuando ejecute una herramienta antes de compartirla como herramienta web, ejecute la herramienta usando las capas como entrada en lugar de rutas de los datasets del disco. Una capa hace referencia a un dataset en disco y las capas almacenan en la caché las propiedades sobre el dataset. Esto es especialmente cierto para las capas de dataset de red y las capas ráster. Al utilizar una capa en lugar de la ruta al dataset, hay una ventaja de rendimiento, debido a que cuando se inicia el servicio, crea la capa desde el dataset, almacena en la caché las propiedades básicas del dataset y mantiene el dataset abierto. Cuando el servicio se ejecuta, las propiedades del dataset están disponibles inmediatamente y el dataset está abierto y disponible para actuar en él, con lo que se obtiene un rendimiento superior.


2. Usar Datos Locales de ArcGIS Server

Los datos de proyecto requeridos por la herramienta web deben ser locales para ArcGIS Server. Los datos que se comparten y a los que se accede mediante una ubicación de red compartida (UNC) son más lentos que si estuvieran disponibles en el mismo equipo. Los números de rendimiento varían mucho, pero por regla general la lectura y escritura de datos a través de una LAN lleva el doble de tiempo que en el disco local.


3. Escribir Datos Intermedios en la Memoria

Escriba los datos intermedios (temporales) en el espacio de trabajo in_memory. Escribir datos en la memoria es más rápido que escribirlos en el disco.


4. Preprocesar los Datos Utilizados por las Tareas

La mayoría de las herramientas web son flujos de trabajo especializados que proporcionan respuestas a consultas espaciales específicas presentadas por clientes web. Como estos flujos de trabajo suelen ser operaciones específicas o datos conocidos, casi siempre hay una oportunidad para preprocesar los datos y optimizar el funcionamiento. Por ejemplo, agregar un índice espacial o de atributo son procesos previos simples para optimizar las operaciones de selección espaciales o de atributo; también puede calcular previamente las distancias desde ubicaciones conocidas utilizando las herramientas Cercano o Generar tabla próxima.
Supongamos que su servicio le permite a los clientes seleccionar parcelas vacías que estén a una distancia del Río Limay definida por el usuario. Podría utilizar la herramienta Seleccionar capa por ubicación para realizar esta selección, pero sería mucho más rápido calcular previamente la distancia de cada parcela desde Río Limay (mediante la herramienta Cerca) y almacenar la distancia calculada como un atributo de las parcelas. Puede indexar este atributo utilizando la herramienta Agregar índice del atributo. Ahora, cuando el cliente emite una consulta, su tarea puede realizar una selección de atributos simple y rápida en el atributo de distancia en lugar de una consulta espacial mucho menos eficiente.


5. Agregar Índices de Atributo

Si la herramienta selecciona los datos usando consultas de atributos, cree un índice de atributos para cada atributo que se utilice en las consultas. Puede utilizar la herramienta Agregar índice del atributo. Solo debe crear el índice una vez y puede hacerlo fuera del modelo o la secuencia de comandos.


6. Agregar Índices Espaciales

Si el modelo o la secuencia de comandos realiza consultas espaciales en los shapefiles, cree un índice espacial para el shapefile mediante la herramienta Agregar índice espacial. Si está utilizando las clases de entidades de geodatabases, los índices espaciales se crean y se mantienen automáticamente por usted. En algunos casos, recalcular un índice espacial puede mejorar el rendimiento, como se describe Configurar índices espaciales.


7. Utilizar Sincrónico en lugar de Asíncrono

Puede configurar la herramienta web de modo que se ejecute de forma sincrónica o asíncrona. En el modo asíncrono, el servidor sufre cierta sobrecarga, lo que significa que las herramientas asíncronas rara vez se ejecutan en menos de un segundo. Ejecutar la misma tarea en modo sincrónico es aproximadamente una décima de segundo más rápido que ejecutarla en el modo asíncrono.


8. Evite las Transformaciones de Coordenadas Innecesarias

Si la herramienta web utiliza datasets que están en distintos sistemas de coordenadas, las herramientas pueden necesitar transformar las coordenadas a un único sistema de coordenadas común durante la ejecución. Según el tamaño de sus datasets, transformar coordenadas de un sistema de coordenadas a otro puede generar una sobrecarga innecesaria. Debe saber cuál es el sistema de coordenadas de los datasets y si las herramientas necesitan realizar transformaciones de coordenadas. Es posible que desee transformar todos los datasets que utiliza su herramienta en un único sistema de coordenadas.


9. Reducir el Tamaño de los Datos

Cualquier software que procesa datos funciona más rápido cuando el dataset es pequeño. A continuación, se muestran algunas maneras con las que puede reducir el tamaño de los datos geográficos:
     Quite los atributos innecesarios en sus datos de proyecto con la herramienta Eliminar campo.
     Las entidades de línea y poligonales tienen vértices que definen su forma. Cada vértice es una coordenada x,y. Es posible que las entidades tengan más vértices de los que se necesitan, lo que aumenta de manera innecesaria el tamaño del dataset.
o  Si los datos provienen de una fuente externa, es posible que contengan vértices duplicados o vértices que se encuentran tan cerca que no contribuyen a la definición de la entidad.
o  La cantidad de vértices no se ajusta a la escala de análisis. Por ejemplo, las entidades contienen detalles que son apropiados a grandes escalas, pero el análisis o la presentación es a una escala pequeña.
Las herramientas Simplificar línea, Simplificar polígono y Generalizar se pueden usar para eliminar los vértices superfluos de los datos para obtener el nivel de detalle deseado.


Los clientes desean y esperan que las herramientas se ejecuten con la mayor rapidez posible, y por ello sus herramientas web deben ser rápidas y eficientes. Debido a que ArcGIS Server puede alojar varios clientes a la vez, los servicios ineficientes podrían sobrecargar el servidor. Recuerde, mientras más eficientes sean sus servicios, más clientes podrán ser soportados usando los mismos recursos informáticos.



No hay comentarios:

Publicar un comentario