Compartilhar via


Processar eventos usando um operador SQL (versão prévia)

Um operador SQL (versão prévia), também chamado de editor de código SQL, é um novo recurso de transformação de dados nos fluxos de eventos do Microsoft Fabric. Os operadores SQL fornecem uma experiência de edição de código em que você pode definir facilmente sua própria lógica de transformação de dados personalizada usando expressões SQL simples. Este artigo descreve como usar um operador SQL para transformações de dados em um fluxo de eventos.

Note

Os nomes de artefato eventstream que incluem um sublinhado (_) ou ponto (.) não são compatíveis com operadores SQL. Para obter a melhor experiência, crie um novo fluxo de eventos sem usar sublinhados ou pontos no nome do artefato.

Prerequisites

  • Acesso a um workspace no modo de licença de capacidade do Fabric ou no modo de licença de teste, com permissões de Colaborador ou superior.

Adicionar um operador SQL a um fluxo de eventos

Para executar operações de processamento de fluxo em seus fluxos de dados usando um operador SQL, adicione um operador SQL ao fluxo de eventos usando as seguintes instruções:

  1. Crie um novo fluxo de eventos. Em seguida, adicione um operador SQL a ele usando uma das seguintes opções:

    • Na faixa de opções, selecione Transformar eventos e, em seguida, selecione SQL.

      Captura de tela que mostra a seleção de um operador SQL no menu para transformar eventos.

    • Na tela, selecione Transformar eventos ou adicionar destino e selecione SQL Code.

      Captura de tela que mostra a seleção de um operador SQL na lista para transformar eventos na tela.

  2. Um novo nó SQL é adicionado ao seu fluxo de eventos. Selecione o ícone de lápis para continuar configurando o operador SQL.

    Captura de tela que mostra a seleção do ícone de lápis no nó do operador SQL.

  3. Na aba código SQL, especifique um nome exclusivo para o operador SQL no fluxo de eventos.

  4. Edite a consulta na área de consulta ou selecione Editar consulta para inserir o modo de exibição do editor de código de tela inteira.

    Captura de tela que mostra a caixa para inserir um nome de operação e o botão para editar uma consulta no painel do CÓDIGO SQL.

  5. O modo de editor de código de tela inteira apresenta um painel do explorador de entrada/saída no lado esquerdo. A seção do editor de código é ajustável, para que você possa redimensioná-la de acordo com suas preferências. A seção de visualização na parte inferior permite que você exiba os dados de entrada e o resultado do teste da consulta.

    Captura de tela que mostra o editor completo do SQL.

  6. Selecione o texto na seção Saídas e insira um nome para o nó de destino. O operador SQL dá suporte a todos os destinos do Real-Time Intelligence, incluindo um eventhouse, um lakehouse, um ativador ou um stream.

    Captura de tela que mostra a área Saídas com o botão de mais selecionado.

  7. Especifique um alias ou nome para o destino de saída em que os dados processados por meio do operador SQL são gravados.

    Captura de tela que mostra o nome de uma saída.

  8. Adicione uma consulta SQL para a transformação de dados necessária.

    Um fluxo de eventos é criado sobre o Azure Stream Analytics e dá suporte à mesma semântica de consulta da linguagem de consulta do Stream Analytics. Para saber mais sobre a sintaxe e o uso, consulte Azure Stream Analytics e Eventstream Query Language Reference.

    Aqui está a estrutura de consulta básica:

    SELECT 
    
        column1, column2, ... 
    
    INTO 
    
        [output alias] 
    
    FROM 
    
        [input alias] 
    

    Este exemplo de consulta mostra a detecção de altas temperaturas em uma sala a cada minuto:

    
        SELECT 
        System.Timestamp AS WindowEnd, 
        roomId, 
        AVG(temperature) AS AvgTemp 
    INTO 
        output 
    FROM 
        input 
    GROUP BY 
        roomId, 
        TumblingWindow(minute, 1) 
    HAVING 
        AVG(temperature) > 75 
    

    Este exemplo de consulta mostra uma CASE instrução para categorizar a temperatura:

    SELECT
        deviceId, 
        temperature, 
        CASE  
            WHEN temperature > 85 THEN 'High' 
            WHEN temperature BETWEEN 60 AND 85 THEN 'Normal' 
            ELSE 'Low' 
        END AS TempCategory 
    INTO 
        CategorizedTempOutput 
    FROM 
        SensorInput 
    
  9. Na faixa de opções, use o comando Testar consulta para validar a lógica de transformação. Os resultados da consulta de teste aparecem na guia Resultado do teste .

    Captura de tela que mostra um resultado de teste.

  10. Ao concluir o teste, selecione Salvar na faixa de opções para voltar à tela do fluxo de eventos.

    Captura de tela que mostra a faixa de opções de uma consulta, incluindo comandos para testar a consulta e salvar.

  11. No painel código SQL , se o botão Salvar estiver habilitado, selecione-o para salvar as configurações.

    Captura de tela que mostra o painel código SQL e o botão Salvar.

  12. Configure o destino.

    Captura de tela que mostra um fluxo de eventos concluído.

Limitations

  • O operador SQL foi projetado para centralizar toda a lógica de transformação. Como resultado, você não pode usá-lo junto com outros operadores internos no mesmo caminho de processamento. Também não há suporte para encadeamento de vários operadores SQL em um único caminho. Além disso, o operador SQL pode enviar dados de saída apenas para o nó de destino na topologia.

  • Atualmente, a criação de topologias eventstream só tem suporte por meio da interface do usuário. O suporte à API REST para o operador SQL ainda não está disponível.