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 |
SearchStream
– Search
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.