Tutorial: Obtenha informações dos seus dados processados

Neste artigo, cria um painel em tempo real para recolher insights a partir dos dados do OPC UA que enviou para os Event Hubs no artigo anterior. Ao usar Microsoft Fabric Real-Time Intelligence, traz os seus dados dos Event Hubs para Microsoft Fabric e mapeia-os para uma base de dados KQL que pode ser fonte de dashboards em tempo real. Em seguida, você cria um painel para exibir esses dados em blocos visuais que capturam informações e mostram os valores ao longo do tempo.

Estas operações são os últimos passos na experiência de exemplo de ponta a ponta, que vai desde a implementação do Operações IoT do Azure na periferia até à obtenção de insights a partir dos dados desse dispositivo na cloud.

Pré-requisitos

Antes de começar este tutorial, complete o Tutorial: Envie mensagens dos assets para a cloud usando um fluxo de dados.

Também precisa dos seguintes recursos Fabric:

  • Uma assinatura do Microsoft Fabric. Na sua subscrição, precisa de acesso a um espaço de trabalho com permissões de Contribuidor ou superiores.
  • Um tenant do Microsoft Fabric que permite a criação de painéis em tempo real. O administrador do locatário pode habilitar essa configuração. Para obter mais informações, consulte Habilitar configurações de locatário no portal de administração.

Que problema vamos resolver?

Quando os dados do seu OPC UA chegam à cloud, pode analisar uma grande quantidade de informação. Organize os dados e crie relatórios com gráficos e visualizações para obter informações. Este artigo mostra-lhe como ligar os dados ao Real-Time Intelligence e criar um painel em tempo real.

Importar dados para a Inteligência em Tempo Real

Nesta seção, você configura um fluxo de eventos do Microsoft Fabric para conectar seu hub de eventos a um banco de dados KQL no Real-Time Intelligence. Este processo inclui a configuração de um mapeamento de dados para transformar os dados do payload do formato JSON em colunas em KQL.

Criar um fluxo de eventos

Nesta seção, você cria um fluxo de eventos que será usado para trazer seus dados dos Hubs de Eventos para o Microsoft Fabric Real-Time Intelligence 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 fluxo de eventos no Microsoft Fabric para criar um novo recurso de fluxo de eventos em seu espaço de trabalho.

Depois que o eventstream for criado, você verá o editor principal onde você pode começar a criar o eventstream.

Adicionar hub de eventos como fonte

Em seguida, adicione seu hub de eventos do tutorial anterior como uma fonte de dados para o fluxo de eventos.

Siga as etapas indicadas em Adicionar a origem dos Hubs de Eventos do Azure a um fluxo de eventos para adicionar a origem do evento. Tenha em mente as seguintes notas:

  • Você criará uma nova conexão na 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 em sua página Visão geral no portal do Azure.
  • Para Grupo de consumidores, use a seleção padrão ($Default).
  • Em Formato de dados, escolha Json (ele pode já estar selecionado por padrão).

Depois de concluir esse fluxo, o hub de eventos do Azure fica visível na exibição ao vivo do fluxo de eventos como uma fonte.

Captura de tela do fluxo de eventos com uma fonte AzureEventHub.

Verificar o fluxo de dados

Siga estas etapas para verificar seu trabalho até agora e verifique se os dados estão fluindo para o fluxo de eventos.

  1. Inicie seu cluster onde você implantou as Operações do Azure IoT em tutoriais anteriores. O simulador de PLC OPC implantado com sua instância de Operações IoT do Azure deve começar a ser executado 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.

  2. Aguarde alguns minutos para que os dados se propaguem. Em seguida, na vista em direto 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.

    Captura de ecrã do fluxo de eventos com dados da origem AzureEventHub.

Sugestão

Se os dados não tiverem chegado ao seu fluxo de eventos, convém verificar a atividade do hub de eventos para verificar se ele está recebendo mensagens. Isso ajudará você a isolar qual seção do fluxo deve ser depurada.

Preparar recursos do KQL

Nesta seção, você cria um banco de dados KQL em seu espaço de trabalho do Microsoft Fabric para usar como destino para seus dados.

  1. Siga os passos em Criar um Eventhouse para criar um Eventhouse do Real-Time Intelligence com uma base de dados KQL subordinada. Você só precisa preencher a seção intitulada Criar uma casa de eventos.

  2. Em seguida, crie uma tabela em seu banco de dados. Chame-lhe OPCUA e use as seguintes colunas.

    Nome da coluna Tipo de dados
    Id do Ativo cadeia (de caracteres)
    Temperatura decimal
    Carimbo de Data/Hora datetime
  3. Depois que a tabela OPCUA tiver sido criada, selecione seu banco de dados e use o botão Consultar com código para abrir uma janela de consulta.

    Captura de ecrã a mostrar o botão Explorar os seus dados.

  4. 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 tabela de dados como destino

Em seguida, retorne à sua visualização de fluxo de eventos, onde você pode adicionar sua nova tabela KQL como um destino de fluxo de eventos.

Siga as etapas em Adicionar um destino de banco de dados KQL a um fluxo de eventos para adicionar o destino. Tenha em mente as seguintes notas:

  • Use o modo de ingestão direta.

  • Na etapa Configurar, selecione a tabela OPCUA que você criou anteriormente.

  • Na etapa Inspecionar, selecione opcua_mapping, selecione Mapeamento existente e escolha opcua_mapping.

    Captura de tela adicionando um mapeamento existente.

    Sugestão

    Se nenhum mapeamento existente for encontrado, tente atualizar o editor de fluxo de eventos e reiniciar as etapas para adicionar o destino. Como alternativa, você pode iniciar esse mesmo processo de configuração a partir da tabela KQL em vez do fluxo de eventos, conforme descrito em Obter dados do fluxo de eventos.

Depois de concluir esse fluxo, a tabela KQL fica visível na visualização ao vivo do fluxo de eventos como um destino.

Espere alguns minutos para que os dados se propaguem e para que o estado do destino mude para Ativo. Deverá ver que os dados do hub de eventos começam a aparecer na pré-visualização. Se os dados não aparecerem na pré-visualização, espere mais alguns minutos e atualize novamente a pré-visualização.

Captura de tela do fluxo de eventos com dados no destino do banco de dados KQL.

Se desejar, você também pode visualizar e consultar esses dados diretamente em seu banco de dados KQL.

Captura de ecrã dos mesmos dados que estão a ser consultados a partir da base de dados KQL.

Criar um painel em tempo real

Nesta seção, você criará um novo Painel em Tempo Real para visualizar os dados do tutorial. O painel permitirá filtrar por ID do ativo e carimbo temporal, e mostrará resumos visuais dos dados de temperatura.

Nota

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 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 fonte de dados

Siga as etapas na seção Criar um novo painel para criar um novo painel em tempo real a partir dos recursos de 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. Tenha em mente a seguinte observação:

  • No painel Fontes dedados, seu banco de dados estará em Eventhouse/KQL Database.

Configurar os parâmetros

Em seguida, configure alguns parâmetros para seu 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.

  1. Mude para o separador Gerir e selecione Parâmetros. Selecione + Adicionar para adicionar um novo parâmetro.

    Captura de tela mostrando a adição de um parâmetro a um painel.

  2. Crie um novo parâmetro com as seguintes características:

    • Etiqueta: Recurso
    • Tipo de parâmetro: Seleção única (já selecionada por padrão)
    • Nome da variável: _asset
    • Tipo de dados: string (já selecionado por padrão)
    • Fonte: Consulta
      • Fonte de dados: seu banco de dados (já selecionado por padrão)

      • Selecione Editar consulta e adicione a seguinte consulta KQL.

        OPCUA
        | summarize by AssetId
        
    • Coluna de valor: AssetId
    • Valor padrão: selecione o primeiro valor da consulta
  3. Selecione Concluído para salvar o parâmetro. Depois seleciona Fechar para fechar o painel de parâmetros.

Criar bloco de gráfico de linhas

De seguida, adicione um mosaico ao seu painel para mostrar um gráfico de linhas da temperatura ao longo do tempo para o ativo selecionado e o intervalo temporal.

  1. No separador Home, selecione a lista pendente Adicionar visual e, em seguida, selecione Gráfico de linhas para adicionar um novo mosaico de gráfico de linhas.

    Captura de ecrã da adição de um bloco de gráfico de linhas a um painel de controlo.

  2. No editor de Consultas, introduza a seguinte consulta KQL para o mosaico. Esta consulta aplica os parâmetros de filtro dos seletores do painel para o intervalo temporal e o equipamento, e obtém os registos resultantes com a respetiva marca temporal e temperatura.

    OPCUA 
    | where Timestamp between (_startTime.._endTime)
    | where AssetId == _asset
    | project Timestamp, Temperature
    

    Execute a consulta para verificar se os dados podem ser encontrados. O gráfico de linhas visualiza os dados. O gráfico visual requer pelo menos dois pontos de dados para ser exibido, por isso, se não vir nenhum dado, pode querer selecionar um intervalo de tempo mais amplo ou esperar que mais dados cheguem à sua base de dados antes de executar a consulta.

    Captura de ecrã da adição de uma consulta de mosaico.

  3. Selecione o separador Visualização e defina ou verifique os seguintes valores:

    • Tipo visual:Gráfico de linhas (seleção por defeito)
    • Geral:
      • Nome do bloco: Temperatura ao longo do tempo
    • Dados:
      • Colunas de Y: Inferir: Temperatura (decimal) (seleção predefinida)
      • Colunas X: Inferir: Timestamp (data-hora) (seleção padrão)
    • Eixo Y:
      • Etiqueta: Unidades
    • Eixo X:
      • Etiqueta: Timestamp

    Selecione Feito para criar o mosaico.

    Captura de ecrã a mostrar a adição de um mosaico visual.

Veja o mosaico concluído no seu dashboard.

Captura de ecrã do painel com um mosaico.

Criar tile de valor máximo

Em seguida, crie um mosaico para apresentar o valor máximo da temperatura.

  1. Selecione o menu suspenso Adicionar visual e depois selecione Estatística.

  2. No editor de Consultas, introduza a seguinte consulta KQL para o mosaico. Esta consulta aplica parâmetros de filtro dos seletores do painel para o intervalo de tempo e o recurso, e retira o valor de temperatura mais elevado dos registos resultantes.

    OPCUA
    | where Timestamp between (_startTime.._endTime)
    | where AssetId == _asset
    | top 1 by Temperature desc
    | summarize by Temperature
    

    Execute a consulta para verificar se uma temperatura máxima pode ser encontrada. O valor da temperatura máxima deve ser apresentado na pré-visualização visual.

  3. Selecione o separador Visualização e defina ou verifique os seguintes valores:

    • Tipo visual:Estatística (seleção padrão)
    • Geral:
      • Nome da telha: Temperatura máxima
    • Dados:
      • Coluna de valor: Inferir: Temperatura (decimal) (seleção por defeito)

    Selecione Feito para criar o mosaico.

    Captura de tela da adição de um visual de estatística.

  4. Exiba o bloco concluído no painel (talvez você queira redimensioná-lo para que o texto completo fique visível).

    Captura de ecrã do painel com dois mosaicos.

  5. Salve seu painel completo.

Agora tem um painel que apresenta diferentes tipos de visualizações para os dados dos ativos ao longo destes tutoriais. A partir daqui, você pode experimentar os filtros e adicionar outros tipos de bloco para ver como um painel pode permitir que você faça mais com seus dados.

Como resolvemos o problema?

Neste tutorial, você usou um fluxo de eventos para ingerir seus dados de 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 as alterações de valores ao longo do tempo. Ao relacionar dados de borda de várias fontes juntos no Microsoft Fabric, você pode criar relatórios com visualizações e recursos interativos que oferecem informações mais detalhadas sobre a integridade, a utilização 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 informadas para melhores resultados de negócios.

Isso conclui a etapa final no fluxo do tutorial para usar o Operações IoT do Azure para gerenciar dados de dispositivo desde a implantação até a análise na nuvem.

Limpar recursos

Se for avançar para o tutorial seguinte, mantenha todos os seus recursos.

Se quiser remover a implantação do Operações IoT do Azure, mas manter o cluster, utilize o comando az iot ops delete:

az iot ops delete --name $AIO_INSTANCE_NAME --resource-group $RESOURCE_GROUP

Se você quiser excluir todos os recursos criados para este início rápido, exclua o cluster do Kubernetes onde você implantou as Operações do Azure IoT e, em seguida, remova o grupo de recursos do Azure que continha o cluster.

Nota

O grupo de recursos contém o namespace Hubs de Eventos criado neste tutorial.

Você também pode excluir seu espaço de trabalho do Microsoft Fabric e/ou todos os recursos nele associados a este tutorial, incluindo o fluxo de eventos, o Eventhouse e o Painel em Tempo Real.