La generación y el almacenamiento de cachés de servicios de imágenes y mapas puede exigir muchos recursos del servidor. A continuación figuran las estrategias habituales que puede utilizar para hacer cachés más eficientes.
Estimar tamaño de caché
La determinación del tamaño de caché del esquema de ordenamiento en teselas permitirá asignar la cantidad adecuada de recursos a la generación de caché. Cuando mayor sea el tamaño de caché, más espacio en disco, memoria, CPU y tiempo se utilizará al generar el contenido de la caché.
El panel Uso compartido de ArcGIS Pro permite estimar el tamaño de una caché en función de la configuración de esta. Puede utilizar esta estimación para entender las variaciones de tamaño de caché que se producirán a raíz de la elección de formatos de imagen o niveles de escala diferentes.
Consulte Configurar una capa de teselas web para obtener más información.
Almacenamiento en caché de niveles detallados mediante un área de interés
De forma predeterminada, el contenido en caché se crea para toda la extensión del mapa. Si está creando teselas para una entidad geográfica grande y no rectangular, puede ahorrar tiempo y recursos mediante la definición interactiva de un área de interés que se debe guardar en la caché.
Las áreas de interés son las regiones y entidades que sus usuarios verán con más frecuencia. Por ejemplo, las grandes ciudades, los monumentos y las autopistas son zonas de interés que los usuarios suelen acercar con el zoom. Estas áreas pueden ser adyacentes o estar dispersas y separadas por áreas que es menos probable que los usuarios acerquen con el zoom, como desiertos u océanos.
El almacenamiento en caché por área de interés o clase de entidad le permite crear y mantener teselas solo en los lugares donde los necesita, evitando áreas vacías o sin interés. Al hacerlo, solicita que las herramientas del servidor solo creen teselas que cubran dichas áreas de interés. El resto de las áreas se pueden almacenar en caché según demanda, cuando lo soliciten los clientes. Esto permite ahorrar el tiempo y espacio en disco que se consumiría al crear teselas innecesarias en áreas que los usuarios no visitan.
Las áreas de interés pueden ser de una o varias partes y tener una forma regular o irregular.
Hay dos lugares en los que puede especificar la clase de entidad:
- Cuando publique un servicio o inicie por primera vez la caché, establezca el parámetro Área de interés para la caché en la pestaña Almacenamiento en caché > Configuración avanzada del Editor del servicio. En lista desplegable, elija Importar desde una clase de entidad. Esta área de interés solo aplica si ha elegido crear la caché automáticamente al publicar.
- Abra la herramienta Administrar teselas de caché de servidor de mapas y establezca el parámetro Área de interés. Esta configuración invalida cualquier área de interés que pueda haber establecido en el Editor del servicio.
Nota:
Si está ejecutando la herramienta Administrar teselas de caché de servidor de mapas en ArcGIS Pro, también puede hacer bosquejos en un área de interés de la pantalla. Esto es útil para ejecutar una vez la herramienta cuando está tratando de parchear teselas faltantes en un área conocida de la caché o asegurar la cobertura en un área dada. Sin embargo, para actualizaciones o trabajos de almacenamiento estructurados, se recomienda que proporcione una clase de entidad.
La imagen a continuación muestra una cuadrícula teórica de teselas que se crearían si la clase de entidad tuviera el estado de California. La clase de entidad le ayuda a evitar la creación de teselas innecesarias en el océano y en los estados vecinos. Estas teselas innecesarias se hubiesen incluido si se utilizara la extensión rectangular predeterminada.
Si desea crear o actualizar una caché basada en una clase de entidad de punto o polilínea, primero debe almacenar en búfer las entidades en una pequeña cantidad para obtener una clase de entidad de polígono. También se recomienda disolver y generalizar los búferes antes de utilizarlos como su área de interés.
A escala mundial y nacional, se crean relativamente pocas teselas, por eso no supone mucha diferencia si se almacena en caché por clase de entidad.
Evitar la proyección al vuelo
Se recomienda proyectar los datos de origen en el mismo sistema de coordenadas que el mapa y el esquema de ordenamiento en teselas para evitar la proyección sobre la marcha.
Si decide no cambiar la proyección de su base de datos de trabajo, se recomienda que prepare una réplica unidireccional de su base de datos de producción que solo existirá para crear la caché y satisfacer las consultas de los usuarios.
Optimizar el etiquetado
El etiquetado es el proceso de generar y colocar automáticamente texto descriptivo para las entidades en los mapas y las escenas. Una etiqueta es un fragmento de texto ubicado dinámicamente en el mapa que se deriva de uno o más atributos de entidad. Calcular las mejores ubicaciones para las etiquetas de mapa puede llevar mucho tiempo y ralentizar la creación de sus teselas.
De forma predeterminada, se utiliza un motor de etiquetas estándar para tomar decisiones sobre dónde colocar cada etiqueta. La duración de este proceso aumenta a medida que se generan más etiquetas.
Durante un trabajo de almacenamiento en caché, ArcGIS dibuja áreas grandes de una vez para ayudar a reducir etiquetas duplicadas. Estas áreas grandes (superteselas) se dividen posteriormente en teselas individuales más pequeñas. Una supertesela tiene 2048 x 2048 píxeles con antialiasing, o 4096 x 4096 píxeles sin él.
No debería ver ninguna etiqueta duplicada dentro de la supertesela, pero pueden darse duplicados en los límites de la supertesela. Esto se debe a que cuando se etiqueta una supertesela, el motor de ubicación de etiquetas no tiene en cuenta las etiquetas de las superteselas adyacentes. De hecho, su motor de etiquetado puede estar haciendo un esfuerzo por incluir tantas etiquetas como sea posible dentro de una supertesela, y por lo tanto colocando algunas etiquetas cerca del borde. Puede hacer lo mismo en la supertesela adyacente, causando duplicados cerca de los límites de la supertesela.
Capas de anotaciones
Las capas de anotación permiten evitar la duplicación de etiquetas en una caché. La anotación es una capa especial en la que cada etiqueta se trata como una entidad con atributos. Los atributos incluyen una ubicación asignada en el mapa para cada etiqueta. Puede editar una capa de anotaciones para eliminar etiquetas duplicadas.
La anotación es la forma más rápida de dibujar etiquetas cuando se almacenan en caché, ya que no requiere tomar decisiones sobre la ubicación de las etiquetas. Cada anotación tiene coordenadas predeterminadas que son un atributo de la etiqueta. Consulte Anotación para obtener más información.
Crear capas de anotaciones para cachés de mapa
Las capas de anotaciones pueden hacerse muy grandes; crear anotaciones para todas las distintas escalas del mapa puede parecer una tarea desalentadora. En el conjunto de herramientas Anotación, en la opción Herramientas de cartografía, hay dos herramientas diseñadas para ayudarle a crear anotaciones para cachés de mapa.
La primera es Esquema de ordenamiento en teselas del caché del servidor de mapas a polígonos. Esta herramienta lee un esquema de ordenamiento en teselas de caché de mapa y crea cuadrículas que representan límites de superteselas en cada escala del esquema de ordenamiento en teselas. Estas cuadrículas ayudan a dividir el trabajo de creación de anotaciones en partes manejables.
La siguiente herramienta es Etiquetas en teselas a anotación. La herramienta crea anotaciones para cada escala en la caché tomando como parámetros de entrada las cuadrículas de superteselas previamente creadas, un documento de mapa y un espacio de trabajo de salida. La anotación se crea para todas las capas del documento de mapa que tienen habilitado el etiquetado.
La anotación producida por esta herramienta le proporciona la misma ubicación de etiqueta que obtendría si se creara una caché. A continuación, puede examinar o consultar la capa para buscar etiquetas duplicadas y eliminarlas antes de crear la caché. Alternativamente, puede eliminar manualmente las etiquetas de la capa de anotaciones entre actualizaciones de la caché a medida que vaya detectando conflictos.
Antes de ejecutar las herramientas anteriores en un área grande, se recomienda practicar con un mapa sencillo utilizando una extensión pequeña. Crear cuadrículas de superteselas y dibujar anotaciones son tareas que requieren mucho tiempo, y querrá estar seguro de haber indicado los parámetros correctos cuando utilice las herramientas con un mapa grande. Su sesión de práctica también le ayudará a estimar cuánto tiempo pueden tomar las herramientas y cuántas anotaciones crearán.
Etiquetas de Maplex
Maplex ofrece más opciones, es más avanzado desde el punto de vista de cómputo y coloca más etiquetas que el motor de etiquetado estándar. Aunque Maplex proporciona buenos resultados, también consume una cantidad significativa de memoria y puede ralentizar el almacenamiento en caché de los mapas.
Precaución:
Antes de utilizar Maplex para crear una caché completa, se recomienda crear una caché de prueba y examinar el uso de memoria del sistema mientras se crean las teselas. Si en este proceso el uso de memoria se está acercando al límite de su equipo, plantéese desactivar Maplex. Si opta por no desactivar Maplex, puede experimentar inestabilidad del sistema y posibles caídas al crear teselas.
Para lograr el mejor equilibrio entre una buena ubicación de etiqueta y el rendimiento, se recomienda utilizar el motor de etiquetas Maplex para dibujar etiquetas en el documento de mapa, convertir esas etiquetas en anotación y utilizar las anotaciones en el servicio de mapas.
Mantener etiquetas en una caché independiente
Las entidades vectoriales y sus etiquetas asociadas generalmente se incluyen en la misma caché. Es raro que desee permitir a los usuarios desactivar las etiquetas; sin embargo, si es necesario, puede aislar las etiquetas en una caché independiente de las funciones.
Normalmente, las etiquetas no se deben incluir en memorias caché de imágenes. Al mantenerlas por separado, podrá usar las imágenes por sí solas o reutilizarlas en otras aplicaciones. Varias cachés de imágenes con distintos conjuntos de etiquetas integradas en las teselas ocuparán en un conjunto más espacio en disco que una caché de imágenes compuesta de varias cachés de superposición de etiquetas.
Optimizar la simbología, las fuentes y el antialiasing
En algunos casos, puede optar por agregar símbolos de texto o fuentes personalizados al contenido de su mapa. Consulte Símbolos de texto para obtener más información.
Para utilizar fuentes en una capa web, las fuentes deben residir en el equipo que participa en el sitio del servidor o, si la fuente no está presente en el servidor, debe poder incrustarse dentro de los recursos del SIG. Para confirmar si una fuente se puede integrar, consulte as propiedades de la fuente en Microsoft Windows.
Nota:
Las fuentes te tipo 1 no podrán integrarse para su uso en capas web. Las fuentes de tipo 1 pueden instalarse en el servidor o intercambiarse por fuentes TrueType u OpenType. La ausencia de fuentes en los equipos servidor puede provocar búsquedas innecesarias de sustitución de fuentes para determinar la simbología y ralentizar el rendimiento de la generación de cachés. Para garantizar que el proceso de generación de caché recoge las fuentes recién instaladas, reinicie todos los equipos que participan en el sitio servidor.
Antialiasing es el proceso de suavizar los bordes de líneas y etiquetas a fin de evitar un aspecto pixelado. El antialiasing de texto tiene poco impacto en el rendimiento; sin embargo, el antialiasing de entidades es un proceso mucho más exigente desde el punto de vista de cómputo que puede ralentizar el almacenamiento en la caché.
Aplicar cierto nivel de antialiasing de entidades puede mejorar el aspecto de los mapas vecotriales. Sin embargo, es importante tener en cuenta que cada aumento de la calidad del antialiasing puede prolongar significativamente el tiempo que se tarda en crear una caché. Los ajustes Más rápido o Rápido son adecuados para la mayoría de las cachés. Se recomienda evitar los ajustes de calidad más altos a menos que las cachés de prueba hayan demostrado que el nivel más alto de calidad es necesario.
Monitorizar los recursos del sistema durante el almacenamiento en caché
Para que la creación de teselas sea lo más rápida posible, la CPU debe trabajar casi al 100%, sin llegar a alcanzarlo, durante el proceso de creación de teselas. Puesto que cada mapa es distinto, lograr este nivel de uso de CPU puede requerir cierto trabajo de prueba y error con la configuración de la caché. Consulte Herramientas de almacenamiento en caché y recursos de servidor para el almacenamiento en caché para obtener más información.
La memoria del sistema es el otro factor que rige el rendimiento de generación de la caché. Los recursos de memoria de los equipos servidor que participan en el proceso de generación de caché deben estar al 60 %. El impacto de la generación de caché en el uso de memoria depende de la simbología, el etiquetado y el número de entidades y rásteres de los servicios de mapas o imágenes. Si el uso de memoria se aproxima al límite del equipo, se producirán bloqueos aleatorios y puede que el servidor deje de responder.
El ancho de banda de la red hacia los datos de origen y el directorio arcgiscache es otra métrica que debería monitorizar. El proceso de almacenamiento en caché realiza miles de peticiones para leer los datos de origen. Disponer de un ancho de banda de lectura suficiente para los datos de origen del documento de mapa que se está almacenando en caché garantizará una creación de caché más rápida.
Durante el proceso de creación de la caché, cada instancia de caché escribe paquetes en el directorio de caché definido para el servicio de mapas o imágenes. Mantener el directorio arcgiscache en un sistema de archivos que aloje directorios arcgisjobs o arcgisoutput puede causar una disminución de la velocidad por exceder el ancho de banda.
Para el caché del sitio del servidor SIG, puede designar un directorio en un servidor de archivos con alta disponibilidad que utilice una red de área de almacenamiento (SAN) o un almacenamiento montado en red (NAS) con alta disponibilidad. Puede configurarlo con la ayuda del personal informático para garantizar tiempos de lectura y escritura más rápidos.
Generación de la caché en sitios de varios equipos
Puede configurar su servidor independiente, servidor de alojamiento o servidor federado para que sea un sitio de varios equipos y utilice los recursos de todos los equipos participantes en el sitio del servidor para generar cachés más rápidamente.
Directorio de caché local
Cuando su sitio de ArcGIS Server contiene varios equipos y dichos equipos intentan escribir teselas en un directorio de caché compartido al mismo tiempo, la escalabilidad se ve reducida. Por este motivo, el servidor utiliza un directorio de caché local para escribir temporalmente teselas en cada equipo de ArcGIS Server.
De forma predeterminada, ArcGIS Server utiliza directorios de caché locales cuando una caché se encuentra en un recurso compartido de red o en un almacén de objetos en la nube. Cada instancia del servicio de almacenamiento en caché escribe un archivo de paquete (colección de 16,34 teselas) en el directorio de caché local. Al completarlo, el paquete se mueve al directorio de caché compartido en el sistema de archivos o el almacén de objetos de la nube. Escribir paquetes localmente y moverlos a un directorio de caché compartida es más escalable que tener todos los equipos escribiendo paquetes directamente en el directorio de caché compartida.
Utilizar una copia local de la geodatabase de archivos
El proceso de almacenamiento en la caché requiere leer el contenido de origen varias veces. Mantener los datos de origen de entrada en una ubicación de red puede provocar una reducción de la velocidad si varios equipos acceden a los datos de origen al mismo tiempo. Si dichas peticiones no tienen que salir de sus equipos, las baldosas se dibujarán con mayor rapidez. Por ello, colocar una copia de los datasets SIG de origen en sus servidores redundará en una mayor velocidad y estabilidad durante la creación de cachés.
Directorios de caché de servicios de escena y caché local
El directorio de caché local también se utiliza al crear contenido de teselas de escenas para servicios de escenas. La caché de escenas se crea en el directorio de caché local antes de desplazarla al data store de caché de teselas para el almacenamiento definitivo de teselas en caché. Estos archivos temporales pueden tener un tamaño de tres a cinco veces superior al tamaño final de la caché y se borrarán cuando esta termine de crearse.
Establecer la ubicación del directorio de caché local
El directorio de caché local predeterminado es la carpeta temporal de la cuenta de ArcGIS Server. Puede cambiar este directorio utilizando el Directorio del administrador de ArcGIS Server.
Se recomienda contar con al menos 0,5 GB de espacio disponible en esta ubicación para cada instancia en ejecución del servicio de geoprocesamiento CachingTools, multiplicado por el número de equipos de su sitio de ArcGIS Server. Se puede necesitar más espacio para las cachés JPEG o cachés de formato mezclado que utilizan una gran calidad de compresión o cachés PNG detalladas con gran profundidad de bit.
Como se ha mencionado en la sección anterior, si publica servicios de escena, el directorio de caché local debe tener suficiente espacio disponible para acomodar los archivos temporales que se general al crear cachés de servicios de escena.
- Cree un directorio en cada equipo en el sitio de ArcGIS Server utilizando una ruta idéntica. Asegúrese de que la cuenta de ArcGIS Server tiene acceso de escritura a estos directorios.
- Abra un navegador web y vaya al Directorio del administrador de ArcGIS Server. La dirección URL tiene el formato http://gisserver.domain.com:6080/arcgis/admin.
- Si es necesario, inicie sesión usando un nombre de usuario y contraseña que tenga acceso administrativo a ArcGIS Server.
- Haga clic en system > properties > update.
- En el cuadro de texto, agregue una propiedad localTempFolder apuntando a su carpeta. Por ejemplo: {"localTempFolder":"/data/temp"}
- Haga clic en el botón Actualizar .
- Utilice ArcGIS Server Manager o la ventana Catálogo para llegar hasta la carpeta de ArcGIS Server llamada Sistema y, a continuación, detenga y vuelva a iniciar los siguientes servicios:
- El servicio de geoprocesamiento CachingTools para mapas y servicios de imágenes
- El servicio de geoprocesamiento SceneCachingTools para servicios de escenas