Relatórios síncronos

O que é um relatório síncrono?

Um relatório síncrono é um relatório breve que precisa ser gerado muito rapidamente. Assim que receber uma solicitação para gerar um relatório síncrono, a plataforma de relatórios do DCM iniciará a execução automaticamente. Esses relatórios são recomendados para as situações em que você precisar de uma pequena porção de dados rapidamente. Por exemplo, quando for exibir métricas em uma interface gráfica do usuário.

Qual a diferença entre a geração de relatórios síncrona e assíncrona?

Gerar um relatório de maneira assíncrona sempre levará pelo menos alguns minutos, mesmo que você solicite uma quantidade pequena de dados. Ao estabelecer um tempo limite menor para a geração do relatório, os relatórios síncronos retornam esses dados mais rapidamente. Use a geração de relatórios de maneira assíncrona quando o relatório não puder ser gerado dentro do período de tempo limite síncrono ou quando você não estiver em um ambiente em constante alteração, como uma interface do usuário.

Qual é o tempo limite do relatório síncrono?

Se o relatório for pequeno o suficiente para ser gerado em 10 segundos ou menos, o sistema retornará um arquivo de relatório completo após a primeira solicitação de geração. Caso contrário, a plataforma de relatórios do DCM executará o relatório por um período de até 50 segundos antes que o processo expire.

O que acontecerá se um relatório síncrono levar muito tempo para ser gerado?

Se a geração síncrona de um relatório não for concluída dentro do período de tempo limite, ela será interrompida, e o relatório será direcionado à nossa fila de geração assíncrona de relatórios. Seu relatório não falhará nem retornará um erro, mas, se for movido para a fila de geração assíncrona de relatórios, ele levará pelo menos alguns minutos para ser gerado.

Você não receberá uma indicação de que seu relatório excedeu o tempo limite para relatórios síncronos, somente informações sobre o tempo de geração do relatório. Ele será concluído de modo síncrono em até 50 segundos ou se tornará assíncrono e precisará de alguns minutos.

Que tipos de relatórios são compatíveis com a execução síncrona?

Todos os tipos de relatórios são compatíveis com a execução síncrona, exceto:

Todos os outros tipos de relatório são compatíveis com a execução síncrona, mas o tempo limite será atingido caso muitos dados ou uma combinação de métricas e dimensões que use muitos recursos forem usados.

Como faço para gerar um relatório síncrono?

Por padrão, todos os relatórios são gerados de maneira assíncrona. Ao solicitar a geração de um novo arquivo de relatório, você pode definir o parâmetro opcional synchronous como true para que ele seja síncrono. Consulte o código de exemplo em nossa documentação.

Devo solicitar todos os meus relatórios com execução síncrona?

Não. Solicite a execução síncrona somente quando você esperar que o relatório seja concluído dentro do tempo limite. Se o relatório começar com a execução síncrona e atingir o tempo limite, o relatório será movido para a fila assíncrona. O tempo total da execução do relatório será o necessário para gerá-lo de maneira assíncrona somado ao tempo limite síncrono. Dessa forma, se solicitar o relatório de maneira assíncrona, você evitará a demora adicional do tempo limite síncrono.

As métricas e as dimensões que eu solicitar afetarão o tempo de geração dos meus relatórios?

Sim. Determinadas métricas e dimensões levam mais tempo para serem compiladas do que outras, e algumas delas podem até fazer com que seus relatórios síncronos sempre atinjam o tempo limite. As dimensões geográficas raramente são rápidas o suficiente para serem incluídas em relatórios síncronos.

Como posso diminuir o tempo necessário para gerar meus relatórios e permitir a geração de relatórios síncronos?

Muitos fatores afetam a velocidade, como o tamanho das campanhas inclusas e o intervalo de tempo coberto pelo relatório. Geralmente, a melhor forma de enxugar seus relatórios é fazer alguns ajustes manuais. Comece com todos os dados que você quiser exibir rapidamente, depois reduza o relatório de maneira gradual até que ele seja concluído de modo síncrono.