Patrones de consulta de la capa de entidades web

Los datos se consultan en capas de entidades web con consultas basadas en páginas o en teselas.

Consultas basadas en páginas

En ArcGIS Pro, la mayor parte de las consultas utilizadas durante el dibujo y la edición se realizan mediante una consulta basada en páginas conocida como paginación. Esta técnica solicita subconjuntos de datos, conocidos como páginas, en lugar de solicitar todos los datos en una sola consulta. Al utilizar estas páginas, se pueden enviar y devolver solicitudes más pequeñas en un tiempo razonable, lo que mejora la capacidad de respuesta de la aplicación y la experiencia del usuario.

El tamaño de las páginas depende de la propiedad maxRecordCount asociada al servicio de entidades. Se basa en el parámetro Número máximo de registros que devolvió el servidor al publicar un servicio de entidades. A continuación, este valor se utiliza con el parámetro resultRecordCount durante las solicitudes de consulta.

Para obtener más información, consulte Parámetros de servicio.

A medida que se rellenan las páginas, las respuestas a la consulta incluyen la propiedad exceededTransferLimit. Si la propiedad exceededTransferLimit es true en la respuesta, indica que hay más registros disponibles y se solicitarán páginas adicionales. Estas peticiones continúan hasta que es exceededTransferLimit false o si esta propiedad está ausente en la respuesta de la consulta.

Las páginas utilizan el valor resultOffset para determinar el registro inicial de cada página. A medida que se solicitan páginas adicionales, el valor resultOffset se incrementa y se utiliza para indicar el número de registros omitidos y el siguiente registro que debe iniciar la página (resultOffset + 1). Por ejemplo, si el tamaño de página se establece en 2000, la segunda solicitud de página tendrá un valor resultOffset de 2000 y la página incluirá los siguientes 2000 registros disponibles para llenar la página.

Para obtener más información, consulte Consulta (servicio/capa).

Nota:

Si no se utilizan los parámetros resultOffset y resultRecordCount, la propiedad exceededTransferLimit también puede incluirse en los resultados de la consulta. En este caso, la propiedad será true solo si el número de registros supera el valor maxRecordCount configurado por el administrador del servidor.

Consultas basadas en teselas

La consulta basada en teselas divide la extensión de un mapa en teselas que se utilizan para mostrar entidades dentro del mapa. Esto también incluye el almacenamiento en caché de las teselas en el servidor para que puedan ser devueltas en lugar de que el servidor tenga que volver a calcular la visualización del mapa. Para utilizar consultas basadas en teselas, una capa de servicio debe tener la propiedad supportsQueryWithCacheHint igual a true. Permite realizar una petición utilizando el parámetro cacheHint, que indica si el servicio debe almacenar en caché los resultados de la consulta.

La consulta se produce a través de un esquema de tesela que genera múltiples niveles de detalle que se asocian a varias escalas de mapa. El nivel de detalle inicial utilizado se basa en la escala del mapa cuando se cargan los datos. Las teselas con este nivel de detalle inicial se utilizarán a menos que haya demasiadas entidades dentro de una tesela. Si hay demasiadas entidades dentro de una tesela, esa tesela desciende al siguiente nivel y realiza una solicitud. En caso necesario, este descenso de niveles se producirá un total de tres veces a partir del nivel de detalle inicial. A medida que se devuelven las respuestas, las teselas se almacenan en caché. Aunque la consulta basada en mosaicos genera más consultas al servidor, las peticiones son ligeras y utilizan las teselas almacenadas en caché para seguir ofreciendo un rendimiento optimizado.

Nota:

Si la tesela de la cuadrícula tiene demasiadas entidades para devolverlas en una sola petición, aparecerá una notificación para ampliar a un área más pequeña.

Establecer un rango de escala visible en las capas puede minimizar la aparición de estas notificaciones.

Para más información, consulte Capa (Servicio de entidades).