Manchmal ist es nicht möglich, alle erforderlichen Informationen in einem einzigen Bericht zu erfassen, z. B. wenn Dimensionen und Messwerte nicht kompatibel sind oder Daten auf unterschiedliche Weise aggregiert werden sollen.
In diesen Fällen müssen Sie mehrere Berichte erstellen.
Außerdem ist die Batchverarbeitung eine effektive Möglichkeit, die Leistung Ihrer App zu verbessern, da so die Anzahl der Anfragen reduziert wird.
Das Problem bei mehreren unabhängigen Anfragen
Wenn Sie mehrere API-Anfragen in kurzer Zeit erstellen, kann dies eine einfache Implementierung zur Folge haben. Es kann jedoch vorkommen, dass Sie an Kontingentbeschränkungen stoßen.
Eine bessere Lösung besteht darin, die parallelen Anfragen ganz zu vermeiden und stattdessen Batchanfragen zu erstellen.
Batchverarbeitung von Berichten
Bei einer benutzergesteuerten Anwendung besteht der erste Ansatz darin, so viele unabhängige Anfragen wie möglich in einer einzigen Batchanfrage zu kombinieren.
Bericht 1: Top-10-Länder für August
Bericht 2: Werte für dieselben zehn Länder im Juli, zum Vergleich
Bericht 3: Top-10-Channels im August
Bericht 4: Werte für dieselben zehn Kanäle im Juli, zum Vergleich
Im Beispiel oben sind die Berichte 1 und 3 unabhängig, können aber nicht zu einem einzigen Bericht kombiniert werden, da sie die Daten unterschiedlich aufschlüsseln. Sie können jedoch in Batches zusammengefasst werden.
Die Berichte 2 und 4 können erst ausgeführt werden, nachdem die Ergebnisse des ersten Batches eingegangen sind, da in der Anfrage ein entsprechender Filter eingerichtet werden muss. Diese können als zweiter Batch ausgeführt werden, sobald die Ergebnisse der ersten eintreffen.
Eine andere Option, bei der alle Anfragen zu einem einzigen Batch zusammengefasst werden können, besteht darin, einfach alle Werte für Juli (statt nur für die Top 10) und möglicherweise auch für August zurückzugeben. Je nach Größe des betreffenden AdSense-Kontos und verfügbarem Arbeitsspeicher für Ihre Anwendung kann dies eine sinnvolle Option sein.
So gehts
Die Batchverarbeitung wird in jeder Clientbibliothek unterschiedlich gehandhabt. Weitere Informationen finden Sie in der zugehörigen Dokumentation. Im Folgenden finden Sie einige Links zur entsprechenden Dokumentation in verschiedenen Clientbibliotheken: