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이 더 빠릅니다.

비율 제한

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