Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Nesse tutorial, você preenche um Painel em tempo real para capturar insights dos dados do OPC UA que você enviou aos Hubs de Eventos no tutorial anterior. Ao usar a Inteligência em Tempo Real do Microsoft Fabric, você transfere seus dados dos Hubs de Eventos para o Microsoft Fabric e mapeia-os para um banco de dados KQL que pode ser uma fonte dos Painéis em Tempo Real. Em seguida, você cria um painel para exibir esses dados nos blocos visuais que capturam insights e mostram os valores ao longo do tempo.
Essas operações são as últimas etapas do tutorial de exemplo de ponta a ponta, que abrange desde a implantação do Operações do Azure IoT na borda até a obtenção de insights a partir dos dados do dispositivo na nuvem.
Pré-requisitos
Antes de começar este tutorial, você deve concluir o Tutorial: Enviar mensagens de ativos para a nuvem usando um fluxo de dados
Você também precisa de uma assinatura do Microsoft Fabric. Na sua assinatura, você precisa ter acesso a um espaço de trabalho com permissões de Colaborador ou superior.
Além disso, seu locatário do Fabric deve permitir a criação de Dashboards em Tempo Real. Essa é uma configuração que pode ser habilitada pelo administrador do seu locatário. Para obter mais informações, consulte Habilitar configurações de locatário no portal de administração.
Que problema vamos resolver?
Depois que os dados do OPC UA chegarem à nuvem, você terá muitas informações disponíveis para analisar. Talvez você queira organizar esses dados e criar relatórios com gráficos e visualizações para obter insights dos dados. As etapas nesse tutorial ilustram como você pode conectar esses dados ao Real-Time Intelligence e criar um painel em tempo real.
Ingerir dados na Inteligência em Tempo Real
Nesta seção, você configurará um fluxo de eventos do Microsoft Fabric para conectar seu hub de eventos a um banco de dados KQL na Inteligência em Tempo Real. Esse processo inclui a criação de um mapeamento de dados para transformar os dados do payload do formato JSON em colunas no KQL.
Criar um fluxo de eventos
Nesta seção, você cria um fluxo de eventos que será usado para trazer os dados dos Hubs de Eventos para a Inteligência em Tempo Real do Microsoft Fabric e, eventualmente, para um banco de dados KQL.
Comece navegando até a experiência de Inteligência em Tempo Real no Microsoft Fabric e abrindo seu espaço de trabalho do Fabric.
Siga as etapas em Criar um eventstream no Microsoft Fabric para criar um novo recurso eventstream no seu espaço de trabalho.
Depois que o eventstream for criado, você verá o editor principal, onde poderá começar a criar o eventstream.
Adicionar o hub de eventos como uma origem
Em seguida, adicione seu hub de eventos do tutorial anterior como uma fonte de dados para o fluxo de eventos.
Siga as etapas em Adicionar a origem dos Hubs de Eventos do Azure a um fluxo de eventos para adicionar a origem do evento. Tenha as seguintes observações em mente:
- Você criará uma nova conexão de nuvem com a autenticação da Chave de Acesso Compartilhado.
- Verifique se a autenticação local está habilitada no hub de eventos. Você pode definir isso na página de visão geral no portal do Azure.
- Para Grupo de consumidores, use a seleção padrão ($Default).
- Para Formato de dados, escolha JSON (ele já pode ter sido selecionado por padrão).
Depois de concluir esse fluxo, o hub de eventos do Azure ficará visível no modo de exibição ao vivo do fluxo de eventos como uma origem.
Verificar o fluxo de dados
Siga estas etapas para verificar seu trabalho até o momento e garantir que os dados estejam fluindo para o fluxo de eventos.
Inicie seu cluster onde você implantou o Operações do Azure IoT em tutoriais anteriores. O simulador OPC PLC implantado com sua instância de Operações IoT do Azure deve começar a executar e enviar dados para o agente MQTT. Você pode verificar essa parte do fluxo usando mqttui, conforme descrito em Verificar se os dados estão fluindo.
Aguarde alguns minutos para que os dados sejam propagados. Em seguida, na exibição ao vivo do fluxo de eventos, selecione a origem AzureEventHub e atualize a Pré-visualização de dados. Você deve ver os dados JSON do simulador começarem a aparecer na tabela.
Dica
Se os dados não tiverem chegado ao seu eventstream, verifique se a atividade do hub de eventos está recebendo mensagens. Isso o ajudará a isolar qual seção do fluxo será depurado.
Preparar os recursos KQL
Nesta seção, você criará um banco de dados KQL no seu espaço de trabalho do Microsoft Fabric para usar como destino para seus dados.
Siga as etapas em Criar um Eventhouse para criar um Eventhouse da Inteligência em Tempo Real com um banco de dados KQL secundário. Você só precisa preencher a seção intitulada Criar um Eventhouse.
Em seguida, crie uma tabela no seu banco de dados. Chame-o de OPCUA e use as colunas a seguir.
Nome da coluna Tipo de dados ID do Ativo cadeia Temperatura decimal Carimbo de data/hora datetime Depois que a tabela OPCUA for criada, selecione seu banco de dados e use o botão Consultar com código para abrir uma janela Consulta.
Exclua o código existente e execute a seguinte consulta KQL para criar um mapeamento de dados para sua tabela. O mapeamento de dados será chamado opcua_mapping.
.create table ['OPCUA'] ingestion json mapping 'opcua_mapping' '[{"column":"AssetId", "Properties":{"Path":"$[\'AssetId\']"}},{"column":"Temperature", "Properties":{"Path":"$[\'ThermostatTemperatureF\']"}},{"column":"Timestamp", "Properties":{"Path":"$[\'EventProcessedUtcTime\']"}}]'
Adicionar a tabela de dados como um destino
Em seguida, retorne à visualização do fluxo de eventos, onde você poderá adicionar sua nova tabela KQL como um destino do fluxo de eventos.
Siga as etapas em Adicionar um destino do Banco de Dados KQL a um fluxo de eventos para adicionar o destino. Tenha as seguintes observações em mente:
Use o modo de ingestão direta.
Na etapa Configurar, selecione a tabela OPCUA criada anteriormente.
Na etapa Inspecionar, selecione opcua_mapping, selecione Mapeamento existente e escolha opcua_mapping.
Dica
Se não forem encontrados mapeamentos existentes, tente atualizar o editor do fluxo de eventos e reiniciar as etapas para adicionar o destino. Como alternativa, você pode iniciar esse mesmo processo de configuração da tabela KQL em vez de do fluxo de eventos, conforme descrito em Obter dados do Eventstream.
Depois de concluir esse fluxo, a tabela KQL ficará visível na exibição ao vivo do fluxo de eventos como um destino.
Aguarde alguns minutos para que os dados se propaguem e para que o status do destino seja alterado para Ativo
Se quiser, você também pode exibir e consultar esses dados diretamente no banco de dados KQL.
Crie um dashboard em tempo real
Nessa seção, você criará um novo Painel em Tempo Real para visualizar os dados do seu tutorial. O painel permitirá a filtragem por ID de ativo e carimbo de data/hora e exibirá resumos visuais dos dados de temperatura e umidade.
Observação
Você só poderá criar Painéis em Tempo Real se o administrador do locatário tiver habilitado a criação de Painéis em Tempo Real no seu locatário do Fabric. Para obter mais informações, consulte Habilitar configurações de locatário no portal de administração.
Criar painel e conectar a fonte de dados
Siga as etapas na seção Criar um novo painel para criar um novo Painel em Tempo Real com base nos recursos da Inteligência em Tempo Real.
Em seguida, siga as etapas na seção Adicionar fonte de dados para adicionar seu banco de dados como uma fonte de dados. Lembre-se da seguinte observação:
- No painel Fontes de dados, seu banco de dados estará no Banco de dados Eventhouse/KQL.
Configurar parâmetros
Em seguida, configure alguns parâmetros do painel para que os visuais possam ser filtrados por ID de ativo e carimbo de data/hora. O painel vem com um parâmetro padrão para filtrar por intervalo de tempo, portanto, você só precisa criar um que possa filtrar por ID de ativo.
Alterne para a guia Gerenciar e selecione Parâmetros. Selecione + Adicionar para adicionar um novo parâmetro.
Crie um novo parâmetro com as seguintes características:
- Etiqueta: Recurso
- Tipo de parâmetro: seleção única (já selecionado por padrão)
- Nome da variável: _asset
- Tipo de dados: cadeia de caracteres (já selecionado por padrão)
-
Origem: Consulta
Fonte de dados: seu banco de dados (já selecionado por padrão)
Selecione Editar consulta e adicione a consulta KQL a seguir.
OPCUA | summarize by AssetId
- Coluna de valor: AssetId
- Valor padrão: selecione o primeiro valor da consulta
Selecione Concluído para salvar seu parâmetro.
Criar bloco de gráfico de linha
Em seguida, adicione um bloco ao seu painel para mostrar um gráfico de linhas de temperatura e umidade ao longo do tempo para o ativo e o intervalo de tempo selecionados.
Selecione + Adicionar bloco ou Novo bloco para adicionar um novo bloco.
Insira a seguinte consulta KQL para o bloco. Esta consulta aplica os parâmetros de filtro dos seletores do painel para intervalo de tempo e ativo e retorna os registros resultantes com seus respectivos carimbos de data/hora, temperatura e umidade.
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | project Timestamp, TemperatureExecutar a consulta para verificar se os dados podem ser encontrados.
Selecione + Adicionar visuais ao lado dos resultados da consulta para adicionar um visual nesses dados. Crie um visual com as seguintes características:
- Nome do bloco: Temperatura ao longo do tempo
- Tipo visual: Gráfico de linhas
-
Dados:
- Colunas Y: Temperatura (decimal) (já inferido por padrão)
- X colunas: Timestamp (data/hora) (já inferido por padrão)
-
Eixo Y:
- Rótulo: Unidades
-
Eixo X:
- Rótulo: Carimbo de data/hora
Selecione Aplicar alterações para criar o bloco.
Veja o bloco finalizado no seu painel.
Criar blocos de valor máximo
Em seguida, crie alguns blocos para exibir os valores máximos de temperatura e umidade.
Selecione Novo bloco para criar um novo bloco.
Insira a seguinte consulta KQL no bloco. Esta consulta aplica parâmetros de filtro com base nos seletores do painel para o intervalo de tempo e o ativo, e retorna o maior valor de temperatura dos registros resultantes.
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | top 1 by Temperature desc | summarize by TemperatureExecutar a consulta para verificar se uma temperatura máxima pode ser encontrada.
Selecione + Adicionar visuais para adicionar um visual a esses dados. Crie um visual com as seguintes características:
- Nome do bloco: Temperatura máxima
- Tipo visual: Stat
-
Dados:
- Coluna de valor: Temperatura (decimal) (já inferido por padrão)
Selecione Aplicar alterações para criar o bloco.
Exiba o bloco concluído no painel (talvez você queira redimensionar o bloco para que o texto completo fique visível).
Salve o seu painel finalizado.
Agora, você tem um painel que exibe diferentes tipos de visualizações dos dados de ativos destes tutoriais. A partir daí, você pode fazer experiências com os filtros e adicionar outros tipos de blocos para ver como um painel pode permitir que você faça mais com seus dados.
Como resolvemos o problema?
Nesse tutorial, você usou um eventstream para ingerir dados do Hubs de Eventos em um banco de dados KQL no Microsoft Fabric Real-Time Intelligence. Em seguida, você criou um Painel em Tempo Real alimentado por esses dados, que rastreia visualmente a mudança de valores ao longo do tempo. Ao relacionar dados de borda de várias fontes no Microsoft Fabric, você pode criar relatórios com visualizações e recursos interativos que oferecem insights mais profundos sobre a integridade, o uso e as tendências operacionais dos ativos. Isso pode capacitá-lo a aumentar a produtividade, melhorar o desempenho dos ativos e impulsionar a tomada de decisões informada para melhores resultados de negócios.
Isso conclui a etapa final no fluxo do tutorial para usar o Operações do Azure IoT para gerenciar dados do dispositivo desde a implantação até a análise na nuvem.
Limpar os recursos
Se você continuar para o próximo tutorial, mantenha todos os seus recursos.
Se você quiser remover a implantação do Operações do Azure IoT, mas manter seu cluster, use o comando az iot ops delete:
az iot ops delete --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP
Se você quiser excluir todos os recursos criados para este início rápido, exclua o cluster do Kubernetes no qual você implantou as Operações do Azure IoT e remova o grupo de recursos do Azure que continha o cluster.
Observação
O grupo de recursos contém o namespace Hubs de Eventos que você criou nesse tutorial.
Você também pode excluir seu espaço de trabalho do Microsoft Fabric e/ou todos os recursos nele associados a esse tutorial, incluindo o eventstream, o Eventhouse e o Real-Time Dashboard.