A veces no es posible obtener toda la información que necesitas de un solo informe, por ejemplo, cuando tienes dimensiones y métricas incompatibles, o cuando quieres agregar datos de diferentes maneras.
En esos casos, tendrá que ejecutar varios informes.
Además, el procesamiento por lotes es una forma eficaz de mejorar el rendimiento de tu app, ya que reduce la cantidad de solicitudes.
El problema de hacer múltiples solicitudes independientes
Si bien es una solución simple de implementar, realizar varias solicitudes a la API en poco tiempo puede hacer que te topas con limitaciones de cuota.
Una mejor solución es evitar las solicitudes paralelas por completo y, en su lugar, crear solicitudes por lotes.
Agrupación en lotes de informes
En el ejemplo de una aplicación controlada por el usuario, un primer enfoque sería combinar tantas solicitudes independientes como sea posible en una única solicitud por lotes.
Informe 1: Los 10 países principales de agosto
Informe 2: Valores de los mismos 10 países en julio para comparar
Informe 3: Los 10 canales principales de agosto
Informe 4: Valores de los mismos 10 canales en julio para compararlos
En el ejemplo anterior, los informes 1 y 3 son independientes, pero no se pueden combinar en un solo informe, ya que ofrecen diferentes desgloses de los datos. Sin embargo, se pueden agrupar en lotes.
Los informes 2 y 4 solo se pueden ejecutar después de obtener los resultados del primer lote, ya que necesitamos configurar un filtro apropiado en la solicitud. Estos se pueden ejecutar como un segundo lote, una vez que lleguen los resultados del primero.
Una opción diferente, que permitiría combinar todas las solicitudes en un solo lote, sería simplemente mostrar todos los valores de julio (en lugar de solo los 10 principales) y, posiblemente, los de agosto. Esta puede ser una opción razonable según el tamaño de la cuenta de AdSense en cuestión y la cantidad de memoria disponible para tu aplicación.
Cómo se hace
El procesamiento por lotes se maneja de manera diferente en cada biblioteca cliente, por lo que debes consultar su documentación para conocer los detalles. Aquí hay algunos vínculos a la documentación relevante de varias bibliotecas cliente: