Crie painéis em tempo real

Concluído

Os dashboards do Power BI sempre apresentam os dados mais recentes de que o serviço do Power BI está ciente. Por esse motivo, os dashboards são ideais para dar suporte a cenários de monitoramento em tempo real.

Há quatro tipos especiais de conjuntos de dados do Power BI que dão suporte a dashboards em tempo real. Eles são:

  • Conjunto de dados de streaming
  • Conjunto de dados de push
  • Conjunto de dados híbrido
  • Conjunto de dados de streaming do PubNub

Não há requisitos de que dashboards em tempo real ou seus conjuntos de dados relacionados sejam armazenados em uma capacidade dedicada.

Dica

Lembre-se de que os dashboards podem ser atualizados com frequência de até 15 minutos quando seus blocos se conectam a um conjunto de dados regular que representa um modelo DirectQuery. Para saber mais, confira a Unidade 3.

Os dashboards oferecem uma funcionalidade interessante que os relatórios não oferecem. Você pode definir blocos de dashboard (que exibem um só valor numérico) para alertá-lo quando os valores de dados atingirem limites específicos. Na Adventure Works, a fábrica conta com muitos dispositivos IoT. Um dashboard do Power BI apresenta métricas de fabricação em tempo real e notifica a equipe de manutenção quando os dispositivos precisam de atenção.

Usar conjuntos de dados de streaming

Um conjunto de dados de streaming fornece especificamente dados em tempo real com latência de cerca de um segundo. As atualizações de bloco do dashboard em tempo real são suaves e fluidas.

O conjunto de dados de streaming armazena dados em um cache temporário por até 60 minutos. Como não há um modelo de dados, não é possível criar relatórios do Power BI que se conectam a um conjunto de dados de streaming. Em vez disso, para visualizar os dados de streaming, você adiciona blocos de streaming ao painel. Um bloco de streaming visualiza especificamente fontes de dados em tempo real de um conjunto de dados de streaming. Eles são fáceis de identificar em um dashboard porque são adornados por um ícone de raio.

Screenshot of a dashboard streaming tile. There’s a lightning strike icon at the top left of the tile.

Os conjuntos de dados de streaming têm um design simples porque representam apenas uma tabela. As colunas de tabela são de texto, número ou data. Você pode criar um conjunto de dados de streaming no serviço do Power BI ou programaticamente usando a API REST do Power BI.

Os desenvolvedores podem inserir linhas programaticamente no conjunto de dados enviando um documento JSON ao ponto de extremidade do conjunto de dados. A URL do ponto de extremidade inclui uma chave de autenticação.

Esta é uma metodologia para criar um dashboard em tempo real usando um conjunto de dados de streaming:

  1. Crie um conjunto de dados de streaming.

  2. Adicione um bloco de streaming a um dashboard.

  3. Insira linhas programaticamente no conjunto de dados de streaming.

No entanto, há algumas limitações importantes a serem consideradas:

  • A retenção de dados é de 60 minutos, portanto, não é possível monitorar o histórico além desse tempo.

  • A taxa máxima de ingestão é de 5 solicitações/segundo.

  • O tamanho do pacote de uma solicitação para adicionar novas linhas não pode exceder 15 KB.

  • Os relatórios do Power BI não podem se conectar a um conjunto de dados de streaming.

  • Como os dashboards não dão suporte à filtragem, você não pode filtrar blocos de streaming.

Usar conjuntos de dados de push

Um conjunto de dados de push fornece especificamente dados em tempo real com latência entre 3 e 5 segundos. Embora estruturalmente estejam intimamente relacionados a um conjunto de dados de importação do Power BI, os conjuntos de dados de push não podem ser criados usando Power BI Desktop. Um conjunto de dados de push pode incluir várias tabelas, relações e medidas. No entanto, ele não pode incluir alguns objetos de modelo, como hierarquias e funções de segurança.

Como o nome do tipo de conjunto de dados sugere, os dados são enviados por push para tabelas de conjunto de dados. Quando os dados são enviados por push, o Power BI atualiza imediatamente os blocos do dashboard relacionado.

Você pode criar um conjunto de dados de push no serviço do Power BI (ou como um conjunto de dados híbrido, conforme descrito posteriormente) ou programaticamente usando a API REST do Power BI. Os desenvolvedores devem primeiro adquirir um token de acesso do Microsoft Entra para trabalhar com as operações da API REST. Eles podem usar a API para efetuar push das linhas de dados para uma tabela específica. Também há operações de API que podem ser usadas para modificar o esquema do conjunto de dados, excluir todas as linhas de uma tabela e excluir o conjunto de dados.

Também é possível usar o ASA (Azure Stream Analytics) para criar um conjunto de dados de push e gerar linhas de dados para ele. Como um mecanismo complexo de processamento de eventos, o ASA pode efetuar push de grandes volumes de dados de streaming rápido, até mesmo de milhares de dispositivos IoT. Para obter mais informações, consulte Saída do Power BI do Azure Stream Analytics.

Diagram of the flow of event data to Azure Event Hubs, then to Azure Stream Analytics, then to Power BI, and then to a dashboard tile.

Dica

O ASA pode se integrar ao AML (Azure Machine Learning), permitindo a saída de previsões de machine learning. Por exemplo, uma saída de trabalho do ASA pode prever que um dispositivo IoT requer manutenção. Você pode configurar um bloco de dashboard do Power BI para alertá-lo quando uma manutenção for necessária. Para obter mais informações, consulte Integrar o Azure Stream Analytics com o Azure Machine Learning.

Esta é uma metodologia para criar um dashboard em tempo real usando um conjunto de dados de push:

  1. Crie um conjunto de dados de push.

  2. Crie um relatório do Power BI que se conecte ao conjunto de dados de push. Use qualquer tipo de visual, incluindo visuais personalizados, para visualizar os dados do conjunto de dados.

  3. Fixe os visuais do relatório a um dashboard.

  4. Opcionalmente, use a experiência de Q&A do painel de controle para adicionar outros blocos.

  5. Efetue push das linhas programaticamente para a tabela do conjunto de dados de push.

No entanto, há algumas limitações importantes a serem consideradas:

  • O conjunto de dados não pode conter mais de 75 tabelas, e as tabelas não podem conter mais de 75 colunas.

  • Uma tabela de conjunto de dados de push não pode armazenar mais de 5 milhões de linhas, a menos que a política de retenção basicFIFO esteja habilitada. Quando habilitada, uma tabela armazenará aproximadamente 200 mil linhas de dados e o Power BI substituirá linhas mais antigas por novas linhas.

  • Uma solicitação não pode efetuar push de mais de 10 mil linhas.

  • A taxa de ingestão é limitada a um milhão de linhas por hora, a menos que a tabela armazene mais de 250 mil linhas de dados. Nesse caso, a taxa de ingestão é limitada a 120 linhas por hora.

Usar conjuntos de dados híbridos

Um conjunto de dados híbrido é um conjunto de dados de streaming e push ao mesmo tempo. Ele oferece os benefícios de ambos os tipos de conjuntos de dados. Use um conjunto de dados híbrido para visualizar dados em tempo real nos blocos de streaming e blocos regulares, que você pode fixar dos relatórios do Power BI ou do Q&A. Além disso, os conjuntos de dados híbridos permitem que sua solução em tempo real monitore e analise atividades que aconteceram há mais de 60 minutos.

Ao criar um conjunto de dados de streaming no serviço do Power BI, você pode transformá-lo em um conjunto de dados híbrido habilitando a opção de Análise de dados históricos.

Screenshot of the Historic data analysis option enabled

Usar conjuntos de dados de streaming do PubNub

Um conjunto de dados de streaming do PubNub é um tipo especial de conjunto de dados de streaming. Ele exige que você tenha uma plataforma em tempo real estabelecida com o PubNub. O cliente Web do Power BI usa o SDK do PubNub para ler um fluxo de dados PubNub existente. Assim como acontece com os conjuntos de dados de streaming, não há um modelo de dados subjacente, portanto, não é possível usar visuais de relatório do Power BI.

Em vez disso, os blocos de streaming do dashboard se conectam a um conjunto de dados de streaming do PubNub. Esses blocos são otimizados para exibir rapidamente dados em tempo real. Como o Power BI se conecta diretamente ao fluxo de dados do PubNub, há pouca latência entre quando os dados são enviados por push e quando os blocos são atualizados.

Comparar conjuntos de dados de streaming e push

A tabela a seguir compara os recursos dos conjuntos de dados de streaming e push.

Recurso Conjunto de dados de streaming Conjunto de dados de push
Latency ~1 segundo 3 a 5 segundos
Retenção de dados 60 minutos 5 milhões de linhas por tabela ou 200 mil linhas quando a retenção basicFIFO está definida
Taxas máximas de ingestão 5 solicitações/segundo, 15 KB por solicitação 1 solicitação/segundo, 16 MB por solicitação (no máximo 10 mil linhas)
Limites de taxa de transferência de dados Nenhum 1 milhão de linhas/hora, mas 120 linhas/hora quando a tabela excede 250 mil linhas
Estrutura do conjunto de dados Tabela única Modelo de dados avançado que dá suporte a filtragem e agregação
Tipos de visual Somente blocos de streaming Visuais de relatório, incluindo visuais personalizados
Atualizações de animação Suave e fluido Um pouco fragmentado