Dela via


Bearbeta händelsedata med redigeringsprogrammet för händelseprocessorn

Redigeraren för händelseprocessorn är en kodfri upplevelse som gör att du kan dra och släppa för att utforma logiken för bearbetning av händelsedata. Den här artikeln beskriver hur du använder redigeraren för att utforma bearbetningslogik.

Kommentar

Förbättrade funktioner är aktiverade som standard när du skapar eventstreams nu. Om du har eventstreams som har skapats med standardfunktioner fortsätter dessa händelseströmmar att fungera. Du kan fortfarande redigera och använda dem som vanligt. Vi rekommenderar att du skapar en ny händelseström för att ersätta standardhändelseströmmar så att du kan dra nytta av ytterligare funktioner och fördelar med förbättrade eventstreams.

Förutsättningar

Innan du börjar måste du uppfylla följande krav:

  • Åtkomst till en arbetsyta i infrastrukturkapacitetslicensläget (eller) utvärderingslicensläget med deltagare eller högre behörigheter.

Utforma händelsebearbetningen med redigeraren

Följ dessa steg om du vill utföra dataströmbearbetningsåtgärder på dina dataströmmar med hjälp av ett redigeringsprogram utan kod:

  1. Välj Redigera i menyfliksområdet om du inte redan är i redigeringsläget. Kontrollera att den överordnade noden för de åtgärder som är anslutna har ett schema.

    Skärmbild som visar redigeraren för händelseprocessorn i redigeringsläget.

  2. Om du vill infoga en händelsebearbetningsoperator mellan strömnoden och målet i redigeringsläget kan du använda någon av följande två metoder:

    • Infoga operatorn direkt från anslutningslinjen. Hovra på anslutningslinjen och välj + sedan knappen. En nedrullningsbara meny visas på anslutningslinjen och du kan välja en operator på den här menyn.

      Skärmbild som visar valet av knappen + på anslutningsraden.

    • Infoga operatorn från menyfliksområdet eller arbetsytan.

      1. Du kan välja en operator på menyn Transformera händelser i menyfliksområdet.

        Skärmbild som visar markeringen Hantera fält i menyfliksområdet.

        Du kan också hovra på en av noderna och sedan välja + knappen om du har tagit bort anslutningslinjen. En nedrullningsbara meny visas bredvid noden och du kan välja en operator på den här menyn.

        Skärmbild som visar valet av pluslänken på anslutningsraden.

      2. När du har infogat operatorn måste du återansluta dessa noder. Hovra på den vänstra kanten av strömnoden och välj och dra sedan den gröna cirkeln för att ansluta den till operatornoden Hantera fält . Följ samma process för att ansluta operatornoden Hantera fält till målet.

        Skärmbild som visar hur du ansluter panelen Hantera fält.

  3. Välj operatornoden Hantera fält . I konfigurationspanelen Hantera fält väljer du de fält som du vill mata ut. Om du vill lägga till alla fält väljer du Lägg till alla fält. Du kan också lägga till ett nytt fält med de inbyggda funktionerna för att aggregera data från uppströms. (För närvarande är de inbyggda funktioner som vi stöder vissa funktioner i String Functions, Date and Time Functions, Mathematical Functions. Sök efter dem genom att söka på built-in.)

    Skärmbild som visar hur du konfigurerar panelen Hantera fält.

  4. När du har konfigurerat operatorn Hantera fält väljer du Uppdatera för att verifiera testresultatet som genererats av den här operatorn.

    Skärmbild som visar den uppdaterade sidan.

  5. Om du har några konfigurationsfel visas de på fliken Redigeringsfel i den nedre rutan.

    Skärmbild som visar fliken Redigeringsfel.

  6. Om testresultatet ser korrekt ut väljer du Publicera för att spara logiken för händelsebearbetning och återgå till livevyn.

    Skärmbild som visar knappen Publicera i det markerade menyfliksområdet.

  7. När du har slutfört de här stegen kan du visualisera hur din händelseström börjar strömma och bearbeta data i livevyn.

    Skärmbild som visar livevyn.

Redigerare för händelsebearbetning

Med redigeraren för händelseprocessorn (arbetsytan i redigeringsläge) kan du omvandla data till olika mål. Ange Redigeringsläge för att utforma dataströmbearbetningsåtgärder för dina dataströmmar.

Skärmbild som visar redigeraren för händelsebearbetning för en händelseström med förbättrade funktioner.

Redigeringsläget innehåller en arbetsyta och ett nedre fönster där du kan:

  • Skapa logiken för händelsedatatransformering med dra och släpp.
  • Förhandsgranskningstestresultat i var och en av bearbetningsnoderna från början till slut.
  • Identifiera eventuella redigeringsfel i bearbetningsnoderna.

Redigeringslayout

Skärmbild som visar layouten för Redigeraren för händelsebearbetning för en händelseström med förbättrade funktioner.

  • Menyfliksområde och Arbetsyta (numrerad en i bilden): I det här fönstret kan du utforma datatransformeringslogiken genom att välja en operator (från menyn Transformera händelser) och ansluta strömmen och målnoderna via den nyligen skapade operatornoden. Du kan dra och släppa anslutningslinjer eller välja och ta bort anslutningar.
  • Höger redigeringsfönster (två i bilden): Med det här fönstret kan du konfigurera den valda noden eller visa strömnamnet.
  • Nedre fönstret med felflikar för dataförhandsgranskning och redigering (tre i bilden): I det här fönstret förhandsgranskar du testresultatet i en vald nod med fliken Testresultat. Fliken Redigeringsfel visar en lista över ofullständiga eller felaktiga konfigurationer i åtgärdsnoderna.

Nodtyper och exempel som stöds

Här är de måltyper som har stöd för att lägga till operatorer före inmatning:

  • Sjöhus
  • Eventhouse (Händelsebearbetning före inmatning)
  • Härledd ström
  • Aktivare

Kommentar

För mål som inte stöder tillägg av förinmatningsoperator kan du först lägga till en härledd ström som utdata från din operator. Lägg sedan till ditt avsedda mål i den här här härledda dataströmmen.

Skärmbild som visar layouten för redigeringsprogrammet för händelsebearbetning med filterutdata till ett mål som inte stöds.

Med händelseprocessorn i Lakehouse och KQL Database (händelsebearbetning före inmatning) kan du bearbeta dina data innan de matas in i målet.

Förutsättningar

Innan du börjar måste du uppfylla följande krav:

  • Åtkomst till en arbetsyta i infrastrukturkapacitetslicensläget (eller) utvärderingslicensläget med deltagare eller högre behörigheter.
  • Få åtkomst till en arbetsyta med deltagarbehörigheter eller högre behörigheter där din lakehouse- eller KQL-databas finns.

Utforma händelsebearbetningen med redigeraren

Så här utformar du händelsebearbetningen med redigeraren för händelseprocessorn:

  1. Lägg till ett Lakehouse-mål och ange nödvändiga parametrar i den högra rutan. (Se Lägg till och hantera ett mål i en händelseström för detaljerade instruktioner. )

  2. Välj Öppna händelseprocessor. Skärmen Redigerare för händelsebearbetning visas.

    Skärmbild som visar var du väljer Öppna händelseprocessor på konfigurationsskärmen för Lakehouse-mål.

  3. I arbetsytan Händelsebearbetningsredigerare väljer du noden eventstream. Du kan förhandsgranska dataschemat eller ändra datatypen i det högra fönstret Händelseström .

    Skärmbild som visar dataschemat i den högra rutan på skärmen Redigerare för händelsebearbetning.

  4. Om du vill infoga en händelsebearbetningsoperator mellan den här händelseströmmen och målet i redigeraren för händelseprocessorn kan du använda någon av följande två metoder:

    1. Infoga operatorn direkt från anslutningslinjen. Hovra på anslutningslinjen och välj sedan knappen "+". En nedrullningsbara meny visas på anslutningslinjen och du kan välja en operator på den här menyn.

      Skärmbild som visar var du ska hovra på anslutningslinjen för att infoga en nod.

    2. Infoga operatorn från menyfliksområdet eller arbetsytan.

      1. Du kan välja en operator på menyn Åtgärder i menyfliksområdet. Du kan också hovra på en av noderna och sedan välja knappen "+" om du har tagit bort anslutningslinjen. En nedrullningsbara meny visas bredvid noden och du kan välja en operator på den här menyn.

        Skärmbild som visar var du väljer en operator från menyn Åtgärder.

        Skärmbild som visar var du hovrar på noder för att infoga en nod.

      2. Slutligen måste du återansluta dessa noder. Hovra på den vänstra kanten av händelseströmsnoden och välj och dra sedan den gröna cirkeln för att ansluta den till operatornoden Hantera fält . Följ samma process för att ansluta operatornoden Hantera fält till lakehouse-noden.

        Skärmbild som visar var noderna ska anslutas.

  5. Välj operatornoden Hantera fält . I konfigurationspanelen Hantera fält väljer du de fält som du vill mata ut. Om du vill lägga till alla fält väljer du Lägg till alla fält. Du kan också lägga till ett nytt fält med de inbyggda funktionerna för att aggregera data från uppströms. (För närvarande är de inbyggda funktioner som vi stöder vissa funktioner i Strängfunktioner, datum- och tidsfunktioner, matematiska funktioner. Sök efter dem genom att söka efter "inbyggda".)

    Skärmbild som visar hur du konfigurerar operatorn.

  6. När du har konfigurerat operatorn Hantera fält väljer du Uppdatera statisk förhandsversion för att förhandsgranska de data som operatorn genererar.

    Skärmbild som visar hur du förhandsgranskar data i redigeringsprogrammet för händelseprocessorn.

  7. Om du har några konfigurationsfel visas de på fliken Redigeringsfel i det nedre fönstret.

    Skärmbild som visar fliken redigeringsfel i redigeraren för händelseprocessorn.

  8. Om dina förhandsgranskningsdata ser korrekta ut väljer du Klar för att spara händelsebearbetningslogiken och återgå till konfigurationsskärmen för Lakehouse-målet.

  9. Välj Lägg till för att slutföra skapandet av lakehouse-målet.

Redigerare för händelseprocessor

Med händelseprocessorn kan du omvandla de data som du matar in till ett lakehouse-mål. När du konfigurerar lakehouse-målet hittar du alternativet Öppna händelseprocessor mitt på konfigurationsskärmen för Lakehouse-mål .

Skärmbild som visar var händelseprocessorredigeraren ska öppnas.

När du väljer Öppna händelseprocessor startas skärmen Redigerare för händelsebearbetning, där du kan definiera datatransformeringslogiken.

Händelseprocessorredigeraren innehåller en arbetsyta och ett nedre fönster där du kan:

  • Skapa logiken för händelsedatatransformering med dra och släpp.
  • Förhandsgranska data i var och en av bearbetningsnoderna från början till slut.
  • Identifiera eventuella redigeringsfel i bearbetningsnoderna.

Skärmlayouten är som huvudredigeraren. Den består av tre avsnitt som visas i följande bild:

Skärmbild av skärmen Händelsebearbetningsredigerare som anger de tre huvudavsnitten.

  1. Arbetsyta med diagramvy: I det här fönstret kan du utforma datatransformeringslogiken genom att välja en operator (från åtgärdsmenyn ) och ansluta händelseströmmen och målnoderna via den nyligen skapade operatornoden. Du kan dra och släppa anslutningslinjer eller välja och ta bort anslutningar.

  2. Höger redigeringsfönster: Med det här fönstret kan du konfigurera den valda åtgärdsnoden eller visa schemat för händelseströmmen och målet.

  3. Nedre fönstret med felflikar för dataförhandsgranskning och redigering: I det här fönstret förhandsgranskar du data i en vald nod med fliken Dataförhandsgranskning . Fliken Redigeringsfel visar en lista över ofullständiga eller felaktiga konfigurationer i åtgärdsnoderna.

Redigeringsfel

Redigeringsfel refererar till de fel som uppstår i redigeraren för händelseprocessor på grund av ofullständig eller felaktig konfiguration av åtgärdsnoderna, vilket hjälper dig att hitta och åtgärda potentiella problem i händelseprocessorn.

Du kan visa redigeringsfel i den nedre panelen i redigeraren för händelseprocessorn. I den nedre panelen visas alla redigeringsfel. Varje redigeringsfel har fyra kolumner:

  • Nod-ID: Anger ID för åtgärdsnoden där redigeringsfelet inträffade.
  • Nodtyp: Anger typen av åtgärdsnod där redigeringsfelet inträffade.
  • Nivå: Anger allvarlighetsgraden för redigeringsfelet, det finns två nivåer, Fatal och Information. Redigeringsfel på dödlig nivå innebär att händelseprocessorn har allvarliga problem och inte kan sparas eller köras. Redigeringsfel på informationsnivå innebär att händelseprocessorn har några tips eller förslag som kan hjälpa dig att optimera eller förbättra händelseprocessorn.
  • Fel: Anger den specifika informationen om redigeringsfelet och beskriver kort orsaken till och effekten av redigeringsfelet. Du kan välja fliken Visa information för att visa information.

Eftersom Eventstream och Eventhouse stöder olika datatyper kan processen för datatypskonvertering generera redigeringsfel.

I följande tabell visas resultatet av datatypskonvertering från Eventstream till Eventhouse. Kolumnerna representerar de datatyper som stöds av Eventstream och raderna representerar de datatyper som stöds av Eventhouse. Cellerna anger konverteringsresultatet, vilket kan vara något av följande tre:

✔️ Anger lyckad konvertering, inga fel eller varningar genereras.

❌ Anger omöjlig konvertering, allvarligt redigeringsfel genereras. Felmeddelandet liknar: Datatypen "{1}" för kolumnen "{0}" matchar inte den förväntade typen "{2}" i den valda KQL-tabellen och kan inte konverteras automatiskt.

⚠️ Anger möjlig men felaktig konvertering, informationsredigeringsfel genereras. Felmeddelandet liknar: Datatypen "{1}" för kolumnen "{0}" matchar inte exakt den förväntade typen "{2}" i den valda KQL-tabellen. Den konverteras automatiskt till "{2}".

sträng bool datetime dynamisk guid heltal lång real tidsintervall decimal
Int64 ✔️ ⚠️ ✔️ ⚠️ ✔️
Dubbel ✔️ ⚠️ ⚠️
Sträng ✔️ ✔️
DatumTid ⚠️ ✔️ ✔️
Post ⚠️ ✔️
Matris ⚠️ ✔️

Som du ser i tabellen lyckas vissa datatypkonverteringar, till exempel sträng till sträng. Dessa konverteringar genererar inga redigeringsfel och påverkar inte åtgärden för händelseprocessorn.

Vissa datatypkonverteringar är omöjliga, till exempel int to string. Dessa konverteringar genererar redigeringsfel på dödlig nivå, vilket gör att händelseprocessorn inte kan spara. Du måste ändra datatypen antingen i din Eventstream eller i KQL-tabellen för att undvika dessa fel.

Vissa datatypkonverteringar är möjliga, men inte exakta, till exempel int till real. Dessa konverteringar genererar redigeringsfel på informationsnivå som anger matchningsfel mellan datatyper och automatiska konverteringsresultat. Dessa konverteringar kan leda till att dina data förlorar precision eller struktur. Du kan välja om du vill ignorera dessa fel eller ändra datatypen antingen i din Eventstream eller i KQL-tabellen för att optimera händelseprocessorn.

Transformeringsoperatorer

Händelseprocessorn tillhandahåller sex operatorer som du kan använda för att transformera dina händelsedata enligt dina affärsbehov.

Skärmbild som visar de operatorer som är tillgängliga i menyn Åtgärder.

Aggregera

Använd aggregeringstransformeringen för att beräkna en aggregering (Summa, Minimum, Maximum eller Average) varje gång en ny händelse inträffar under en tidsperiod. Den här åtgärden gör det också möjligt att byta namn på dessa beräknade kolumner och filtrera eller segmentera aggregeringen baserat på andra dimensioner i dina data. Du kan ha en eller flera sammansättningar i samma transformering.

  • Operatornamn: Ange namnet på aggregeringsåtgärden.
  • Lägg till aggregeringsfunktion: Lägg till en eller flera aggregeringar i aggregerad åtgärd.
  • Typ: Välj en aggregeringstyp: Sum, Minimum, Maximum eller Average.
  • Fält: Välj den kolumn som ska bearbetas.
  • Namn: Definiera ett namn för den här aggregeringsfunktionen.
  • Partitionera efter: Välj en kolumn för att gruppera aggregeringen.
  • Aggregerade värden inom den senaste: Ange ett tidsfönster för aggregering (standardvärdet är 5 sekunder).

Skärmbild som visar aggregerad operatorkonfiguration och testresultat.

Visa

Använd transformeringen Expandera matris för att skapa en ny rad för varje värde i en matris. Du kan välja skapa rad för matris som saknas/är tom eller skapa inte rad för matrisen saknas/är tom.

Skärmbild som visar expandera operatorns konfigurations- och testresultat.

Filtrera

Använd filtertransformeringen för att filtrera händelser baserat på värdet för ett fält i indata. Beroende på datatypen (tal eller text) behåller omvandlingen de värden som matchar det valda villkoret, till exempel är null eller inte är null.

Gruppera efter

Använd gruppen efter transformering för att beräkna aggregeringar för alla händelser inom ett visst tidsfönster. Du kan gruppera efter värden i ett eller flera fält. Det är som om aggregeringstransformeringen tillåter namnbyte av kolumner, men ger fler alternativ för aggregering och innehåller mer komplexa alternativ för tidsfönster. Precis som aggregering kan du lägga till mer än en aggregering per transformering.

De aggregeringar som är tillgängliga i omvandlingen är:

  • Medel
  • Antal
  • Högsta
  • Minimal
  • Percentil (kontinuerlig och diskret)
  • Standardavvikelse
  • Sum
  • Varians

I scenarier med tidsuppspelning är det ett vanligt mönster att utföra åtgärder på data som finns i temporala fönster. Händelseprocessorn stöder fönsterfunktioner som är integrerade med operatorn Gruppera efter. Du kan definiera det i inställningen för den här operatorn.

Skärmbild som visar operatorn Gruppera efter som är tillgänglig i redigeringsprogrammet för händelseprocessorn.

Hantera fält

Med transformering av hantera fält kan du lägga till, ta bort, ändra datatyp eller byta namn på fält som kommer in från en indata eller en annan transformering. Med inställningarna för sidofönstret kan du lägga till ett nytt fält genom att välja Lägg till fält, lägga till flera fält eller lägga till alla fält samtidigt.

Skärmbild som visar operatorn Hantera fält som är tillgänglig i redigeringsprogrammet för händelseprocessorn.

Dessutom kan du lägga till ett nytt fält med de inbyggda funktionerna för att aggregera data från uppströms. (För närvarande är de inbyggda funktioner som vi stöder vissa funktioner i Strängfunktioner, datum- och tidsfunktioner och matematiska funktioner. Sök efter dem genom att söka efter "inbyggda".)

Skärmbild som visar de inbyggda funktionerna i fältet Hantera.

I följande tabell visas resultatet av att ändra datatypen med hjälp av hanteringsfält. Kolumnerna representerar de ursprungliga datatyperna och raderna representerar måldatatypen.

  • Om det finns en ✔️ i cellen innebär det att den kan konverteras direkt och alternativet för måldatatyp visas i listrutan.
  • Om det finns en ❌ i cellen innebär det att den inte kan konverteras och att alternativet för måldatatyp inte visas i listrutan.
  • Om det finns en ⚠️ i cellen innebär det att den kan konverteras, men den måste uppfylla vissa villkor, till exempel att strängformatet måste uppfylla kraven för måldatatypen. När du till exempel konverterar från sträng till int måste strängen vara ett giltigt heltalsformulär, till exempel 123, inte abc.
Int64 Dubbel String Datetime Post Matris
Int64 ✔️ ✔️ ✔️
Dubbel ✔️ ✔️ ✔️
Sträng ⚠️ ⚠️ ✔️ ⚠️
DatumTid ✔️ ✔️
Post ✔️ ✔️
Matris ✔️ ✔️

Union

Använd Unionstransformeringen för att ansluta två eller flera noder och lägga till händelser som delade fält (med samma namn och datatyp) i en tabell. Fält som inte matchar tas bort och ingår inte i utdata.

Anslut

Använd kopplingstransformeringen för att kombinera händelser från två indata baserat på de fältpar som du väljer. Om du inte väljer ett fältpar baseras kopplingen som standard på tid. Standardvärdet är det som gör att den här omvandlingen skiljer sig från en batch.

Precis som med vanliga kopplingar har du alternativ för din kopplingslogik:

  • Inre koppling: Inkludera endast poster från båda tabellerna där paret matchar.
  • Vänster yttre koppling: Inkludera alla poster från den vänstra (första) tabellen och endast posterna från den andra som matchar fältparet. Om det inte finns någon matchning är fälten från den andra inmatningen tomma.