Frågeloggning
Kommentar
Vi drar tillbaka Azure HDInsight på AKS den 31 januari 2025. Före den 31 januari 2025 måste du migrera dina arbetsbelastningar till Microsoft Fabric eller en motsvarande Azure-produkt för att undvika plötsliga uppsägningar av dina arbetsbelastningar. Återstående kluster i din prenumeration stoppas och tas bort från värden.
Endast grundläggande stöd kommer att vara tillgängligt fram till datumet för pensionering.
Viktigt!
Den här funktionen finns i förhandsgranskning. 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 släppts i allmän tillgänglighet. Information om den här specifika förhandsversionen finns i Azure HDInsight på AKS-förhandsversionsinformation. Om du vill ha frågor eller funktionsförslag skickar du en begäran på AskHDInsight med informationen och följer oss för fler uppdateringar i 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 Trino-klustret skapas 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 arm-mallexemplet för klustret.
- Kunskaper om redigering och distribution av ARM-mallar.
Aktivera frågeloggning
Om du vill aktivera det inbyggda plugin-programmet för frågeloggning i ditt Trino-kluster lägger du till/uppdaterar clusterProfile.trinoProfile.userTelemetrySpec
avsnittet med följande egenskaper i arm-klustrets mall.
Property | 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 klustret, 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 |
Plugin-programmet frågeloggning beskär partitionerna i loggtabellerna, som är äldre än den angivna konfigurationen. Standardvärde- 365 |
I följande exempel visas hur en frågeloggning aktiveras i ett Trino-kluster. Lägg till det här exemplet json 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.
Kommentar
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 imsiResourceId
egenskapen 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.
Hantering av metadata
Om användaren anger ett katalognamn i hiveCatalogName
egenskapen 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 katalogen och schemat som tillhandahålls som användarindata.
Namn på tabeller:
querycompleted
: Innehåller händelser som utlöstsQueryCompleted
av Trino.querycreated
: InnehållerQueryCreatedEvents
utlöst av Trino.splitcompleted
: InnehållerSplitCompletedEvents
utlöst av Trino.
Namn på vyer:
vquerycompleted
vquerycreated
vsplitcompleted
Kommentar
Användare uppmanas att använda vyerna eftersom de är immuna mot underliggande schemaändringar och konto för den tabell som beskrivs.
Arkivering av tabeller
Plugin-programmet stöder arkivering (N-1)den här tabellen i scenariot där användaren bestämmer sig för att ändra path
loggarnas eller den externa platsen.
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 plugin-program för anpassad händelselyssnare, följa anvisningarna i dokument, Distribuera anpassade plugin-program genom att följa distributionsstegen för plugin-program.