Behandle hendelsesdata med redigeringsprogrammet for hendelsesprosessor
Redigeringsprogrammet for hendelsesbehandling er en no-code-opplevelse som lar deg dra og slippe for å utforme behandlingslogikken for hendelsesdata. Denne artikkelen beskriver hvordan du bruker redigeringsprogrammet til å utforme behandlingslogikken.
Merk
Forbedrede funksjoner aktiveres som standard når du oppretter hendelsesstrømmer nå. Hvis du har hendelsesstrømmer som ble opprettet ved hjelp av standardfunksjoner, vil disse hendelsesstrømmene fortsette å fungere. Du kan fortsatt redigere og bruke dem som vanlig. Vi anbefaler at du oppretter en ny hendelsesstrøm for å erstatte standard hendelsesstrømmer, slik at du kan dra nytte av flere funksjoner og fordeler ved forbedrede hendelsesstrømmer.
Forutsetning
Før du begynner, må du fullføre følgende forutsetninger:
- Tilgang til et arbeidsområde i lisensmodus for stoffkapasitet (eller) prøveversjonslisensmodus med bidragsyter eller høyere tillatelser.
Utforme hendelsesbehandlingen med redigeringsprogrammet
Følg disse trinnene for å utføre strømbehandlingsoperasjoner på datastrømmene ved hjelp av et redigeringsprogram uten kode:
Velg Rediger på båndet hvis du ikke allerede er i redigeringsmodus. Kontroller at oppstrømsnoden for operasjonene som er tilkoblet, har et skjema.
Hvis du vil sette inn en operator for hendelsesbehandling mellom strømnoden og målet i redigeringsmodus, kan du bruke én av følgende to metoder:
Sett inn operatoren direkte fra tilkoblingslinjen. Hold pekeren over tilkoblingslinjen, og velg + deretter knappen. En rullegardinmeny vises på tilkoblingslinjen, og du kan velge en operator fra denne menyen.
Sett inn operatoren fra båndmenyen eller lerretet.
Du kan velge en operator fra Menyen Transformer hendelser på båndet.
Alternativt kan du holde pekeren over én av nodene og deretter velge + knappen hvis du slettet tilkoblingslinjen. En rullegardinmeny vises ved siden av denne noden, og du kan velge en operator fra denne menyen.
Når du har satt inn operatoren, må du koble til disse nodene på nytt. Hold pekeren over venstre kant av strømingsnoden, og velg og dra deretter den grønne sirkelen for å koble den til operatornoden Behandle felt . Følg den samme prosessen for å koble operatornoden Behandle felt til målet.
Velg operatornoden Behandle felt. Velg feltene du vil sende, i konfigurasjonspanelet Behandle felt. Hvis du vil legge til alle feltene, velger du Legg til alle felt. Du kan også legge til et nytt felt med de innebygde funksjonene for å aggregere dataene fra oppstrøms. (For øyeblikket er de innebygde funksjonene vi støtter, noen funksjoner i strengfunksjoner, dato- og klokkeslettfunksjoner, matematiske funksjoner. Hvis du vil finne dem, søker du etter
built-in
.)Når du har konfigurert operatoren Behandle felt , velger du Oppdater for å validere testresultatet som produseres av denne operatoren.
Hvis du har konfigurasjonsfeil, vises de i fanen Redigeringsfeil i den nederste ruten.
Hvis testresultatet ser riktig ut, velger du Publiser for å lagre logikken for hendelsesbehandling og gå tilbake til Live-visning.
Når du har fullført disse trinnene, kan du visualisere hvordan hendelsesstrømmen starter strømming og behandling av data i livevisning.
Redigeringsprogram for hendelsesbehandling
Redigeringsprogrammet for hendelsesprosessor (lerretet i redigeringsmodus) lar deg transformere data til ulike mål. Angi redigeringsmodus for å utforme strømbehandlingsoperasjoner for datastrømmene.
Redigeringsmodusen inneholder et lerret og en nedre rute der du kan:
- Bygg transformasjonslogikken for hendelsesdata med dra og slipp.
- Testresultat for forhåndsvisning i hver av behandlingsnodene fra begynnelse til slutt.
- Oppdag eventuelle redigeringsfeil i behandlingsnodene.
Redigeringsprogram
- Båndmeny og lerret (nummerert én i bildet): I denne ruten kan du utforme datatransformasjonslogikken ved å velge en operator (fra Transformer hendelser-menyen) og koble til strømmen og målnodene via den nyopprettede operatornoden. Du kan dra og slippe koblingslinjer eller velge og slette tilkoblinger.
- Høyre redigeringsrute (to i bildet): Denne ruten lar deg konfigurere den valgte noden eller vise stream-navnet.
- Nederste rute med faner for forhåndsvisning av data og redigeringsfeil (tre i bildet): I denne ruten forhåndsviser du testresultatet i en valgt node med testresultatfanen. Fanen Redigeringsfeil viser eventuelle ufullstendige eller uriktige konfigurasjoner i operasjonsnodene.
Støttede nodetyper og eksempler
Her er måltypene som støtter å legge til operatorer før inntak:
- Lakehouse
- Eventhouse (hendelsesbehandling før inntak)
- Avledet strøm
- Aktivator
Merk
For mål som ikke støtter tillegg av forhåndsinntaksoperatorer, kan du først legge til en avledet strøm som utdata for operatøren. Deretter tilføyer du det tiltenkte målet til denne avledede strømmen.
Med hendelsesprosessoren i Lakehouse og KQL Database (hendelsesbehandling før inntak) kan du behandle dataene før de tas inn i målet.
Forutsetning
Før du begynner, må du fullføre følgende forutsetninger:
- Tilgang til et arbeidsområde i lisensmodus for stoffkapasitet (eller) prøveversjonslisensmodus med bidragsyter eller høyere tillatelser.
- Få tilgang til et arbeidsområde med bidragsyter- eller høyere tillatelser der lakehouse- eller KQL-databasen er plassert.
Utforme hendelsesbehandlingen med redigeringsprogrammet
Slik utformer du hendelsesbehandlingen med redigeringsprogrammet for hendelsesprosessor:
Legg til et Lakehouse-mål , og angi de nødvendige parameterne i ruten til høyre. (Se Legg til og administrer et mål i en eventstream for detaljerte instruksjoner. )
Velg Åpne hendelsesprosessor. Skjermbildet Redigeringsprogram for hendelsesbehandling vises.
Velg eventstream-noden i lerretet redigeringsprogram for hendelsesbehandling. Du kan forhåndsvise dataskjemaet eller endre datatypen i den høyre Eventstream-ruten .
Hvis du vil sette inn en operator for hendelsesbehandling mellom denne hendelsesstrømmen og målet i redigeringsprogrammet for hendelsesprosessor, kan du bruke én av følgende to metoder:
Sett inn operatoren direkte fra tilkoblingslinjen. Hold pekeren over koblingslinjen, og velg deretter +-knappen. En rullegardinmeny vises på tilkoblingslinjen, og du kan velge en operator fra denne menyen.
Sett inn operatoren fra båndmenyen eller lerretet.
Du kan velge en operator fra Operasjoner-menyen på båndet. Alternativt kan du holde pekeren over én av nodene og deretter velge «+»-knappen hvis du slettet tilkoblingslinjen. En rullegardinmeny vises ved siden av denne noden, og du kan velge en operator fra denne menyen.
Til slutt må du koble til disse nodene på nytt. Hold pekeren over venstre kant av eventstream-noden, og velg og dra deretter den grønne sirkelen for å koble den til operatornoden Behandle felt . Følg samme prosess for å koble operatornoden Behandle felt til lakehouse-noden.
Velg operatornoden Behandle felt. Velg feltene du vil sende, i konfigurasjonspanelet Behandle felt. Hvis du vil legge til alle feltene, velger du Legg til alle felt. Du kan også legge til et nytt felt med de innebygde funksjonene for å aggregere dataene fra oppstrøms. (For øyeblikket er de innebygde funksjonene vi støtter noen funksjoner i Strengfunksjoner, dato- og klokkeslettfunksjoner, matematiske funksjoner. Hvis du vil finne dem, søker du etter «innebygd».)
Når du har konfigurert operatoren Behandle felt , velger du Oppdater statisk forhåndsvisning for å forhåndsvise dataene denne operatoren produserer.
Hvis du har konfigurasjonsfeil, vises de i fanen Redigeringsfeil i den nederste ruten.
Hvis de forhåndsviste dataene ser riktige ut, velger du Ferdig for å lagre logikken for hendelsesbehandling og gå tilbake til konfigurasjonsskjermen for Lakehouse-målet.
Velg Legg til for å fullføre opprettingen av lakehouse-målet.
Redigeringsprogram for hendelsesprosessor
Hendelsesprosessoren gjør det mulig å transformere dataene du inntar til et lakehouse-mål. Når du konfigurerer lakehouse-målet, finner du alternativet Åpne hendelsesprosessor midt på konfigurasjonsskjermen for Lakehouse-målet .
Hvis du velger Åpne hendelsesprosessor , startes redigeringsprogrammet for hendelsesbehandling , der du kan definere datatransformasjonslogikken.
Redigeringsprogrammet for hendelsesprosessoren inneholder et lerret og en lavere rute der du kan:
- Bygg transformasjonslogikken for hendelsesdata med dra og slipp.
- Forhåndsvis dataene i hver av behandlingsnodene fra begynnelse til slutt.
- Oppdag eventuelle redigeringsfeil i behandlingsnodene.
Skjermoppsettet er som hovedredigeringsprogrammet. Den består av tre inndelinger, vist i følgende bilde:
Lerret med diagramvisning: I denne ruten kan du utforme datatransformasjonslogikken ved å velge en operator (fra Operasjoner-menyen ) og koble til hendelsesstrømmen og målnodene via den nyopprettede operatornoden. Du kan dra og slippe koblingslinjer eller velge og slette tilkoblinger.
Høyre redigeringsrute: Med denne ruten kan du konfigurere den valgte operasjonsnoden eller vise skjemaet for hendelsesstrømmen og målet.
Nederste rute med faner for forhåndsvisning av data og redigeringsfeil: I denne ruten forhåndsviser du dataene i en valgt node med fanen Forhåndsvisning av data. Fanen Redigeringsfeil viser eventuelle ufullstendige eller uriktige konfigurasjoner i operasjonsnodene.
Redigeringsfeil
Redigeringsfeil refererer til feilene som oppstår i redigeringsprogrammet for hendelsesprosessor på grunn av ufullstendig eller feil konfigurasjon av operasjonsnodene, slik at du kan finne og løse potensielle problemer i hendelsesprosessoren.
Du kan vise redigeringsfeil i det nederste panelet i redigeringsprogrammet for hendelsesprosessor. Det nederste panelet viser alle redigeringsfeilene, hver redigeringsfeil har fire kolonner:
- Node-ID: Angir ID-en for operasjonsnoden der redigeringsfeilen oppstod.
- Nodetype: Angir typen operasjonsnode der redigeringsfeilen oppstod.
- Nivå: Angir alvorlighetsgraden av redigeringsfeilen, det finnes to nivåer, kritisk og informasjon. Uopprettelig redigeringsfeil på nivå betyr at hendelsesprosessoren har alvorlige problemer og ikke kan lagres eller kjøres. Redigeringsfeil på informasjonsnivå betyr at hendelsesprosessoren har noen tips eller forslag som kan hjelpe deg med å optimalisere eller forbedre hendelsesprosessoren.
- Feil: Angir den spesifikke informasjonen om redigeringsfeilen, og beskriver kort årsaken til og virkningen av redigeringsfeilen. Du kan velge vis detaljer-fanen for å se detaljer.
Siden Eventstream og Eventhouse støtter ulike datatyper, kan prosessen med datatypekonvertering generere redigeringsfeil.
Tabellen nedenfor viser resultatene av datatypekonvertering fra Eventstream til Eventhouse. Kolonnene representerer datatypene som støttes av Eventstream, og radene representerer datatypene som støttes av Eventhouse. Cellene angir konverteringsresultatene, som kan være ett av følgende tre:
✔️ Angir vellykket konvertering, ingen feil eller advarsler genereres.
❌ Angir umulig konvertering, uopprettelig redigeringsfeil genereres. Feilmeldingen ligner på: Datatypen "{1}" for kolonnen "{0}" samsvarer ikke med den forventede typen "{2}" i den valgte KQL-tabellen, og kan ikke konverteres automatisk.
⚠️ Angir mulig, men unøyaktig konvertering, informasjonsredigeringsfeil genereres. Feilmeldingen ligner på: Datatypen "{1}" for kolonnen "{0}" samsvarer ikke nøyaktig med den forventede typen "{2}" i den valgte KQL-tabellen. Den er automatisk konvertert til «{2}».
streng | boolsk | datetime | dynamisk | Guid | heltall | lang | ekte | tidsrom | desimal | |
---|---|---|---|---|---|---|---|---|---|---|
Int64 | ❌ | ❌ | ❌ | ✔️ | ❌ | ⚠️ | ✔️ | ⚠️ | ❌ | ✔️ |
Dobbel | ❌ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ⚠️ | ❌ | ⚠️ |
Streng | ✔️ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Dato/klokkeslett | ⚠️ | ❌ | ✔️ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Oppføring | ⚠️ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Matrise | ⚠️ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Som du kan se fra tabellen, er enkelte datatypekonverteringer vellykkede, for eksempel streng til streng. Disse konverteringene genererer ingen redigeringsfeil, og påvirker ikke driften av hendelsesprosessoren.
Noen datatypekonverteringer er umulige, for eksempel int til streng. Disse konverteringene genererer uopprettelige redigeringsfeil på nivå, noe som fører til at hendelsesprosessoren ikke lagrer. Du må endre datatypen enten i Eventstream- eller KQL-tabellen for å unngå disse feilene.
Noen datatypekonverteringer er mulige, men ikke presise, for eksempel int til real. Disse konverteringene genererer redigeringsfeil på informasjonsnivå, som angir manglende samsvar mellom datatyper og de automatiske konverteringsresultatene. Disse konverteringene kan føre til at dataene mister presisjon eller struktur. Du kan velge om du vil ignorere disse feilene, eller endre datatypen enten i Eventstream- eller KQL-tabellen for å optimalisere hendelsesprosessoren.
Transformasjonsoperatorer
Hendelsesprosessoren inneholder seks operatorer, som du kan bruke til å transformere hendelsesdataene etter dine forretningsbehov.
Mengde
Bruk mengdetransformasjonen til å beregne en aggregasjon (sum, minimum, maksimum eller gjennomsnitt) hver gang en ny hendelse forekommer over en tidsperiode. Denne operasjonen gjør det også mulig å gi nytt navn til disse beregnede kolonnene, og filtrere eller kutte aggregasjonen basert på andre dimensjoner i dataene. Du kan ha én eller flere aggregasjoner i samme transformasjon.
- Operatornavn: Angi navnet på aggregasjonsoperasjonen.
- Legg til mengdefunksjon: Legg til én eller flere aggregasjoner i mengdeoperasjon.
- Type: Velg en aggregasjonstype: Sum, Minimum, Maksimum eller Gjennomsnitt.
- Felt: Velg kolonnen som skal behandles.
- Navn: Definer et navn for denne aggregasjonsfunksjonen.
- Partisjon etter: Velg en kolonne for å gruppere aggregasjonen.
- Aggreger verdier i det siste: Angi et tidsvindu for aggregasjon (standard er 5 sekunder).
Utvid
Bruk utvid matrisetransformasjonen til å opprette en ny rad for hver verdi i en matrise. Du kan velge opprett rad for manglende/tom matrise eller ikke opprette rad for manglende/tom matrise.
Filtrer
Bruk filtertransformasjonen til å filtrere hendelser basert på verdien for et felt i inndataene. Avhengig av datatypen (tall eller tekst) beholder transformasjonen verdiene som samsvarer med den valgte betingelsen, for eksempel null eller ikke er null.
Grupper etter
Bruk grupper etter transformasjon til å beregne aggregasjoner på tvers av alle hendelser i et bestemt tidsvindu. Du kan gruppere etter verdiene i ett eller flere felt. Det er som om aggregeringstransformasjonen gir mulighet for å gi nytt navn til kolonner, men gir flere alternativer for aggregering og inneholder mer komplekse alternativer for tidsvinduer. I likhet med Aggregate kan du legge til mer enn én aggregasjon per transformasjon.
Aggregasjonene som er tilgjengelige i transformasjonen, er:
- Gjennomsnitt
- Antall
- Maksimalt
- Minimum
- Persentil (kontinuerlig og diskret)
- Standardavvik
- Sum
- Avvik
I tidsstrømmingsscenarioer er det vanlig å utføre operasjoner på dataene i tidsbestemte vinduer. Hendelsesprosessoren støtter vindusfunksjoner, som er integrert med operatoren Grupper etter . Du kan definere det i innstillingen for denne operatoren.
Behandle felt
Med transformasjonen Behandle felt kan du legge til, fjerne, endre datatype eller gi nytt navn til felt som kommer inn fra en inndata eller en annen transformasjon. Innstillingene for sideruten gir deg muligheten til å legge til et nytt felt ved å velge Legg til felt, legge til flere felt eller legge til alle felt samtidig.
I tillegg kan du legge til et nytt felt med de innebygde funksjonene for å aggregere dataene fra oppstrøms. (For øyeblikket er de innebygde funksjonene vi støtter noen funksjoner i Strengfunksjoner, dato- og klokkeslettfunksjoner og matematiske funksjoner. Hvis du vil finne dem, søker du etter «innebygd».)
Tabellen nedenfor viser resultatene av å endre datatypen ved hjelp av behandle felt. Kolonnene representerer de opprinnelige datatypene, og radene representerer måldatatypen.
- Hvis det er en ✔️ i cellen, betyr det at den kan konverteres direkte, og alternativet for måldatatype vises i rullegardinlisten.
- Hvis det er en ❌ i cellen, betyr det at den ikke kan konverteres, og at alternativet for måldatatype ikke vises i rullegardinlisten.
- Hvis det er en ⚠^ i cellen, betyr det at den kan konverteres, men den må oppfylle bestemte betingelser, for eksempel strengformatet må samsvare med kravene til måldatatypen. Når du for eksempel konverterer fra streng til heltall, må strengen være et gyldig heltallsskjema, for eksempel
123
, ikkeabc
.
Int64 | Dobbel | Streng | Datetime | Spill inn | Matrise | |
---|---|---|---|---|---|---|
Int64 | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ |
Dobbel | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ |
Streng | ⚠️ | ⚠️ | ✔️ | ⚠️ | ❌ | ❌ |
Dato/klokkeslett | ❌ | ❌ | ✔️ | ✔️ | ❌ | ❌ |
Oppføring | ❌ | ❌ | ✔️ | ❌ | ✔️ | ❌ |
Matrise | ❌ | ❌ | ✔️ | ❌ | ❌ | ✔️ |
Forening
Bruk unionstransformasjonen til å koble sammen to eller flere noder og legge til hendelser som delte felt (med samme navn og datatype) i én tabell. Felt som ikke samsvarer, slippes og inkluderes ikke i utdataene.
Bli med
Bruk Sammenføyning-transformasjonen til å kombinere hendelser fra to inndata basert på feltparene du velger. Hvis du ikke velger et feltpar, er sammenføyningen basert på tid som standard. Standardverdien er det som gjør denne transformasjonen forskjellig fra en satsvis.
Som med vanlige sammenføyninger har du alternativer for sammenføyningslogikken:
- Indre sammenføyning: Inkluder bare poster fra begge tabellene der paret samsvarer.
- Venstre ytre sammenføyning: Inkluder alle poster fra den venstre (første) tabellen, og bare postene fra den andre som samsvarer med feltparet. Hvis det ikke er noen treff, er feltene fra den andre inndataene tomme.