Delen via


Querylogboekregistratie

Belangrijk

Deze functie is momenteel beschikbaar in preview. De aanvullende gebruiksvoorwaarden voor Microsoft Azure Previews bevatten meer juridische voorwaarden die van toepassing zijn op Azure-functies die bèta, in preview of anderszins nog niet beschikbaar zijn in algemene beschikbaarheid. Zie Azure HDInsight op AKS Preview-informatie voor meer informatie over deze specifieke preview. Voor vragen of suggesties voor functies dient u een aanvraag in op AskHDInsight met de details en volgt u ons voor meer updates in de Azure HDInsight-community.

Trino ondersteunt aangepaste gebeurtenislisteners die kunnen worden gebruikt om te luisteren naar levenscyclusgebeurtenissen van query's. U kunt uw eigen gebeurtenislisteners schrijven of een ingebouwde invoegtoepassing van HDInsight in AKS gebruiken waarmee gebeurtenissen worden vastgelegd in Azure Blob Storage.

U kunt ingebouwde logboekregistratie van query's op twee manieren inschakelen:

  • U kunt ingebouwde querylogboekregistratie inschakelen tijdens het maken van trino-clusters door hive-catalogus in te schakelen.

  • U kunt ingebouwde querylogboekregistratie in uw cluster inschakelen met behulp van een ARM-sjabloon.

Dit artikel bevat informatie over het toevoegen van querylogboekregistratie aan uw cluster met behulp van een ARM-sjabloon.

Vereisten

Querylogboekregistratie inschakelen

Als u de ingebouwde invoegtoepassing voor querylogboekregistratie in uw Trino-cluster wilt inschakelen, voegt u de sectie toe met de clusterProfile.trinoProfile.userTelemetrySpec volgende eigenschappen in uw ARM-clustersjabloon.

Eigenschappen Beschrijving
path Volledig gekwalificeerd pad naar een map die wordt gebruikt als hoofdmap om verschillende querylogboeken vast te leggen.
hivecatalogName Deze catalogus wordt gebruikt om externe tabellen te koppelen aan de bestanden die zijn geschreven in het opslagaccount. Deze catalogus moet worden toegevoegd aan uw cluster, Hive-catalogus toevoegen.
hivecatalogSchema De invoegtoepassing voor querylogboekregistratie maakt gebruik van dit schema om de externe tabel voor de logboeken te koppelen. De invoegtoepassing maakt dit schema als dit nog niet bestaat. Standaardwaarde- trinologs
partitionRetentionInDays De invoegtoepassing querylogboekregistratie verwijdert de partities in de logboektabellen, die ouder zijn dan de opgegeven configuratie. Standaardwaarde- 365

In het volgende voorbeeld ziet u hoe querylogboekregistratie is ingeschakeld in een Trino-cluster. Voeg deze voorbeeld-json toe onder [*].properties.clusterProfile in de ARM-sjabloon.

       "trinoProfile": { 
          "userTelemetrySpec": { 
          "storage": { 
              "path": "https://querylogstorageaccount.blob.core.windows.net/logs/trinoquerylogs", 
              "hivecatalogName": "hive", 
              "hivecatalogSchema": "trinologs", 
              "partitionRetentionInDays": 365 
          } 
          }
      }   

Implementeer de bijgewerkte ARM-sjabloon om de wijzigingen in uw cluster weer te geven. Meer informatie over het implementeren van een ARM-sjabloon.

Notitie

  • De invoegtoepassing maakt gebruik van door de gebruiker toegewezen beheerde identiteit (MSI) die is gekoppeld aan het cluster om te verifiëren bij de opslag. Voeg de MSI toe Contributor en Storage Blob Data Owner toegang tot de MSI om ervoor te zorgen dat de invoegtoepassing logboeken naar het opslagaccount kan schrijven.
    Door de gebruiker toegewezen MSI-naam wordt vermeld in de eigenschap in de msiResourceId resource-JSON van het cluster. Meer informatie over het toewijzen van een rol.

  • PartitionRetentionInDays verwijdert alleen de metagegevenspartitie uit de gekoppelde tabel. De gegevens worden niet verwijderd. Schoon de gegevens op volgens uw vereisten als u ze niet meer nodig hebt.

Beheer van gedeelde metagegevens

Als de gebruiker een catalogusnaam in hiveCatalogName eigenschap opgeeft, koppelt de invoegtoepassing de logboekbestanden die in het opslagaccount zijn geschreven als externe tabellen en weergaven, die kunnen worden opgevraagd via Trino.

De invoegtoepassing maakt drie tabellen en drie weergaven, die kunnen worden gebruikt om query's uit te voeren op de levenscyclus-gebeurtenissen (QueryCompletedEvent, QueryCreatedEventen SplitCompletedEVent). Deze tabellen en weergaven worden gemaakt onder de catalogus en het schema dat is opgegeven als gebruikersinvoer.

Naam van tabellen:

  • querycompleted: Bevat QueryCompleted gebeurtenissen die door Trino worden geactiveerd.
  • querycreated: Bevat QueryCreatedEvents ontslagen door Trino.
  • splitcompleted: Bevat SplitCompletedEvents ontslagen door Trino.

Naam van weergaven:

  • vquerycompleted
  • vquerycreated
  • vsplitcompleted

Notitie

Gebruikers worden aangemoedigd om de weergaven te gebruiken omdat ze immuun zijn voor onderliggende schemawijzigingen en rekening houden met de beschreven tabel.

Tabelarchivering

De invoegtoepassing ondersteunt archivering (N-1)-tabel in het scenario waarin de gebruiker besluit de of externe locatie van de logboeken te wijzigen path . Als dat gebeurt, wijzigt de invoegtoepassing de naam van de tabel die verwijst naar het oude pad als <table_name>_archived, wordt in de gemaakte weergave het resultaat van de huidige en gearchiveerde tabellen in dit scenario samengevoegd.

Uw aangepaste invoegtoepassing maken

U kunt ook een aangepaste invoegtoepassing voor gebeurtenislistener maken, de aanwijzingen voor docs volgen, aangepaste invoegtoepassingen implementeren door de implementatiestappen van de invoegtoepassing te volgen.