GoogleAdsService를 사용한 스트리밍 보고

다음 메서드 중 하나를 사용하여 Google Ads API 항목 및 보고 데이터를 가져올 수 있습니다.

두 가지 방법의 대략적인 차이점은 다음과 같습니다.

GoogleAdsService.SearchStream GoogleAdsService.Search
프로덕션 코드에 적합
서비스 GoogleAdsService GoogleAdsService
시나리오 객체 및 보고서 가져오는 중 객체 및 보고서 가져오는 중
응답 GoogleAdsRow 객체의 스트림 GoogleAdsRow 객체의 페이지
응답 필드 검색어에 지정된 항목만 검색어에 지정된 항목만
일일 한도 액세스 수준에 따른 일일 한도 액세스 수준에 따른 일일 한도

Search는 전체 보고서를 다운로드하기 위해 페이지로 나눈 여러 요청을 보낼 수 있지만 SearchStream는 단일 요청을 전송하고 보고서 크기와 관계없이 Google Ads API와 지속적인 연결을 시작합니다.

SearchStream의 경우 데이터 패킷이 즉시 다운로드되기 시작하며 전체 결과가 데이터 버퍼에 캐시됩니다. 전체 스트림이 완료될 때까지 기다릴 필요 없이 코드에서 버퍼링된 데이터 읽기를 시작할 수 있습니다.

앱에 따라 Search 응답의 각 개별 페이지를 요청하는 데 필요한 왕복 네트워크 시간을 제거하여 SearchStream는 특히 크기가 큰 보고서에서 페이징보다 향상된 성능을 제공할 수 있습니다.

예를 들어 100,000개 행으로 구성된 보고서를 살펴보겠습니다. 다음 표는 두 방법 간의 회계 차이를 설명합니다.

SearchStream 검색
페이지 크기 해당 없음 페이지당 행 10,000개
API 요청 수 요청 1개 요청 10개
API 응답 수 연속 스트림 1개 응답 10개

성능 요소

대부분의 사용 사례에서는 다음과 같은 이유로 Search보다 SearchStream를 사용하는 것이 좋습니다.

  • 단일 페이지 보고서 (10,000행 미만): 두 메서드 간에 큰 성능 차이가 없습니다.

  • 다중 페이지 보고서의 경우: 일반적으로 여러 왕복이 방지되고 디스크 캐시에서 읽기 또는 쓰기가 차지하는 요소가 적기 때문에 SearchStream가 더 빠릅니다.

비율 제한

두 방법 모두의 일일 한도는 개발자 토큰의 표준 한도 및 액세스 수준을 준수합니다. 단일 쿼리 또는 보고서는 페이징되거나 스트리밍되는 결과에 관계없이 하나의 작업으로 집계됩니다.