Partilhar via


Processar dados de eventos com o editor do processador de eventos

O editor do processador de eventos é uma experiência sem código que permite arrastar e soltar para projetar a lógica de processamento de dados do evento. Este artigo descreve como usar o editor para projetar sua lógica de processamento.

Nota

Os recursos aprimorados são habilitados por padrão quando você cria fluxos de eventos agora. Se você tiver fluxos de eventos que foram criados usando recursos padrão, esses fluxos de eventos continuarão a funcionar. Você ainda pode editá-los e usá-los como de costume. Recomendamos que você crie um novo fluxo de eventos para substituir fluxos de eventos padrão para que possa aproveitar os recursos e benefícios adicionais dos fluxos de eventos aprimorados.

Pré-requisitos

Antes de começar, você deve preencher os seguintes pré-requisitos:

  • Acesso a um espaço de trabalho na modalidade de licença de capacidade Fabric ou na modalidade de licença de avaliação, com permissões de Colaborador ou superiores.

Projete o processamento do evento com o editor

Para executar operações de processamento de fluxo em seus fluxos de dados usando um editor sem código, siga estas etapas:

  1. Selecione Editar no friso se ainda não estiver no modo de edição. Verifique se o nó upstream das operações conectadas tem um esquema.

    Captura de tela mostrando o editor do processador de eventos no modo de edição.

  2. Para inserir um operador de processamento de eventos entre o nó de fluxo e o destino no modo de edição, você pode usar um dos dois métodos a seguir:

    • Insira o operador diretamente da linha de conexão. Passe o mouse sobre a linha de conexão e selecione o + botão. Um menu suspenso aparece na linha de conexão e você pode selecionar um operador nesse menu.

      Captura de tela mostrando a seleção do botão + na linha de conexão.

    • Insira o operador a partir do menu de opções ou da tela.

      1. Você pode selecionar um operador no menu Transformar eventos na barra de ferramentas.

        Captura de ecrã a mostrar a seleção Gerir campos no friso.

        Como alternativa, você pode passar o mouse sobre um dos nós e, em seguida, selecionar o + botão se você excluiu a linha de conexão. Um menu suspenso aparece ao lado desse nó e você pode selecionar um operador nesse menu.

        Captura de tela mostrando a seleção do link de adição na linha de conexão.

      2. Depois de inserir o operador, você precisa reconectar esses nós. Passe o rato na borda esquerda do nó de fluxo, e, em seguida, selecione e arraste o círculo verde para conectá-lo ao nó do operador Gerir campos. Siga o mesmo processo para conectar o nó do operador Gerenciar campos ao seu destino.

        Captura de ecrã a mostrar como ligar o mosaico de campos de gestão.

  3. Selecione o nó do operador Gerenciar campos . No painel de configuração Gerenciar campos , selecione os campos que deseja produzir. Se quiser adicionar todos os campos, selecione Adicionar todos os campos. Você também pode adicionar um novo campo com as funções internas para agregar os dados provenientes do fluxo ascendente. (Atualmente, as funções incorporadas que suportamos são algumas funções em Funções de String, Funções de Data e Hora, Funções Matemáticas. Para encontrá-los, pesquise em built-in.)

    Captura de ecrã a mostrar como configurar o mosaico Gerir campos.

  4. Depois de configurar o operador Gerenciar campos, selecione Atualizar para validar o resultado do teste produzido por esse operador.

    Captura de ecrã a mostrar a página atualizada.

  5. Se você tiver erros de configuração, eles aparecerão na guia Erros de criação no painel inferior.

    Captura de ecrã a mostrar o separador Erros de criação.

  6. Se o resultado do teste parecer correto, selecione Publicar para salvar a lógica de processamento do evento e retornar à Visualização dinâmica.

    Captura de ecrã a mostrar o botão Publicar no friso selecionado.

  7. Depois de concluir essas etapas, você pode visualizar como seu fluxo de eventos começa a transmitir e processar dados na Visualização dinâmica.

    Captura de tela mostrando a visualização ao vivo.

Editor de processamento de eventos

O editor do processador de eventos (a tela no modo de edição) permite transformar dados em vários destinos. Entre no modo Editar para projetar operações de processamento de fluxo para seus fluxos de dados.

Captura de tela mostrando o editor de processamento de eventos para um fluxo de eventos com recursos aprimorados.

O modo de edição inclui uma tela e um painel inferior onde você pode:

  • Crie a lógica de transformação de dados do evento usando o método de arrastar e soltar.
  • Visualize o resultado do teste em cada um dos nós de processamento do início ao fim.
  • Descubra quaisquer erros de autoria nos nós de processamento.

Layout do editor

Captura de tela mostrando o layout do editor de processamento de eventos para um fluxo de eventos com recursos aprimorados.

  • Menu de Faixa de Opções e Tela (indicado como número um na imagem): Neste painel, é possível conceber a sua lógica de transformação de dados, selecionando um operador (no menu Transformar eventos) e conectando o fluxo e os nós de destino através do recém-criado nó de operador. Você pode arrastar e soltar linhas de conexão ou selecionar e excluir conexões.
  • Painel de edição direito (dois na imagem): este painel permite configurar o nó selecionado ou o nome do fluxo de exibição.
  • Painel inferior com as guias de pré-visualização de dados e erros de configuração (três na imagem): Neste painel, visualize o resultado do teste em um nó selecionado através da guia Resultado do teste. A guia Erros de configuração lista qualquer configuração incompleta ou incorreta nos nós de operação.

Tipos de nó suportados e exemplos

Aqui estão os tipos de destino que suportam adicionar operadores antes da ingestão:

  • Lakehouse
  • Eventhouse (Processamento de eventos antes da ingestão)
  • Fluxo derivado
  • Ativador

Nota

Para destinos que não suportam a adição de operador de pré-ingestão, você pode primeiro adicionar um fluxo derivado como a saída do seu operador. Em seguida, anexe o destino pretendido a esse fluxo derivado.

Captura de tela mostrando o layout do editor de processamento de eventos com saída de filtro para um destino sem suporte.

O processador de eventos no Lakehouse e no KQL Database (processamento de eventos antes da ingestão) permite que você processe seus dados antes que eles sejam ingeridos em seu destino.

Pré-requisitos

Antes de começar, você deve preencher os seguintes pré-requisitos:

  • Acesso a um espaço de trabalho no modo de licença de capacidade do Fabric (ou) no modo de licença de avaliação com permissões de Colaborador ou superiores.
  • Obtenha acesso a um espaço de trabalho com permissões de Colaborador ou superior onde o seu lakehouse ou banco de dados KQL se encontra.

Projete o processamento do evento com o editor

Para projetar o processamento de eventos com o editor do processador de eventos:

  1. Adicione um destino Lakehouse e insira os parâmetros necessários no painel direito. (Ver Adicione e gerencie um destino em um fluxo de eventos para obter instruções detalhadas. )

  2. Selecione Abrir processador de eventos. O ecrã Editor de Processamento de Eventos aparece.

    Captura de tela mostrando onde selecionar Abrir processador de eventos na tela de configuração de destino do Lakehouse.

  3. Na tela do editor de processamento de eventos, selecione o nó do fluxo de eventos. Você pode visualizar o esquema de dados ou alterar o tipo de dados no painel direito do Fluxo de Eventos.

    Captura de tela mostrando o esquema de dados no painel direito da tela do editor de processamento de eventos.

  4. Para inserir um operador de processamento de eventos entre esse fluxo de eventos e o destino no editor do processador de eventos, você pode usar um dos dois métodos a seguir:

    1. Insira o operador diretamente da linha de conexão. Passe o cursor sobre a linha de conexão e selecione o botão "+". Um menu pendente aparece na linha de conexão e pode-se selecionar um operador neste menu.

      Captura de ecrã mostrando onde passar o rato na linha de ligação para inserir um nó.

    2. Insira o operador a partir da barra de ferramentas ou da tela.

      1. Você pode selecionar um operador no menu Operações na barra de ferramentas. Como alternativa, você pode passar o mouse sobre um dos nós e, em seguida, selecionar o botão "+" se você excluiu a linha de conexão. Um menu suspenso aparece ao lado desse nó e você pode selecionar um operador nesse menu.

        Captura de tela mostrando onde selecionar um operador no menu Operações.

        Imagem mostrando onde colocar o cursor sobre os nós para inserir um novo nó.

      2. Finalmente, você precisa reconectar esses nós. Passe o rato sobre a borda esquerda do nó do fluxo de eventos, e depois selecione e arraste o círculo verde para conectá-lo ao nó do operador Gerenciar campos. Siga o mesmo processo para conectar o nó do operador de gestão de campos ao nó da casa no lago.

        Captura de tela mostrando onde conectar os nós.

  5. Selecione o operador Gerenciar campos do nó. No painel de configuração Gerenciar campos , selecione os campos que deseja produzir. Se quiser adicionar todos os campos, selecione Adicionar todos os campos. Você também pode adicionar um novo campo com as funções internas para agregar os dados do upstream. (Atualmente, as funções incorporadas que suportamos são algumas funções em Funções de String, Funções de Data e Hora, Funções Matemáticas. Para encontrá-los, pesquise em "built-in.")

    Captura de tela mostrando como configurar o operador.

  6. Depois de configurar o operador Gerenciar campos , selecione Atualizar visualização estática para visualizar os dados produzidos por esse operador.

    Captura de tela mostrando como visualizar dados no editor do processador de eventos.

  7. Se tiver erros de configuração, eles aparecerão no separador Erro de Autoria no painel inferior.

    Captura de tela mostrando a guia de erro de criação no editor do processador de eventos.

  8. Se os dados visualizados parecerem corretos, selecione Concluído para salvar a lógica de processamento de eventos e retornar à tela de configuração de destino do Lakehouse.

  9. Selecione Adicionar para concluir a criação do seu destino lakehouse.

Editor do processador de eventos

O Processador de Eventos permite que os dados que estão a ser ingeridos sejam transformados num destino de lakehouse. Ao configurar o seu destino Lakehouse, encontra a opção Abrir processador de eventos no meio da tela de configuração de destino Lakehouse.

Captura de tela mostrando onde abrir o editor do processador de eventos.

Selecionar Abrir processador de eventos inicia a tela Editor de processamento de eventos, onde você pode definir sua lógica de transformação de dados.

O editor do processador de eventos inclui uma tela e um painel inferior onde você pode:

  • Crie a lógica de transformação de dados do evento com arrastar e soltar.
  • Visualize os dados em cada um dos nós de processamento do início ao fim.
  • Descubra quaisquer erros de criação nos nós de processamento.

O layout da tela é como o editor principal. É composto por três seções, mostradas na imagem a seguir:

Captura de tela da tela do editor de processamento de eventos, indicando as três seções principais.

  1. Canvas com exibição de diagrama: neste painel, você pode projetar sua lógica de transformação de dados selecionando um operador (no menu Operações) e conectando o fluxo de eventos e os nós de destino por meio do nó de operador recém-criado. Você pode arrastar e soltar linhas de conexão ou selecionar e excluir conexões.

  2. Painel de edição direito: este painel permite configurar o nó de operação selecionado ou exibir o esquema do fluxo de eventos e do destino.

  3. Painel inferior com guias de visualização de dados e de erros de criação: neste painel, visualize os dados de um nó selecionado na guia Visualização de dados. A guia Erros de configuração lista qualquer configuração incompleta ou incorreta nos nós de operação.

Erros de criação

Erros de autoria referem-se aos erros que ocorrem no editor do processador de eventos devido à configuração incompleta ou incorreta dos nós de operação, ajudando o utilizador a encontrar e corrigir possíveis problemas no processador de eventos.

Você pode visualizar Erros de autoria no painel inferior do Editor do processador de eventos. O painel inferior lista todos os erros de criação, cada erro de criação tem quatro colunas:

  • ID do nó: indica a ID do nó da operação onde ocorreu o erro de autoria.
  • Tipo de nó: Indica o tipo do nó de operação onde ocorreu o erro de autoria.
  • Nível: Indica a gravidade do erro de Autoria, existem dois níveis, Fatal e Informação. Erro fatal de autoria significa que o seu processador de eventos enfrenta sérios problemas e não pode ser salvo ou executado. Erro de criação no nível de informação significa que o processador de eventos tem algumas dicas ou sugestões que podem ajudá-lo a otimizar ou melhorar o processador de eventos.
  • Erro: Indica as informações específicas do erro de criação, descrevendo brevemente a causa e o impacto do erro de criação. Você pode selecionar Mostrar detalhes para ver os detalhes.

Como o Eventstream e o Eventhouse oferecem suporte a tipos de dados diferentes, o processo de conversão de tipo de dados pode gerar erros de criação.

A tabela a seguir mostra os resultados da conversão de tipo de dados de Eventstream para Eventhouse. As colunas representam os tipos de dados suportados pelo Eventstream e as linhas representam os tipos de dados suportados pelo Eventhouse. As células indicam os resultados da conversão, que podem ser um dos três seguintes:

✔️ Indica conversão bem-sucedida, nenhum erro ou aviso é gerado.

❌ Indica conversão impossível, gera um erro fatal de criação. A mensagem de erro é semelhante a: O tipo de dados "{1}" para a coluna "{0}" não corresponde ao tipo esperado "{2}" na tabela KQL selecionada e não pode ser convertido automaticamente.

⚠️ Indica conversão possível, mas imprecisa, erro de criação de informações é gerado. A mensagem de erro é semelhante a: O tipo de dados "{1}" para a coluna "{0}" não corresponde exatamente ao tipo esperado "{2}" na tabela KQL selecionada. É convertido automaticamente em "{2}".

string booleano data e hora dinâmico Identificador Global Único (GUID) número inteiro longo real período de tempo decimal
Int64 ✔️ ⚠️ ✔️ ⚠️ ✔️
`Duplo` ✔️ ⚠️ ⚠️
String ✔️ ✔️
Datetime ⚠️ ✔️ ✔️
Registo ⚠️ ✔️
Matriz ⚠️ ✔️

Como você pode ver na tabela, algumas conversões de tipo de dados são bem-sucedidas, como string para string. Essas conversões não geram erros de criação e não afetam a operação do processador de eventos.

Algumas conversões de tipo de dados são impossíveis, como int para string. Essas conversões geram erros fatais de criação de nível, fazendo com que o processador de eventos não consiga salvar. Você precisa alterar o tipo de dados no Eventstream ou na tabela KQL para evitar esses erros.

Algumas conversões de tipo de dados são possíveis, mas não precisas, como int para real. Essas conversões geram erros de criação no nível de informação, indicando a incompatibilidade entre os tipos de dados e os resultados da conversão automática. Essas conversões podem fazer com que seus dados percam precisão ou estrutura. Você pode escolher se deseja ignorar esses erros ou modificar seu tipo de dados no Eventstream ou na tabela KQL para otimizar o processador de eventos.

Operadores de transformação

O processador de eventos fornece sete operadores, que você pode usar para transformar seus dados de eventos de acordo com suas necessidades de negócios.

Captura de tela mostrando os operadores disponíveis no menu Operações.

Agregação

Use a transformação Agregada para calcular uma agregação (Soma, Mínimo, Máximo ou Média) sempre que um novo evento ocorrer durante um período de tempo. Essa operação também permite renomear essas colunas calculadas e filtrar ou fatiar a agregação com base em outras dimensões em seus dados. Você pode ter uma ou mais agregações na mesma transformação.

  • Nome do operador: especifique o nome da operação de agregação.
  • Adicionar função de agregação: Adicione uma ou mais agregações na operação agregada.
  • Tipo: Escolha um tipo de agregação: Soma, Mínimo, Máximo ou Média.
  • Campo: Selecione a coluna a processar.
  • Nome: defina um nome para esta função de agregação.
  • Particionar por: Selecione uma coluna para agrupar a agregação.
  • Agregar valores dentro do último: especifique uma janela de tempo para agregação (o padrão é 5 segundos).

Captura de tela mostrando a configuração do operador agregado e o resultado do teste.

Expandir

Use a transformação de expansão de arrays para criar uma linha nova para cada valor dentro de um array. Você pode escolher criar linha para matriz ausente/vazia ou não criar linha para matriz ausente/vazia.

Captura de tela mostrando a configuração do operador de expansão e o resultado do teste.

Filtro

Use a transformação Filter para filtrar eventos com base no valor de um campo na entrada. Dependendo do tipo de dados (número ou texto), a transformação mantém os valores que correspondem à condição selecionada, como é nulo ou não é nulo.

Agrupar por

Utilize a transformação Agrupar por para calcular agregações em todos os eventos dentro de uma determinada janela de tempo. Você pode agrupar pelos valores em um ou mais campos. É como se a transformação Agregada permitisse a renomeação de colunas, mas fornece mais opções para agregação e inclui opções mais complexas para janelas de tempo. Como o Agregado, você pode adicionar mais de uma agregação por transformação.

As agregações disponíveis na transformação são:

  • Média
  • Contagem
  • Máximo
  • Mínimo
  • Percentil (contínuo e discreto)
  • Desvio padrão
  • Soma
  • Desvio

Em cenários de streaming de tempo, a execução de operações nos dados contidos em janelas temporais é um padrão comum. O processador de eventos suporta funções de janelas, que são integradas com o operador de agregação por grupos. Você pode defini-lo na configuração deste operador.

Captura de ecrã mostrando o operador de agrupamento disponível no editor do processador de eventos.

Gerir campos

A transformação Gerenciar campos permite adicionar, remover, alterar o tipo de dados ou renomear campos provenientes de uma entrada ou outra transformação. As configurações do painel lateral oferecem a opção de adicionar um novo campo selecionando Adicionar campo, adicionando vários campos ou adicionando todos os campos de uma só vez.

Captura de tela mostrando o operador Gerenciar campos disponível no editor do processador de eventos.

Além disso, você pode adicionar um novo campo com as funções integradas para agregar os dados do upstream. (Atualmente, as funções incorporadas que suportamos são algumas funções em Funções de cadeia de caracteres, funções de data e hora e funções matemáticas. Para encontrá-los, pesquise em "built-in.")

Captura de ecrã a mostrar as funções incorporadas do campo Gerir.

A tabela a seguir mostra os resultados da alteração do tipo de dados usando campos de gerenciamento. As colunas representam os tipos de dados originais e as linhas representam o tipo de dados de destino.

  • Se houver um ✔️ na célula, isso significa que ele pode ser convertido diretamente e a opção de tipo de dados de destino é mostrada na lista suspensa.
  • Se houver um ❌ na célula, significa que não pode ser convertido e, por essa razão, a opção de tipo de dados de destino não é exibida na lista suspensa.
  • Se houver um ⚠️ na célula, isso significa que ele pode ser convertido, mas precisa atender a certas condições, como o formato da cadeia de caracteres deve estar em conformidade com os requisitos do tipo de dados de destino. Por exemplo, ao converter de string para int, a string precisa ser um formulário inteiro válido, como 123, não abc.
Int64 Duplo String Data e Hora Registo Matriz
Int64 ✔️ ✔️ ✔️
Duplo ✔️ ✔️ ✔️
String ⚠️ ⚠️ ✔️ ⚠️
Datetime ✔️ ✔️
Registo ✔️ ✔️
Matriz ✔️ ✔️

União

Use a transformação União para conectar dois ou mais nós e adicionar eventos que compartilharam campos (com o mesmo nome e tipo de dados) em uma tabela. Os campos que não correspondem são descartados e não são incluídos na saída.

Participar

Use a transformação Join para combinar eventos de duas entradas com base nos pares de campos selecionados. Se você não selecionar um par de campos, a associação será baseada no tempo por padrão. O padrão é o que torna esta transformação diferente de uma em lote.

Tal como acontece com as junções regulares, tem opções para a sua lógica de adesão:

  • Junção interna: inclua apenas registros de ambas as tabelas em que o par corresponde.
  • Junção externa esquerda: inclua todos os registros da tabela esquerda (primeira) e apenas os registros da segunda tabela que correspondam ao par de campos. Se não houver correspondência, os campos da segunda entrada ficarão em branco.