Dentro del formato de almacenamiento de memoria caché compacta
ArcGIS Server 10.0 introdujo el formato de almacenamiento de memoria caché compacta, una nueva manera de agrupar teselas de memoria caché de mapa en archivos grandes, en lugar de almacenar las teselas como archivos individuales. Entre las ventajas de almacenar teselas en grupos se incluyen las siguientes:
- Es más fácil copiar memorias caché porque el número de archivos es reducido.
- El tamaño total de la memoria caché en el disco es reducido.
- Generalmente las teselas se crean más rápido porque la E/S del disco es reducida durante la creación de teselas.
- La escalabilidad mejora cuando se crean teselas con una implementación en varios equipos, debido al tráfico reducido en la red.
Cómo funciona una memoria caché compacta
La memoria caché compacta agrupa muchas teselas en un gran archivo denominado paquete. Un paquete contiene hasta 16.384 teselas. El resultado es una memoria caché con docenas o cientos de archivos, en vez de miles o millones. Si observa una memoria caché compacta en un disco, podrá ver los archivos de paquete con la extensión .bundle. También verá algunos de los archivos de índice correspondientes con la extensión .bundlx.
Es posible tener una caché pequeña con un solo paquete en cada nivel. Pero es más común que un límite de paquete cruce alguna porción de la geografía, y obtener así varios paquetes en un nivel (aunque es posible que los paquetes no contengan las 16.000 teselas en total si la geografía es pequeña). Las memorias caché grandes abarcan muchos paquetes.
Los límites de paquete están determinados por el origen del esquema de ordenamiento en teselas y no se pueden ajustar. A modo de referencia, en la escala de nivel de vecindad/calle de 1:4096, un paquete completo cubre aproximadamente un área de un condado de tamaño mediano al este de los Estados Unidos.
Crear teselas con paquetes
Durante la creación de teselas, a cada paquete se le asigna un proceso ArcSOC.exe (ejemplo de ejecución de servicio), que crea las teselas para el paquete. Nunca puede haber dos procesos ArcSOC.exe funcionando en el mismo paquete a la vez.
Si tiene una memoria caché pequeña, o si está almacenando en caché basado en límites de entidad pequeños, es posible que no vea la utilización de la totalidad de los procesos ArcSOC.exe disponibles. Esto se debe a que el número de procesos ArcSOC.exe excede el número de paquetes disponibles, por lo que algunos procesos ArcSOC.exe deben permanecer inactivos.
Si la subutilización de los procesos ArcSOC.exe causa demoras en la creación de teselas para una memoria caché grande, necesita utilizar entidades más grandes para dividir el trabajo de almacenamiento en caché.
Cómo se producen las actualizaciones en una memoria caché compacta
Cuando actualiza teselas en una memoria caché compacta, no se vuelve a crear el paquete completo. En cambio, se actualiza un área más precisa de 4096 x 4096 píxeles (sin antialiasing) o de 2048 x 2048 píxeles (con antialiasing). En la documentación de ArcGIS, a esta unidad de área se la suele llamar "supertesela".
Obtener teselas de un paquete
Los clientes de ArcGIS, incluidas las API Web, saben cómo leer los archivos de paquete que produce el formato de memoria caché compacta. En una situación Web, el cliente emite una llamada al servidor para el nivel, la fila y la columna específicos de la tesela. ArcGIS Server recibe la solicitud y devuelve la tesela apropiada del paquete.
Esri no documenta públicamente la arquitectura interna del paquete. Si ha codificado su propia lógica para extraer teselas de un directorio virtual, debe continuar utilizando el formato "expandido" que almacena cada tesela como un archivo individual y que era la única opción en las versiones 9.3.1 y anteriores de ArcGIS Server.