Zgłaszanie strumieniowego przesyłania danych za pomocą GoogleAdsService

Aby pobrać elementy interfejsu Google Ads API i dane do raportowania, użyj jednej z tych metod:

Oto główne różnice między tymi metodami:

GoogleAdsService.SearchStream GoogleAdsService.Search
nadaje się do kodu produkcyjnego, Tak Tak
Usługa GoogleAdsService GoogleAdsService
Scenariusz Pobieranie obiektów i raportów Pobieranie obiektów i raportów
Odpowiedź strumień obiektów GoogleAdsRow Strony GoogleAdsRow obiektów
Pola odpowiedzi tylko te, które są określone w zapytaniu; tylko te, które są określone w zapytaniu;
Limity dzienne Limity dzienne na podstawie poziomów dostępu Limity dzienne na podstawie poziomów dostępu

Chociaż interfejs Search może wysyłać wiele żądań pogrupowanych na strony, aby pobrać cały raport, interfejs SearchStream wysyła jedno żądanie i inicjuje trwałe połączenie z interfejsem Google Ads API niezależnie od rozmiaru raportu.

W przypadku SearchStream pakiety danych zaczynają się pobierać natychmiast, a cały wynik jest buforowany w buforze danych. Twój kod może zacząć odczytywać buforowane dane bez konieczności oczekiwania na zakończenie całego strumienia.

Dzięki wyeliminowaniu czasu potrzebny na przesyłanie i odbieranie danych przez sieć w przypadku każdej strony odpowiedzi Search (w zależności od aplikacji) SearchStream może zapewnić lepszą wydajność niż pobieranie stron, zwłaszcza w przypadku większych raportów.

Przykład

W tym przykładzie analizujemy raport, który zawiera 100,000 wierszy. W tabeli poniżej opisano różnice w księgowaniu między tymi 2 metodami.

SearchStream Szukaj
Rozmiar strony Nie dotyczy 10 tysięcy wierszy na stronę
Liczba żądań do interfejsu API 1 żądanie 10 żądań
Liczba odpowiedzi interfejsu API 1 ciągły strumień 10 odpowiedzi

Czynniki wpływające na skuteczność

W większości przypadków zalecamy SearchStream zamiast Search z tych powodów:

  • W przypadku raportów jednostronnych (mniej niż 10 tys. wierszy): brak istotnych różnic w skuteczności między tymi dwoma metodami.

  • W przypadku raportów obejmujących wiele stron: SearchStream jest zwykle szybsze, ponieważ unikamy wielokrotnego odczytywania i zapisywania danych oraz odczytywanie i zapisywanie w pamięci podręcznej dysku nie ma większego znaczenia.

Ograniczenia liczby żądań

Limity dzienne w przypadku obu metod są zgodne ze standardowymi limitami i poziomami dostępu tokenu dewelopera. Pojedyncze zapytanie lub raport są liczone jako 1 operacja niezależnie od tego, czy wynik jest pobierany w postaci stron czy strumieniowo.