Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Anmärkning
Den här handledningen är en del av en serie. För föregående avsnitt, se: Real-Time Intelligence-självstudiekurs del 3: Ange en avisering på din händelseström.
I den här delen av självstudien transformerar du data i en KQL-databas med hjälp av en uppdateringsprincip för att utlösa en automatiserad mekanism när nya data skrivs till en tabell. Principen eliminerar behovet av särskild orkestrering genom att köra en fråga för att transformera inmatade data och spara resultatet i en måltabell.
Flera uppdateringsprinciper kan definieras i en enda tabell, vilket möjliggör olika omvandlingar och sparar data till flera tabeller samtidigt. Måltabellerna kan ha ett annat schema, en kvarhållningsprincip och andra principer från källtabellen.
Flytta rådatatabellen till en Bronze-mapp
I detta steg flyttar du rådatatabellen till en bronsmapp för att organisera data i KQL-databasen.
Gå till arbetsytan där du skapade resurser.
Välj den KQL-utbildningsdatabas som du skapade tidigare.
I objektträdet under namnet på KQL-databasen väljer du den frågearbetsyta som heter Tutorial_queryset.
Kopiera och klistra in följande kommando i frågeredigeraren för att flytta tabellen RawData till en Brons-mapp. Kör frågan genom att välja knappen Kör i menyfliksområdet eller trycka på Skift + Retur.
.alter table RawData (BikepointID:string,Street:string,Neighbourhood:string,Latitude:real,Longitude:real,No_Bikes:long,No_Empty_Docks:long,Timestamp:datetime) with (folder="Bronze")Du ser en ny mapp med namnet Brons som innehåller en tabell med namnet RawData under noden Tabeller i objektträdet.
Skapa en måltabell
I det här steget skapar du en måltabell som används för att lagra data som transformeras av uppdateringsprincipen.
På en ny rad, med minst en rad mellan markören och den sista frågan, kopierar och klistrar du in följande kommando för att skapa en ny tabell med namnet TransformData med ett angivet schema.
.create table TransformedData (BikepointID: int, Street: string, Neighbourhood: string, Latitude: real, Longitude: real, No_Bikes: long, No_Empty_Docks: long, Timestamp: datetime, BikesToBeFilled: long, Action: string) with (folder="Silver")Kör kommandot för att skapa tabellen.
Du ser en ny mapp med namnet Silver som innehåller en tabell med namnet TransformData under noden Tabeller i objektträdet.
Skapa en funktion med transformeringslogik
I det här steget skapar du en lagrad funktion som innehåller transformeringslogik som ska användas i uppdateringsprincipen. Funktionen parsar kolumnen BikepointID och lägger till två nya beräknade kolumner.
Välj Databas i menyfliksområdet.
Välj + Ny>funktion.
Redigera funktionen så att den matchar följande kod eller kopiera och klistra in följande kommando i frågeredigeraren.
.create-or-alter function TransformRawData() { RawData | parse BikepointID with * "BikePoints_" BikepointID:int | extend BikesToBeFilled = No_Empty_Docks - No_Bikes | extend Action = iff(BikesToBeFilled > 0, tostring(BikesToBeFilled), "NA") }Kör kommandot för att skapa funktionen.
Du ser funktionen TransformRawData under noden Functions i objektträdet.
Tillämpa en uppdateringsprincip
I det här steget tillämpar du en uppdateringsprincip på måltabellen för att transformera data. Uppdateringsprincipen använder den lagrade funktionen TransformRawData() för att parsa kolumnen BikepointID och lägger till två nya beräknade kolumner.
Välj Databas i menyfliksområdet.
Välj + Ny>tabelluppdateringsprincip.
Redigera principen så att den matchar följande kod eller kopiera/klistra in följande kommando i frågeredigeraren.
.alter table TransformedData policy update ```[{ "IsEnabled": true, "Source": "RawData", "Query": "TransformRawData()", "IsTransactional": false, "PropagateIngestionProperties": false }]```Kör kommandot för att skapa uppdateringspolicyn.
Verifiera transformationen
I det här steget kontrollerar du att omvandlingen lyckas genom att jämföra utdata från käll- och måltabellerna.
Anmärkning
Det kan ta några sekunder att se data i den transformerade tabellen.
Kopiera och klistra in följande fråga i frågeredigeraren för att visa 10 godtyckliga poster i källtabellen. Kör frågan.
RawData | take 10Kopiera och klistra in följande fråga i frågeredigeraren för att visa 10 godtyckliga poster i måltabellen. Kör frågan.
TransformedData | take 10
Observera att kolumnen BikepointID i måltabellen inte längre innehåller prefixet "BikePoints_".
Relaterat innehåll
Mer information om aktiviteter i den här självstudien finns i: