Para recuperar entidades da API Google Ads e dados de relatórios, use um destes métodos:
Confira as principais diferenças entre os dois métodos:
| GoogleAdsService.SearchStream | GoogleAdsService.Search | |
|---|---|---|
| Adequado para código de produção | Sim | Sim |
| Serviço | GoogleAdsService |
GoogleAdsService |
| Cenário | Como buscar objetos e relatórios | Como buscar objetos e relatórios |
| Resposta | Fluxo de objetos GoogleAdsRow |
Páginas de objetos GoogleAdsRow |
| Campos da resposta | Somente os especificados na consulta | Somente os especificados na consulta |
| Limites diários | Limites diários com base nos níveis de acesso | Limites diários com base nos níveis de acesso |
SearchStream x Search
Enquanto Search pode enviar várias solicitações paginadas para baixar o relatório inteiro, SearchStream envia uma única solicitação e inicia uma conexão persistente com a API Google Ads, independente do tamanho do relatório.
Para SearchStream, os pacotes de dados começam a ser baixados imediatamente com todo o resultado armazenado em cache em um buffer de dados. Seu código pode começar a ler os dados armazenados em buffer
sem precisar esperar que todo o stream seja concluído.
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, o SearchStream pode oferecer um desempenho melhor do que a paginação, especialmente para relatórios maiores.
Exemplo
Este exemplo analisa um relatório que consiste em 100,000 linhas. A tabela a seguir mostra as diferenças de contabilidade entre os dois métodos.
| SearchStream | 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 transmissão contínua | 10 respostas |
Fatores de desempenho
Na maioria dos casos de uso, recomendamos SearchStream em vez de Search pelos seguintes motivos:
Para relatórios de página única (menos de 10.000 linhas): não há diferenças significativas de performance entre os dois métodos.
Para relatórios de várias páginas,
SearchStreamgeralmente é mais rápido, já que evita várias viagens de ida e volta, e a leitura ou gravação do cache de disco é menos relevante.
Limites de taxas
Os limites diários para os dois métodos obedecem aos limites padrão e aos níveis de acesso do seu token de desenvolvedor. Uma única consulta ou relatório é contado como uma operação, independente de o resultado ser paginado ou transmitido.