Streaming de relatórios

Há três métodos para recuperar entidades e dados de relatórios com a API Google Ads.

Este guia se concentra principalmente nos dados de streaming do GoogleAdsService. Veja a seguir as distinções de alto nível para os três métodos de recuperação de dados:

GoogleAdsService.SearchStream GoogleAdsService.Search Solicitações GET
Adequado para código de produção Sim Sim Não (apenas para depuração)
Serviço GoogleAdsService GoogleAdsService Serviços específicos de recursos (por exemplo, CampaignService)
Cenário Buscando objetos e relatórios Buscando objetos e relatórios Buscando objetos
Resposta Stream de objetos GoogleAdsRow Páginas de objetos GoogleAdsRow Um objeto (por exemplo, Campaign)
Campos da resposta Apenas os especificados na consulta Apenas os especificados na consulta Todos os campos foram preenchidos
Limites diários Limites diários com base nos níveis de acesso Limites diários com base nos níveis de acesso 1.000 solicitações por dia

Embora a Search possa enviar várias solicitações paginadas para fazer o download do relatório inteiro, o SearchStream envia uma única solicitação e inicia uma conexão permanente com a API Google Ads, independentemente do tamanho do relatório.

Para SearchStream, o download dos pacotes de dados começa imediatamente com o resultado inteiro armazenado em cache em um buffer de dados. O código pode começar a ler os dados armazenados em buffer sem precisar esperar a conclusão de todo o stream.

Ao eliminar o tempo de rede de ida e volta necessário para solicitar cada página individual de uma resposta Search, dependendo do seu app, SearchStream pode oferecer melhor desempenho em relação à paginação, especialmente para relatórios maiores.

Exemplo

Por exemplo, considere um relatório com 100,000 linhas. A tabela a seguir detalha as diferenças contábeis entre os dois métodos.

Stream de pesquisa Pesquisar
Tamanho da página Não aplicável 10.000 linhas por página
Número de solicitações de API 1 solicitação 10 solicitações
Número de respostas da API 1 stream contínuo 10 respostas

Fatores de desempenho

Em geral, recomendamos SearchStream em vez de Search pelos motivos a seguir.

  • Para relatórios de página única (menos de 10 mil linhas): não há diferenças significativas de desempenho entre os dois métodos.

  • Para relatórios de várias páginas: o SearchStream costuma ser mais rápido, porque evita-se várias viagens de ida e volta e a leitura/gravação do cache de disco é um fator menos importante.

Limitações de taxa

Os limites diários dos dois métodos obedecem aos limites padrão e aos níveis de acesso do token de desenvolvedor. Uma única consulta ou relatório é contado como uma operação, independentemente do resultado ser paginado ou transmitido.