Sökfrågeloggning
Viktig
Azure HDInsight på AKS drogs tillbaka den 31 januari 2025. Läs mer med det här meddelandet.
Du måste migrera dina arbetsbelastningar till Microsoft Fabric- eller en motsvarande Azure-produkt för att undvika plötsliga uppsägningar av dina arbetsbelastningar.
Viktig
Den här funktionen är för närvarande i förhandsversion. De kompletterande användningsvillkoren för Förhandsversioner av Microsoft Azure innehåller fler juridiska villkor som gäller för Azure-funktioner som är i betaversion, förhandsversion eller på annat sätt ännu inte har gjorts allmänt tillgängliga. Information om den här specifika förhandsversionen finns i Azure HDInsight på AKS-förhandsversionsinformation. För frågor eller funktionsförslag, skicka en förfrågan till AskHDInsight med informationen och följ oss för fler uppdateringar från Azure HDInsight Community.
Trino stöder anpassade händelselyssnare som kan användas för att lyssna efter frågelivscykelhändelser. Du kan skapa egna händelselyssnare eller använda ett inbyggt plugin-program från HDInsight på AKS som loggar händelser till Azure Blob Storage.
Du kan aktivera inbyggd frågeloggning på två sätt:
Du kan aktivera inbyggd frågeloggning när du skapar Trino-kluster genom att aktivera hive-katalogen.
Du kan aktivera inbyggd frågeloggning i klustret med hjälp av ARM-mallen.
Den här artikeln beskriver tillägg av frågeloggning i klustret med hjälp av ARM-mall.
Förutsättningar
- Ett fungerande Trino-kluster med HDInsight på AKS.
- Skapa ARM-mall för klustret.
- Granska det fullständiga klusterexemplet för ARM-mallen.
- Kunskaper om ARM-mallredigering och distribution.
Aktivera frågeloggning
Om du vill aktivera det inbyggda plugin-programmet för frågeloggning i ditt Trino-kluster lägger du till/uppdaterar avsnitt clusterProfile.trinoProfile.userTelemetrySpec
med följande egenskaper i din kluster-ARM-mall.
Egenskap | Beskrivning |
---|---|
path |
Fullständigt kvalificerad sökväg till en katalog som används som en rot för att samla in olika frågeloggar. |
hivecatalogName |
Den här katalogen används för att montera externa tabeller på filerna som skrivits i lagringskontot. Den här katalogen måste läggas till i ditt kluster. Lägg till hive-katalog. |
hivecatalogSchema |
Plugin-programmet för frågeloggning använder det här schemat för att montera den externa tabellen för loggarna. Plugin-programmet skapar det här schemat om det inte redan finns. Standardvärde – trinologs |
partitionRetentionInDays |
Insticksprogrammet för loggning av förfrågningar raderar partitionerna i loggtabellerna, som är äldre än vad den angivna konfigurationen specificerar. Standardvärde – 365 |
I följande exempel visas hur en frågeloggning aktiveras i ett Trino-kluster. Lägg till den här exempel-json-filen under [*].properties.clusterProfile
i ARM-mallen.
"trinoProfile": {
"userTelemetrySpec": {
"storage": {
"path": "https://querylogstorageaccount.blob.core.windows.net/logs/trinoquerylogs",
"hivecatalogName": "hive",
"hivecatalogSchema": "trinologs",
"partitionRetentionInDays": 365
}
}
}
Distribuera den uppdaterade ARM-mallen för att återspegla ändringarna i klustret. Lär dig hur du distribuerar en ARM-mall.
Not
Plugin-programmet använder användartilldelad hanterad identitet (MSI) som är kopplad till klustret för att autentisera mot lagringen. Lägg till
Contributor
ochStorage Blob Data Owner
åtkomst till MSI för att säkerställa att plugin-programmet kan skriva loggar till lagringskontot.
Användartilldelat MSI-namn visas i egenskapenmsiResourceId
i klustrets resurs-JSON. Lär dig hur du tilldelar en roll.PartitionRetentionInDays tar bara bort metadatapartitionen från den monterade tabellen, den tar inte bort data. Rensa data enligt dina behov om de inte behövs längre.
Metadatahantering
Om användaren anger ett katalognamn i egenskapen hiveCatalogName
monterar plugin-programmet loggfilerna som skrivits i lagringskontot som externa tabeller och vyer, som kan efterfrågas via Trino.
Plugin-programmet skapar tre tabeller och tre vyer som kan användas för att köra frågor mot livscykelhändelserna (QueryCompletedEvent
, QueryCreatedEvent
och SplitCompletedEVent
). Dessa tabeller och &-vyer skapas under den katalog och det schema som tillhandahålls som användarens indata.
Namn på tabeller:
-
querycompleted
: InnehållerQueryCompleted
händelser som utlösts av Trino. -
querycreated
: InnehållerQueryCreatedEvents
utlöst av Trino. -
splitcompleted
: InnehållerSplitCompletedEvents
utlöst av Trino.
Namn på vyer:
vquerycompleted
vquerycreated
vsplitcompleted
Not
Användare uppmanas att använda vyerna eftersom de är immuna mot underliggande schemaändringar och tar hänsyn till den beskrivna tabellen.
Arkivering av tabeller
Insticksprogrammet stöder arkivering av (N-1)e tabellen i det scenario där användaren bestämmer sig för att ändra loggarnas path
eller externa lagringsplats.
Om det händer byter plugin-programmet namn på tabellen som pekar på den gamla sökvägen som <table_name>_archived, vyn som skapas kommer att förena resultatet av aktuella och arkiverade tabeller i det här scenariot.
Skapa ditt anpassade plugin-program
Du kan också skapa ett anpassat plugin-program för händelselyssnare, följa anvisningarna i dokument, Distribuera anpassade plugin-program genom att följa distributionssteg för plugin-program.