Freigeben über


Verarbeiten von Ereignissen mithilfe eines SQL-Operators (Vorschau)

Ein SQL-Operator (Vorschau), auch als SQL-Code-Editor bezeichnet, ist eine neue Datentransformationsfunktion in Microsoft Fabric-Ereignisstreams. SQL-Operatoren bieten eine Codebearbeitungsumgebung, in der Sie ihre eigene benutzerdefinierte Datentransformationslogik ganz einfach mithilfe einfacher SQL-Ausdrücke definieren können. In diesem Artikel wird beschrieben, wie Sie einen SQL-Operator für Datentransformationen in einem Eventstream verwenden.

Note

Namen von Ereignisstream-Artefakten, die einen Unterstrich (_) oder Punkt (.) enthalten, sind nicht mit SQL-Operatoren kompatibel. Um eine optimale Erfahrung zu erzielen, erstellen Sie einen neuen Ereignisstream, ohne Unterstriche oder Punkte im Artefaktnamen zu verwenden.

Prerequisites

  • Zugriff auf einen Arbeitsbereich im Modus der Fabric-Kapazitätslizenz oder im Modus der Testlizenz mit Berechtigungen als Beitragende oder höher.

Hinzufügen eines SQL-Operators zu einem Ereignisstream

Um Datenstromverarbeitungsvorgänge für Ihre Datenströme mithilfe eines SQL-Operators auszuführen, fügen Sie ihrem Eventstream mithilfe der folgenden Anweisungen einen SQL-Operator hinzu:

  1. Erstellen Sie einen neuen Eventstream. Fügen Sie dann einen SQL-Operator hinzu, indem Sie eine der folgenden Optionen verwenden:

    • Wählen Sie im Menüband Transformationsereignisse und dann SQL aus.

      Screenshot, der die Auswahl eines SQL-Operators im Menü zum Transformieren von Ereignissen zeigt.

    • Wählen Sie auf der Canvas Transformationsereignisse aus, oder fügen Sie das Ziel hinzu, und wählen Sie dann SQL-Code aus.

      Screenshot, der die Auswahl eines SQL-Operators in der Liste zum Transformieren von Ereignissen auf der Canvas zeigt.

  2. Ihrem Eventstream wird ein neuer SQL-Knoten hinzugefügt. Wählen Sie das Bleistiftsymbol aus, um die Einrichtung des SQL-Operators fortzusetzen.

    Screenshot, der die Auswahl des Bleistiftsymbols vom SQL-Operatorknoten zeigt.

  3. Geben Sie im SQL-Codebereich einen eindeutigen Namen für den SQL-Operatorknoten im Eventstream an.

  4. Bearbeiten Sie die Abfrage im Abfragebereich, oder wählen Sie "Abfrage bearbeiten " aus, um die Vollbild-Code-Editor-Ansicht einzugeben.

    Screenshot des Felds zum Eingeben eines Vorgangsnamens und der Schaltfläche zum Bearbeiten einer Abfrage im SQL-Codebereich.

  5. Der Vollbild-Code-Editor-Modus verfügt über einen Eingabe-/Ausgabe-Explorer-Bereich auf der linken Seite. Der Code-Editor-Abschnitt ist anpassbar, sodass Sie die Größe entsprechend Ihren Wünschen ändern können. Im Vorschauabschnitt unten können Sie sowohl Die Eingabedaten als auch das Testergebnis Ihrer Abfrage anzeigen.

    Screenshot des vollständigen SQL-Editors.

  6. Markieren Sie den Text im Ausgabeabschnitt , und geben Sie dann einen Namen für den Zielknoten ein. Der SQL-Operator unterstützt alle Real-Time Intelligence-Ziele, einschließlich eines Eventhouses, eines Lakehouse, eines Aktivators oder eines Datenstroms.

    Screenshot des Ausgabebereichs, in dem die Schaltfläche

  7. Geben Sie einen Alias oder Namen für das Ausgabeziel an, in dem die über den SQL-Operator verarbeiteten Daten geschrieben werden.

    Screenshot, der den Namen für eine Ausgabe zeigt.

  8. Fügen Sie sql-Abfrage für die erforderliche Datentransformation hinzu.

    Ein Eventstream basiert auf Azure Stream Analytics und unterstützt die gleiche Abfragesemantik der Stream Analytics-Abfragesprache. Weitere Informationen zur Syntax und Verwendung finden Sie unter Azure Stream Analytics und Eventstream Query Language Reference.

    Hier ist die grundlegende Abfragestruktur:

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

    Dieses Abfragebeispiel zeigt die Erkennung von hohen Temperaturen in einem Raum jede Minute:

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

    Dieses Abfragebeispiel zeigt eine CASE Anweisung zum Kategorisieren der Temperatur:

    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. Verwenden Sie im Menüband den Befehl " Abfrage testen ", um die Transformationslogik zu überprüfen. Testabfrageergebnisse werden auf der Registerkarte " Testergebnis " angezeigt.

    Screenshot eines Testergebnisses.

  10. Wenn Sie mit dem Testen fertig sind, wählen Sie "Im Menüband speichern " aus, um zum Eventstream-Zeichenbereich zurückzukehren.

    Screenshot des Menübands für eine Abfrage, einschließlich Befehle zum Testen der Abfrage und Zum Speichern.

  11. Wenn die Schaltfläche "Speichern" aktiviert ist, wählen Sie im BEREICH "SQL Code" die Option aus, um die Einstellungen zu speichern.

    Screenshot des SQL-Codebereichs und der Schaltfläche

  12. Konfigurieren Sie das Ziel.

    Screenshot eines abgeschlossenen Ereignisstreams.

Limitations

  • Der SQL-Operator ist so konzipiert, dass alle Transformationslogiken zentralisiert werden. Daher können Sie sie nicht zusammen mit anderen integrierten Operatoren innerhalb desselben Verarbeitungspfads verwenden. Das Verketten mehrerer SQL-Operatoren in einem einzigen Pfad wird ebenfalls nicht unterstützt. Darüber hinaus kann der SQL-Operator Ausgabedaten nur an den Zielknoten in der Topologie senden.

  • Derzeit werden Ereignisstreamtopologien nur über die Benutzeroberfläche unterstützt. DIE REST-API-Unterstützung für den SQL-Operator ist noch nicht verfügbar.