Händelser
31 mars 23 - 2 apr. 23
Den största utbildningshändelsen för Infrastruktur, Power BI och SQL. 31 mars – 2 april. Använd koden FABINSIDER för att spara 400 USD.
Anmäl dig i dagDen här webbläsaren stöds inte längre.
Uppgradera till Microsoft Edge och dra nytta av de senaste funktionerna och säkerhetsuppdateringarna, samt teknisk support.
Att analysera klickströmsdata är ett effektivt sätt för företag att optimera webbplatstrafik och få insikter om användarbeteende. Den här snabbstarten beskriver hur du kan skapa ett strömmande program för att analysera webbplatsklickströmsdata.
Metoden som beskrivs i den här guiden använder ett PowerShell-skript för att distribuera Azure-resurser med automatiskt genererade exempeldataströmmar. Med automatiskt genererade data kan du utforska olika scenarier för dataströmanalys och enkelt distribuera Azure-resurser.
Här är de vanligaste scenarierna för bearbetning och analys av clickstream:
I det här exemplet lär du dig att extrahera GET
och POST
begära från en webbplats clickstream och lagra utdataresultatet i en Azure Blob Storage. Här är arkitekturen för det här exemplet:
Exempel på en webbplats clickstream:
{
"EventTime": "2022-09-09 08:58:59 UTC",
"UserID": 465,
"IP": "145.140.61.170",
"Request": {
"Method": "GET",
"URI": "/index.html",
"Protocol": "HTTP/1.1"
},
"Response": {
"Code": 200,
"Bytes": 42682
},
"Browser": "Chrome"
}
Vi kommer att använda skripten som är tillgängliga på GitHub-lagringsplatsen för att distribuera våra nödvändiga resurser:
Öppna PowerShell från Start-menyn och klona den här GitHub-lagringsplatsen till din arbetskatalog.
git clone https://github.com/Azure/azure-stream-analytics.git
Gå till mappen BuildApplications .
cd .\azure-stream-analytics\BuildApplications\
Logga in på Azure och ange dina Azure-autentiseringsuppgifter i popup-webbläsaren.
Connect-AzAccount
Ersätt $subscriptionId
med ditt Azure-prenumerations-ID och kör följande kommando för att distribuera Azure-resurser. Den här processen kan ta några minuter att slutföra.
.\CreateJob.ps1 -job ClickStream-Filter -eventsPerMinute 11 -subscriptionid $subscriptionId
eventsPerMinute
är indatahastigheten för genererade data. I det här fallet genererar indatakällan 11 händelser per minut.När distributionen är klar öppnas webbläsaren automatiskt och du kan se en resursgrupp med namnet ClickStream-Filter-rg-* i Azure Portal. Resursgruppen innehåller följande fem resurser:
Resurstyp | Name | Beskrivning |
---|---|---|
Azure-funktion | Clickstream* | Generera clickstream-data |
Event Hubs | Clickstream* | Mata in clickstream-data för användning |
Stream Analytics-jobb | ClickStream-Filter | Definiera en fråga för att extrahera GET begäranden från clickstream-indata |
Blob Storage | Clickstream* | Utdatamål för ASA-jobbet |
App Service-plan | Clickstream* | En nödvändighet för Azure Function |
Grattis! Du har distribuerat ett strömmande program för att extrahera begäranden från en webbplats clickstream.
ASA-jobbet ClickStream-Filter använder följande fråga för att extrahera HTTP-begäranden från klickströmmen. Välj Testfråga i frågeredigeraren för att förhandsgranska utdataresultatet.
SELECT System.Timestamp Systime, UserId, Request.Method, Response.Code, Browser
INTO BlobOutput
FROM ClickStream TIMESTAMP BY Timestamp
WHERE Request.Method = 'GET' or Request.Method = 'POST'
Det finns exempelkoder i frågekommentarna som du kan använda för andra dataströmanalysscenarier med en ströminmatning.
Antal klick för varje timme
select System.Timestamp as Systime, count( * )
FROM clickstream
TIMESTAMP BY EventTime
GROUP BY TumblingWindow(hour, 1)
Välj distinkt användare
SELECT *
FROM clickstream
TIMESTAMP BY Time
WHERE ISFIRST(hour, 1) OVER(PARTITION BY userId) = 1
Alla utdataresultat lagras som JSON
en fil i Blog Storage. Du hittar den via: Jobbutdata för Blob Storage-containrar >>.
Om du vill ta reda på användarnamnet för klickströmmen med hjälp av en användarfil i lagringen kan du ansluta klickströmmen med en referensinmatning enligt följande arkitektur:
Anta att du har slutfört stegen i föregående exempel och kör följande kommandon för att skapa en ny resursgrupp:
Ersätt $subscriptionId
med ditt Azure-prenumerations-ID och kör följande kommando för att distribuera Azure-resurser. Den här processen kan ta några minuter att slutföra.
.\CreateJob.ps1 -job ClickStream-RefJoin -eventsPerMinute 11 -subscriptionid $subscriptionId
När distributionen är klar öppnas webbläsaren automatiskt och du kan se en resursgrupp med namnet ClickStream-RefJoin-rg-* i Azure Portal. Resursgruppen innehåller fem resurser.
ASA-jobbet ClickStream-RefJoin använder följande fråga för att koppla clickstream med sql-referensindata.
CREATE TABLE UserInfo(
UserId bigint,
UserName nvarchar(max),
Gender nvarchar(max)
);
SELECT System.Timestamp Systime, ClickStream.UserId, ClickStream.Response.Code, UserInfo.UserName, UserInfo.Gender
INTO BlobOutput
FROM ClickStream TIMESTAMP BY EventTime
LEFT JOIN UserInfo ON ClickStream.UserId = UserInfo.UserId
Grattis! Du har distribuerat ett strömmande program för att ansluta din användarfil med en klickström på webbplatsen.
Om du har provat det här projektet och inte längre behöver resursgruppen kör du det här kommandot i PowerShell för att ta bort resursgruppen.
Remove-AzResourceGroup -Name $resourceGroup
Om du planerar att använda det här projektet i framtiden kan du hoppa över att ta bort det och stoppa jobbet för tillfället.
Om du vill veta mer om Azure Stream Analytics kan du fortsätta till följande artiklar:
Händelser
31 mars 23 - 2 apr. 23
Den största utbildningshändelsen för Infrastruktur, Power BI och SQL. 31 mars – 2 april. Använd koden FABINSIDER för att spara 400 USD.
Anmäl dig i dagUtbildning
Certifiering
Microsoft-certifierad: Azure Data Engineer Associate - Certifications
Visa förståelse för vanliga datateknikuppgifter för att implementera och hantera arbetsbelastningar för datateknik i Microsoft Azure med hjälp av ett antal Azure-tjänster.