Streaming em tempo real no Power BIReal-time streaming in Power BI

O Power BI com streaming em tempo real permite transmitir dados e atualizar dashboards em tempo real.Power BI with real-time streaming lets you stream data and update dashboards in real time. Qualquer visual ou dashboard criado no Power BI pode exibir e atualizar dados e visuais em tempo real.Any visual or dashboard created in Power BI can display and update real-time data and visuals. Os dispositivos e as fontes de dados de streaming podem ser sensores de fábrica, fontes de mídia social, métricas de uso do serviço ou muitos outros coletores ou transmissores de dados sensíveis ao tempo.The devices and sources of streaming data can be factory sensors, social media sources, service usage metrics, or many other time-sensitive data collectors or transmitters.

Captura de tela do dashboard Sensores ambientais mostrando os resultados dos dados em tempo real.

Este artigo mostra como configurar um conjunto de dados de streaming em tempo real no Power BI.This article shows you how to set up real-time streaming dataset in Power BI. Primeiro, é importante entender os tipos de conjuntos de dados em tempo real que são projetados para exibição em blocos (e dashboards) e como esses conjuntos de dados se diferem.First, it's important to understand the types of real-time datasets that are designed to display in tiles (and dashboards), and how those datasets differ.

Tipos de conjuntos de dados em tempo realTypes of real-time datasets

Há três tipos de conjuntos de dados em tempo real, que são projetados para exibição em dashboards em tempo real:There are three types of real-time datasets, which are designed for display on real-time dashboards:

  • Conjunto de dados de pushPush dataset
  • Conjunto de dados de streamingStreaming dataset
  • Conjunto de dados de streaming do PubNubPubNub streaming dataset

Primeiro vamos entender como esses conjuntos de dados são diferentes uns dos outros (nesta seção) e, em seguida, discutiremos como enviar dados por push a cada um desses conjuntos de dados.First let's understand how these datasets differ from one another (this section), then we discuss how to push data into those each of these datasets.

Conjunto de dados de pushPush dataset

Com um conjunto de dados de push, os dados são enviados por push ao serviço do Power BI.With a push dataset, data is pushed into the Power BI service. Quando o conjunto de dados é criado, o serviço do Power BI cria automaticamente um novo banco de dados no serviço para armazenar os dados.When the dataset is created, the Power BI service automatically creates a new database in the service to store the data. Como há um banco de dados subjacente que continua a armazenar os dados conforme eles chegam, os relatórios podem ser criados com os dados.Since there is an underlying database that continues to store the data as it comes in, reports can be created with the data. Esses relatórios e seus visuais são exatamente como qualquer outro visual de relatório, o que significa que você pode usar todos os recursos de criação de relatórios do Power BI para criar visuais, incluindo visuais do Power BI, alertas de dados, blocos de dashboard fixados e muito mais.These reports and their visuals are just like any other report visuals, which means you can use all of Power BI's report building features to create visuals, including Power BI visuals, data alerts, pinned dashboard tiles, and more.

Após um relatório ser criado usando o conjunto de dados de push, qualquer um de seus visuais pode ser fixado a um dashboard.Once a report is created using the push dataset, any of its visuals can be pinned to a dashboard. Nesse dashboard, os visuais serão atualizados em tempo real, sempre que os dados forem atualizados.On that dashboard, visuals update in real-time whenever the data is updated. Dentro do serviço, o dashboard dispara uma atualização de bloco sempre que novos dados são recebidos.Within the service, the dashboard is triggering a tile refresh every time new data is received.

Há duas considerações a serem observadas a respeito de blocos fixados de um conjunto de dados de push:There are two considerations to note about pinned tiles from a push dataset:

  • A fixação de um relatório inteiro usando a opção Fixar esta Página em Tempo Real não resultará na atualização automática dos dados.Pinning an entire report using the pin live page option will not result in the data automatically being updated.
  • Quando um visual é fixado em um dashboard, você pode usar P e R para fazer perguntas sobre o conjunto de dados de push em idioma natural.Once a visual is pinned to a dashboard, you can use Q&A to ask questions of the push dataset in natural language. Depois de fazer uma consulta de P e R, você pode fixar o visual resultante de volta no dashboard e ele também será atualizado em tempo real.Once you make a Q&A query, you can pin the resulting visual back to the dashboard, and that dashboard will also update in real-time.

Conjunto de dados de streamingStreaming dataset

Com um conjunto de dados de streaming, os dados também são enviados para o serviço do Power BI com uma diferença importante: o Power BI só armazena os dados em um cache temporário, que expira rapidamente.With a streaming dataset, data is also pushed into the Power BI service, with an important difference: Power BI only stores the data into a temporary cache, which quickly expires. O cache temporário só é usado para exibir visuais que tenham algum conceito de histórico transitório, como um gráfico de linhas que tem uma janela de tempo de uma hora.The temporary cache is only used to display visuals, which have some transient sense of history, such as a line chart that has a time window of one hour.

Com um conjunto de dados de streaming, não há banco de dados subjacente, portanto você não pode criar visuais de relatório usando os dados que fluem do fluxo.With a streaming dataset, there is no underlying database, so you cannot build report visuals using the data that flows in from the stream. Assim, você não pode fazer uso de funcionalidades de relatório como filtragem, visuais do Power BI e outras funções de relatório.As such, you cannot make use of report functionality such as filtering, Power BI visuals, and other report functions.

A única maneira de visualizar um conjunto de dados de streaming é adicionar um bloco e usar o conjunto de dados de streaming como uma fonte de dados de streaming personalizados.The only way to visualize a streaming dataset is to add a tile and use the streaming dataset as a custom streaming data source. Os blocos de streaming personalizados com base em um conjunto de dados de streaming são otimizados para exibir rapidamente os dados em tempo real.The custom streaming tiles that are based on a streaming dataset are optimized for quickly displaying real-time data. Há pouca latência entre o momento em que os dados são enviados por push ao serviço do Power BI e quando o visual é atualizado, pois não há necessidade de que os dados sejam inseridos ou lidos em um banco de dados.There is little latency between when the data is pushed into the Power BI service and when the visual is updated, since there's no need for the data to be entered into or read from a database.

Na prática, os conjuntos de dados de streaming e os visuais de streaming que o acompanham são melhor utilizados em situações em que é crítico minimizar a latência entre quando os dados são enviados por push e quando eles são visualizados.In practice, streaming datasets and their accompanying streaming visuals are best used in situations when it is critical to minimize the latency between when data is pushed and when it is visualized. Além disso, é recomendável que os dados sejam enviados por push em um formato em que possam ser visualizados no estado em que se encontram, sem nenhuma agregação adicional.In addition, it's best practice to have the data pushed in a format that can be visualized as-is, without any additional aggregations. Exemplos de dados que estão prontos no estado em que se encontram incluem temperaturas e médias pré-calculadas.Examples of data that's ready as-is include temperatures, and pre-calculated averages.

Conjunto de dados de streaming do PubNubPubNub streaming dataset

Com um conjunto de dados de streaming do PubNub, o cliente Web do Power BI usa o SDK do PubNub para ler um fluxo de dados PubNub existente.With a PubNub streaming dataset, the Power BI web client uses the PubNub SDK to read an existing PubNub data stream. Nenhum dado é armazenado pelo serviço do Power BI.No data is stored by the Power BI service. Como essa chamada será feita diretamente do cliente Web, será necessário listar o tráfego para o PubNub como permitido, caso tenha permitido somente o tráfego de saída aprovado de sua rede.Because this call is made from the web client directly, you would have to list traffic to PubNub as allowed, if you only allowed approved outbound traffic from your network. Confira as instruções no artigo de suporte sobre como aprovar o tráfego de saída para o PubNub.Refer to the instructions in the support article about approving outbound traffic for PubNub.

Assim como acontece com o conjunto de dados de streaming, no conjunto de dados de streaming do PubNub não há banco de dados subjacente no Power BI; portanto, você não pode criar visuais de relatório com os dados que entram e não pode aproveitar as funcionalidades de relatório, como visuais do Power BI, filtragem e assim por diante.As with the streaming dataset, with the PubNub streaming dataset there is no underlying database in Power BI, so you cannot build report visuals against the data that flows in, and cannot take advantage of report functionality such as filtering, Power BI visuals, and so on. Sendo assim, o conjunto de dados de streaming do PubNub só pode ser visualizado adicionando um bloco ao dashboard e configurando um fluxo de dados do PubNub como a origem.As such, the PubNub streaming dataset can also only be visualized by adding a tile to the dashboard, and configuring a PubNub data stream as the source.

Os blocos com base em um conjunto de dados de streaming do PubNub são otimizados para exibir rapidamente os dados em tempo real.Tiles based on a PubNub streaming dataset are optimized for quickly displaying real-time data. Como o Power BI é conectado diretamente ao fluxo de dados do PubNub, há pouca latência entre o momento em que os dados são enviados por push ao serviço do Power BI e quando o visual é atualizado.Since Power BI is directly connected to the PubNub data stream, there is little latency between when the data is pushed into the Power BI service and when the visual is updated.

Matriz de conjunto de dados de streamingStreaming dataset matrix

A seguinte tabela (ou matriz, se desejar) descreve os três tipos de conjuntos de dados de streaming em tempo real e lista os recursos e limitações de cada uma delas.The following table (or matrix, if you like) describes the three types of datasets for real-time streaming, and lists capabilities and limitations of each.

Captura de tela de uma tabela mostrando a matriz do conjunto de dados de streaming.

Observação

Veja este artigo para obter informações sobre limites de Push em relação à quantidade de dados que pode ser enviada por push.See this article for information on Push limits on how much data can be pushed in.

Enviar dados por push para conjuntos de dadosPushing data to datasets

A seção anterior descreveu os três principais tipos de conjuntos de dados em tempo real que você pode usar no streaming em tempo real e as diferenças entre eles.The previous section described the three primary types of real-time datasets you can use in real-time streaming, and how they differ. Esta seção descreve como criar e enviar dados por push para esses conjuntos de dados.This section describes how to create and push data into those datasets.

Há três formas principais de enviar dados por push para um conjunto de dados:There are three primary ways you can push data into a dataset:

  • Usando as APIs REST do Power BIUsing the Power BI REST APIs
  • Usando a interface do usuário do conjunto de dados de streamingUsing the Streaming Dataset UI
  • Usando o Stream Analytics do AzureUsing Azure Stream Analytics

Vamos dar uma olhada em cada uma dessas abordagens.Let's take a look at each of those approaches in turn.

Usando APIs REST do Power BI para enviar dados por pushUsing Power BI REST APIs to push data

As APIs REST do Power BI podem ser usadas para criar e enviar dados para conjuntos de dados de push e para conjuntos de dados de streaming.Power BI REST APIs can be used to create and send data to push datasets and to streaming datasets. Ao criar um conjunto de dados usando APIs REST do Power BI, o sinalizador defaultMode especifica se o conjunto de dados é de push ou de streaming.When you create a dataset using Power BI REST APIs, the defaultMode flag specifies whether the dataset is push or streaming. Se o sinalizador defaultMode não for definido, o conjunto de dados será definido como de push por padrão.If no defaultMode flag is set, the dataset defaults to a push dataset.

Se o valor defaultMode for definido como pushStreaming, o conjunto de dados será de push e de streaming, oferecendo os benefícios de ambos os tipos de conjunto de dados.If the defaultMode value is set to pushStreaming, the dataset is both a push and streaming dataset, providing the benefits of both dataset types.

Observação

Ao usar conjuntos de dados com o sinalizador defaultMode definido como pushStreaming, se uma solicitação exceder a restrição de tamanho de 15 Kb para um conjunto de dados de streaming, mas for menor do que a restrição de tamanho de 16 MB de um conjunto de dados de push, a solicitação será bem-sucedida e os dados serão atualizados no conjunto de dados de push.When using datasets with the defaultMode flag set to pushStreaming, if a request exceeds the 15Kb size restriction for a streaming dataset, but is less than the 16MB size restriction of a push dataset, the request will succeed and the data will be updated in the push dataset. No entanto, os blocos de streaming sofrerão falha temporária.However, any streaming tiles will temporarily fail.

Depois de criar um conjunto de dados, use as APIs REST para efetuar push de dados usando a API PostRows.Once a dataset is created, use the REST APIs to push data using the PostRows API.

Todas as solicitações para as APIs REST são protegidas usando o OAuth do Azure AD.All requests to REST APIs are secured using Azure AD OAuth.

Usando a interface do usuário do conjunto de dados de streaming para enviar dados por pushUsing the Streaming Dataset UI to push data

No serviço do Power BI, é possível criar um conjunto de dados selecionando a abordagem de API conforme mostrado na imagem a seguir.In the Power BI service, you can create a dataset by selecting the API approach as shown in the following image.

Captura de tela das Novas opções de conjunto de dados de streaming mostrando a seleção de API.

Ao criar o novo conjunto de dados de streaming, você pode optar por habilitar a Análise de dados histórica conforme mostrado abaixo, o que terá um impacto significativo.When creating the new streaming dataset, you can select to enable Historic data analysis as shown below, which has a significant impact.

Captura de tela do Novo conjunto de dados de streaming mostrando a Análise de dados históricos habilitada.

Quando a Análise de dados históricos está desabilitada (por padrão, ela já está), você cria um conjunto de dados de streaming conforme descrito anteriormente neste artigo.When Historic data analysis is disabled, and it is by default, you create a streaming dataset as described earlier in this article. Quando a Análise de dados histórica é habilitada, o conjunto de dados criado torna-se um conjunto de dados de streaming e um conjunto de dados de push.When Historic data analysis is enabled, the dataset created becomes both a streaming dataset and a push dataset. Isso é equivalente a usar as APIs REST do Power BI para criar um conjunto de dados com o defaultMode definido como pushStreaming, conforme descrito anteriormente neste artigo.This is equivalent to using the Power BI REST APIs to create a dataset with its defaultMode set to pushStreaming, as described earlier in this article.

Observação

Para conjuntos de dados de streaming criados usando a interface do usuário do serviço do Power BI, como descrito no parágrafo anterior, a autenticação do Azure AD não é necessária.For streaming datasets created using the Power BI service UI, as described in the previous paragraph, Azure AD authentication is not required. Nesses conjuntos de dados, o proprietário do conjunto de dados recebe uma URL com uma rowkey, que autoriza o solicitante a enviar dados por push para o conjunto de dados sem usar um token de portador OAuth do Azure AD.In such datasets, the dataset owner receives a URL with a rowkey, which authorizes the requestor to push data into the dataset with out using an Azure AD OAuth bearer token. Observe, no entanto, que a abordagem do AAD (Azure AD) ainda funciona para efetuar push de dados para o conjunto de dados.Take note, however, that the Azure AD (AAD) approach still works to push data into the dataset.

Usando o Stream Analytics do Azure para enviar dados por pushUsing Azure Stream Analytics to push data

Você pode adicionar o Power BI como uma saída no ASA (Stream Analytics do Azure) e, em seguida, visualizar esses fluxos de dados no serviço do Power BI em tempo real.You can add Power BI as an output within Azure Stream Analytics (ASA), and then visualize those data streams in the Power BI service in real time. Esta seção descreve os detalhes técnicos de como esse processo ocorre.This section describes technical details about how that process occurs.

O Azure Stream Analytics usa as APIs REST do Power BI para criar o fluxo de dados de saída no Power BI com o defaultMode definido como pushStreaming, resultando em um conjunto de dados que pode aproveitar tanto o push quanto o streaming.Azure Stream Analytics uses the Power BI REST APIs to create its output data stream to Power BI, with defaultMode set to pushStreaming, resulting in a dataset that can take advantage of both push and streaming. Quando o conjunto de dados é criado, o Azure Stream Analytics define o sinalizador retentionPolicy como basicFIFO.When the dataset is created, Azure Stream Analytics sets the retentionPolicy flag to basicFIFO. Com essa configuração, o banco de dados que dá suporte ao seu conjunto de dados de push armazena 200 mil linhas, e é determinado quais linhas são removidas em um modo FIFO (primeiro a entrar, primeiro a sair).With that setting, the database supporting its push dataset stores 200,000 rows, and which rows are dropped in a first-in first-out (FIFO) fashion.

Cuidado

Se a consulta do Azure Stream Analytics resultar em saída muito rápida para o Power BI (por exemplo, uma ou duas vezes por segundo), o Azure Stream Analytics fará envio em lote dessas saídas em uma única solicitação.If your Azure Stream Analytics query results in very rapid output to Power BI (for example, once or twice per second), Azure Stream Analytics will begin batching those outputs into a single request. Isso pode fazer com que o tamanho da solicitação exceda o limite do bloco de streaming.This may cause the request size to exceed the streaming tile limit. Nesse caso, como mencionado nas seções anteriores, os blocos de streaming falharão ao renderizar.In that case, as mentioned in previous sections, streaming tiles will fail to render. Nesses casos, a prática recomendada é diminuir a taxa de saída de dados para o Power BI. Por exemplo, em vez de um valor máximo a cada segundo, defina a taxa de saída como um valor máximo durante 10 segundos.In such cases, the best practice is to slow the rate of data output to Power BI; for example, instead of a maximum value every second, set it to a maximum over 10 seconds.

Configure seu conjunto de dados de streaming em tempo real no Power BISet up your real-time streaming dataset in Power BI

Agora que abordamos os três principais tipos de conjuntos de dados para streaming em tempo real e as três maneiras principais que você pode usar para enviar dados por push a um conjunto de dados, vamos colocar seu conjunto de dados de streaming em tempo real para funcionar no Power BI.Now that we've covered the three primary types of datasets for real-time streaming, and the three primary ways you can push data into a dataset, let's get your real-time streaming dataset working in Power BI.

Para iniciar a transmissão em tempo real, você precisará escolher uma das duas maneiras em que o fluxo de dados pode ser consumido no Power BI:To get started with real-time streaming, you need to choose one of the two ways that streaming data can be consumed in Power BI:

  • blocos com visuais de fluxo de dadostiles with visuals from streaming data
  • conjuntos de dados criados a partir de fluxos de dados que persistem no Power BIdatasets created from streaming data that persist in Power BI

Com qualquer opção, você precisará configurar Fluxo de dados no Power BI.With either option, you'll need to set up Streaming data in Power BI. Para fazer isso, no painel (um painel existente ou um novo) selecione Adicionar um bloco e, em seguida, selecione Fluxo de dados personalizado.To do this, in your dashboard (either an existing dashboard, or a new one) select Add a tile and then select Custom streaming data.

Captura de tela do dashboard mostrando a seleção de Dados de streaming personalizados na seção Adicionar bloco.

Se você não tiver o fluxo de dados configurado ainda, não se preocupe – você pode selecionar Gerenciar dados para começar.If you don't have streaming data set up yet, don't worry - you can select manage data to get started.

Captura de tela do dashboard mostrando o link Gerenciar dados em Adicionar um bloco de dados de streaming personalizado.

Nessa página, você pode inserir o ponto de extremidade do seu conjunto de dados de streaming se já tiver um criado (na caixa de texto).On this page, you can input the endpoint of your streaming dataset if you already have one created (into the text box). Se você ainda não tiver um conjunto de dados de streaming, selecione o ícone de adição ( + ) no canto superior direito para ver as opções disponíveis para criar um conjunto de dados de streaming.If you don't have a streaming dataset yet, select the plus icon ( + ) in the upper right corner to see the available options to create a streaming dataset.

Captura de tela do dashboard mostrando como inserir o ponto de extremidade do seu conjunto de dados de streaming com um ponteiro para o ícone de adição.

Ao clicar no ícone + , você verá duas opções:When you click on the + icon, you see two options:

Captura de tela das Novas opções de conjunto de dados de streaming mostrando as opções API e PubNub.

A próxima seção descreve essas opções e fornece mais informações sobre como criar um bloco de streaming ou como criar um conjunto de dados a partir da fonte de fluxo de dados, que você pode usar mais tarde para criar relatórios.The next section describes these options, and goes into more detail about how to create a streaming tile or how to create a dataset from the streaming data source, which you can then use later to build reports.

Crie o conjunto de dados de streaming com a opção que você gostar maisCreate your streaming dataset with the option you like best

Há duas maneiras de criar um feed de fluxo de dados em tempo real que pode ser consumido e visualizado pelo Power BI:There are two ways to create a real-time streaming data feed that can be consumed and visualized by Power BI:

  • API REST do Power BI usando um ponto de extremidade de streaming em tempo realPower BI REST API using a real-time streaming endpoint
  • PubNubPubNub

As seções a seguir examinarão cada opção sucessivamente.The next sections look at each option in turn.

Usando a API REST do Power BIUsing the POWER BI REST API

API REST do Power BI - Foram desenvolvidas melhorias recentes no API REST do Power BI para tornar o streaming em tempo real mais fácil para os desenvolvedores.Power BI REST API - Recent improvements to the Power BI REST API are designed to make real-time streaming easier for developers. Ao selecionar API na janela Novo conjunto de dados de streaming, você terá que fornecer entradas que habilitarão o Power BI a conectar e usar o seu ponto de extremidade:When you select API from the New streaming dataset window, you're presented with entries to provide that enable Power BI to connect to and use your endpoint:

Captura de tela da caixa de diálogo Novo conjunto de dados de streaming mostrando as entradas do Power BI e da API REST para conexão.

Se quiser que o Power BI armazene os dados enviados por meio desse fluxo de dados, habilite Análise de dados históricos e você poderá fazer a emissão de relatórios e análises dos fluxos de dados coletados.If you want Power BI to store the data that's sent through this data stream, enable Historic data analysis and you'll be able to do reporting and analysis on the collected data stream. Você também pode Saber mais sobre a API.You can also learn more about the API.

Após criar com sucesso o seu fluxo de dados, você receberá um ponto de extremidade de URL da API REST, que o seu aplicativo poderá chamar usando solicitações de POST para enviar por push seus dados ao conjunto de dados do fluxo de dados do Power BI que você criou.Once you successfully create your data stream, you're provided with a REST API URL endpoint, which your application can call using POST requests to push your data to Power BI streaming data dataset you created.

Ao fazer solicitações POST, você deve garantir que o corpo da solicitação corresponda ao JSON de exemplo fornecido pela interface do usuário do Power BI.When making POST requests, you should ensure the request body matches the sample JSON provided by the Power BI user interface. Por exemplo, encapsule os objetos JSON em uma matriz.For example, wrap your JSON objects in an array.

Aviso

Para conjuntos de dados de streaming criados usando a interface do usuário do serviço do Power BI, o proprietário do conjunto de dados recebe uma URL que inclui uma chave de recurso.For streaming datasets created using the Power BI service UI, the dataset owner receives a URL which includes a resource key. Essa chave autoriza o solicitante a enviar dados por push para o conjunto de dados sem usar um token de portador OAuth do Azure AD, portanto, lembre-se das implicações de ter uma chave secreta na URL ao trabalhar com esse tipo de método e conjunto de dados.This key authorizes the requestor to push data into the dataset without using an Azure AD OAuth bearer token, so please keep in mind the implications of having a secret key in the URL when working with this type of dataset and method.

Usando o PubNubUsing PubNub

Com a integração do streaming PubNub com o Power BI, você poderá usar seus fluxos de dados de baixa latência PubNub (ou criar novos) e usá-los no Power BI.With the integration of PubNub streaming with Power BI, you can use your low-latency PubNub data streams (or create new ones) and use them in Power BI. Ao selecionar PubNub e, em seguida, Próximo, você verá a seguinte janela:When you select PubNub and then select Next, you see the following window:

Captura de tela da caixa de diálogo Novo conjunto de dados de streaming mostrando as entradas do PubNub para conexão.

Aviso

Canais de PubNub podem ser protegidos usando uma chave de autenticação do PAM (Gerenciador de acesso do PubNub).PubNub channels can be secured by using a PubNub Access Manager (PAM) authentication key. Essa chave será compartilhada com todos os usuários que têm acesso ao painel.This key will be shared with all users who have access to the dashboard. Você pode obter mais informações sobre o controle de acesso do PubNub.You can learn more about PubNub access control.

Os fluxos de dados PubNub costumam estar em grande volume e nem sempre são adequados para armazenamento e análise histórica em sua forma original.PubNub data streams are often high volume, and are not always suitable in their original form for storage and historical analysis. Para usar o Power BI para a análise histórica de dados PubNub, você terá que agregar o fluxo PubNub bruto e enviá-lo para o Power BI.To use Power BI for historical analysis of PubNub data, you'll have to aggregate the raw PubNub stream and send it to Power BI. Uma maneira de fazer isso é com o Stream Analytics do Azure.One way to do that is with Azure Stream Analytics.

Exemplo de uso de streaming em tempo real no Power BIExample of using real time streaming in Power BI

Aqui está um exemplo rápido de como funciona o streaming em tempo real no Power BI.Here's a quick example of how real time streaming in Power BI works. Você pode prosseguir com este exemplo para experimentar o valor do streaming em tempo real.You can follow along with this sample to see for yourself the value of real time streaming.

Neste exemplo, usamos um fluxo disponível publicamente do PubNub.In this sample, we use a publicly available stream from PubNub. Siga estas etapas:Here are the steps:

  1. No serviço do Power BI, selecione um painel (ou crie um novo) e selecione Adicionar bloco > Fluxo de Dados Personalizado e, em seguida, selecione o botão Próximo.In the Power BI service, select a dashboard (or create a new one) and select Add tile > Custom Streaming Data and then select the Next button.

    Captura de tela do dashboard mostrando a seleção de Adicionar bloco com os dados de streaming personalizados.

  2. Se você ainda não tiver fontes de dados de streaming, selecione o link Gerenciar dados (logo acima do botão Próximo) e selecione + Adicionar dados de streaming do link no canto superior direito da janela.If you don't have and streaming data sources yet, select the manage data link (just above the Next button), then select + Add streaming data from the link in the upper right of the window. Selecione PubNub e, em seguida, Próximo.Select PubNub and then select Next.

  3. Crie um nome para o conjunto de dados, em seguida, cole os seguintes valores na janela que aparecerá, depois selecione Próximo:Create a name for your dataset, then paste in the following values into the window that appears, then select Next:

    Chave de assinatura: sub-c-5f1b7c8e-fbee-11e3-aa40-02ee2ddab7feSubscribe key: sub-c-5f1b7c8e-fbee-11e3-aa40-02ee2ddab7fe

    Canal: pubnub-sensor-networkChannel: pubnub-sensor-network

    Captura de tela da caixa de diálogo Novo conjunto de dados de streaming mostrando como criar um nome de conjunto de dados e as entradas nos campos Sub-chave e Nome do canal.

  4. Na janela seguinte, apenas selecione os padrões (que são preenchidos automaticamente) e depois selecione Criar.In the following window, just select the defaults (which are automatically populated), then select Create.

    Captura de tela da caixa de diálogo Novo conjunto de dados de streaming mostrando os padrões para os campos Nome do conjunto de dados e Valores do fluxo.

  5. De volta ao seu workspace do Power BI, crie um novo painel e, em seguida, adicione um bloco (consulte acima para ver as etapas, se necessário).Back in your Power BI workspace, create a new dashboard and then add a tile (see above for steps, if you need them). Dessa vez, quando você criar um bloco e selecionar Fluxo de Dados Personalizado, terá um conjunto de fluxos de dados para trabalhar.This time when you create a tile and select Custom Streaming Data, you have a streaming data set to work with. Vá em frente e brinque com ele.Go ahead and play around with it. Ao adicionar os campos número para os gráficos de linhas e, em seguida, adicionar outros blocos, você poderá obter um painel em tempo real que é semelhante ao seguinte:Adding the number fields to line charts, and then adding other tiles, you can get a real time dashboard that looks like the following:

    Captura de tela do dashboard Sensores ambientais mostrando os resultados em tempo real.

Experimente e brinque com o exemplo de conjunto de dados.Give it a try, and play around with the sample dataset. Depois crie seus próprios conjuntos de dados e transmita dados dinâmicos ao Power BI.Then go create your own datasets, and stream live data to Power BI.

Perguntas e respostasQuestions and answers

Aqui estão algumas perguntas e respostas comuns sobre o streaming em tempo real no Power BI.Here are some common questions about real-time streaming in Power BI, and answers.

Posso usar filtros em conjuntos de dados de push?Can I use filters on push dataset? E nos conjuntos de dados de streaming?How about streaming dataset?

Infelizmente, os conjuntos de dados de streaming não dão suporte à filtragem.Unfortunately, streaming datasets do not support filtering. Para conjuntos de dados de push, você pode criar um relatório, filtrar o relatório e, em seguida, fixar os visuais filtrados em um dashboard.For push datasets, you can create a report, filter the report, and then pin the filtered visuals to a dashboard. No entanto, não há como alterar o filtro no visual quando ele está no dashboard.However, there is no way to change the filter on the visual once it's on the dashboard.

Você pode fixar o bloco de relatório em tempo real no dashboard de forma separada e, nesse caso, você pode alterar os filtros.Separately, you can pin the live report tile to the dashboard, in which case you can change the filters. No entanto, os blocos de relatório em tempo real não serão atualizados em tempo real conforme os dados são enviados. Será necessário atualizar manualmente o visual, usando a opção Atualizar os blocos de painel do menu Mais.However, live report tiles will not update in real-time as data is pushed in – you'll have to manually update the visual by using the refresh dashboard tiles option in the More menu.

Ao aplicar filtros para enviar conjuntos de dados por push com campos DateTime com precisão de milissegundos, não há suporte para operadores de equivalência.When applying filters to push datasets with DateTime fields with millisecond precision, equivalence operators are not supported. No entanto, operadores como maior que (>) ou menor que (<) funcionam corretamente.However, operators such as greater than (>) or less than (<) do operate properly.

Como faço para ver o valor mais recente em um conjunto de dados de push?How do I see the latest value on a push dataset? E nos conjuntos de dados de streaming?How about streaming dataset?

Os conjuntos de dados de streaming são projetados para exibir os dados mais recentes.Streaming datasets are designed for displaying the latest data. Você pode usar o visual de streaming Cartão para visualizar facilmente os valores numéricos mais recentes.You can use the Card streaming visual to easily see latest numeric values. Infelizmente, o cartão não dá suporte a dados do tipo DateTime ou Text.Unfortunately, the card does not support data of type DateTime or Text.

Para conjuntos de dados de push, quando você tiver um carimbo de data/hora no esquema, poderá tentar criar um visual de relatório com o último filtro N.For push datasets, when you have a timestamp in the schema you can try creating a report visual with the last N filter.

Posso conectar conjuntos de dados de push ou de streaming no Power BI Desktop?Can I connect to push or streaming datasets in Power BI Desktop?

Conjuntos de dados de push e híbridos podem ter conexão dinâmica no Power BI Desktop.Push and hybrid datasets can be live connected in Power BI Desktop. Outros conjuntos de dados de streaming não podem ser conectados no Power BI Desktop.Other streaming datasets cannot be connected in Power BI Desktop.

Dada a pergunta anterior, como posso fazer qualquer modelagem em conjuntos de dados em tempo real?Given the previous question, how can I do any modeling on real-time datasets?

A modelagem não é possível em um conjunto de dados de streaming, pois os dados não são armazenados permanentemente.Modeling is not possible on a streaming dataset, since the data is not stored permanently. Para um conjunto de dados de push, você pode usar a criação da API REST do conjunto de dados para criar um conjunto de dados com relações e medidas e/ou usar as APIs REST da tabela de atualização para adicionar medidas a uma tabela existente.For a push dataset, you can use create dataset REST API to create a dataset with relationship and measures and/or use the update table REST APIs to add measures to an existing table.

Como faço para limpar todos os valores em um conjunto de dados de push?How can I clear all the values on a push dataset? E nos conjuntos de dados de streaming?How about streaming dataset?

Em um conjunto de dados de push, você pode usar a chamada à API REST excluir linhas.On a push dataset, you can use the delete rows REST API call. Atualmente não há nenhuma maneira para limpar os dados de um conjunto de dados de streaming, embora os dados vão se auto limpar após uma hora.There is currently no way to clear data from a streaming dataset, though the data will clear itself after an hour.

Configurei uma saída do Azure Stream Analytics para o Power BI, mas não a vejo aparecer no Power BI. O que está errado?I set up an Azure Stream Analytics output to Power BI, but I don't see it appearing in Power BI – what's wrong?

Aqui está uma lista de verificação que você pode usar para solucionar o problema:Here's a checklist you can use to troubleshoot the issue:

  1. Reinicie o trabalho do Stream Analytics do Azure (trabalhos criados antes da versão GA do streaming necessitarão reiniciar)Restart the Azure Stream Analytics job (jobs created before the streaming GA release will require a restart)
  2. Tente autorizar novamente a conexão do Power BI no Azure Stream AnalyticsTry reauthorizing your Power BI connection in Azure Stream Analytics
  3. Qual workspace você especificou na saída do Stream Analytics do Azure?Which workspace did you specify in the Azure Stream Analytics output? Você verificando nesse (mesmo) workspace no serviço do Power BI?In the Power BI service, are you checking in that (same) workspace?
  4. A consulta do Stream Analytics do Azure gera saída explicitamente na saída do Power BI?Does the Azure Stream Analytics query explicitly output to the Power BI output? (usando a palavra-chave INTO)(using the INTO keyword)
  5. O trabalho do Stream Analytics do Azure tem dados fluindo através dele?Does the Azure Stream Analytics job have data flowing through it? O conjunto de dados será criado apenas quando os dados forem transmitidos.The dataset is only created when data is being transmitted.
  6. Você pode verificar os logs do Stream Analytics do Azure para ver se há erros ou avisos?Can you look into the Azure Stream Analytics logs to see if there are any warnings or errors?

Atualização automática de páginaAutomatic page refresh

A atualização automática da página funciona em um nível de página de relatório e permite definir um intervalo de atualização para visuais que estão ativos apenas quando a página é consumida.Automatic page refresh works at a report page level, and allows you to set a refresh interval for visuals that's only active when the page is being consumed. A atualização automática de página está disponível apenas para fontes de dados DirectQuery.Automatic page refresh is only available for DirectQuery data sources. O intervalo mínimo de atualização depende do tipo de workspace em que o relatório é publicado e das configurações de capacidade do administrador para workspaces Premium.The minimum refresh interval depends on which type of workspace where the report is published, and capacity admin settings for Premium workspaces.

Saiba mais no artigo sobre atualização de página automática.Learn more about automatic page refresh in the automatic page refresh article.

Próximas etapasNext steps

Aqui estão alguns links que podem ser úteis ao trabalhar com o streaming em tempo real no Power BI:Here are a few links you might find useful when working with real-time streaming in Power BI: