Gebruik bewaken met systeemtabellen

Belangrijk

Deze functie is beschikbaar als openbare preview. Er worden momenteel geen kosten in rekening gebracht voor het gebruik van deze functie. In de toekomst kan voor sommige van dit gebruik kosten in rekening worden gebracht.

In dit artikel wordt het concept van systeemtabellen in Azure Databricks uitgelegd en worden resources gemarkeerd die u kunt gebruiken om optimaal gebruik te maken van uw systeemtabellen.

Wat zijn systeemtabellen?

Systeemtabellen zijn een door Azure Databricks gehoste analytische opslag van de operationele gegevens van uw account die in de system catalogus zijn gevonden. Systeemtabellen kunnen worden gebruikt voor historische waarneembaarheid in uw account.

Notitie

Zie Informatieschema voor documentatie system.information_schemaover.

Vereisten

Voor toegang tot systeemtabellen moet uw werkruimte zijn ingeschakeld voor Unity Catalog. Zie Systeemtabelschema's inschakelen voor meer informatie.

Welke systeemtabellen zijn beschikbaar?

Op dit moment host Azure Databricks systeemtabellen voor:

Table Beschrijving Locatie Ondersteunt streaming Retentie Globale of regionale gegevens opnemen
Auditlogboeken Bevat records voor alle controlegebeurtenissen uit werkruimten in uw regio. Zie de naslaginformatie over diagnostisch logboeken voor een lijst met beschikbare controlegebeurtenissen. system.access.audit Ja 365 dagen Regionaal voor gebeurtenissen op werkruimteniveau. Globaal voor gebeurtenissen op accountniveau.
Tabelherkomst Bevat een record voor elke lees- of schrijfbeurtenis in een Unity Catalog-tabel of -pad. system.access.table_lineage Ja 365 dagen Regionaal
Kolomherkomst Bevat een record voor elke lees- of schrijfbeurtenis in een Unity Catalog-kolom (maar bevat geen gebeurtenissen die geen bron hebben). system.access.column_lineage Ja 365 dagen Regionaal
Factureerbaar gebruik Bevat records voor alle factureerbare gebruik in uw account. Elke gebruiksrecord is een aggregaties per uur van het factureerbare gebruik van een resource. system.billing.usage Ja 365 dagen Globaal
Prijzen Een historisch logboek met SKU-prijzen. Er wordt elke keer een record toegevoegd wanneer er een wijziging is in een SKU-prijs. system.billing.list_prices Nee N.v.t. Globaal
Clusters Een langzaam veranderende dimensietabel die de volledige geschiedenis van clusterconfiguraties in de loop van de tijd voor elk cluster bevat. system.compute.clusters Ja None Regionaal
Knooppunttypen Legt de momenteel beschikbare knooppunttypen vast met de basishardwaregegevens. system.compute.node_types Nee N.v.t. Regionaal
SQL Warehouse-gebeurtenissen Legt gebeurtenissen vast die betrekking hebben op SQL-warehouses. Bijvoorbeeld: starten, stoppen, uitvoeren, omhoog en omlaag schalen. system.compute.warehouse_events Ja 365 dagen Regionaal
Marketplace-trechtergebeurtenissen Bevat consumentenindrukken en trechtergegevens voor uw vermeldingen. system.marketplace.listing_

funnel_events
Ja 365 dagen Regionaal
Toegang tot Marketplace-vermeldingen Bevat consumentengegevens voor voltooide aanvraaggegevens of gegevensevenementen ophalen in uw vermeldingen. system.marketplace.listing_

access_events
Ja 365 dagen Regionaal
Voorspellende optimalisatie Houdt de bewerkingsgeschiedenis van de functie voorspellende optimalisatie bij. system.storage.predictive_

optimization_operations_history
Nee 180 dagen Regionaal

Notitie

Mogelijk ziet u andere systeemtabellen in uw account naast de hierboven genoemde tabellen. Deze tabellen bevinden zich momenteel in privévoorbeeld en zijn standaard leeg. Als u geïnteresseerd bent in het gebruik van een van deze tabellen, neemt u contact op met uw Databricks-accountteam.

Systeemtabelschema's inschakelen

Omdat systeemtabellen worden beheerd door Unity Catalog, moet u ten minste één werkruimte met Unity Catalog in uw account hebben om systeemtabellen in te schakelen en te openen. Systeemtabellen bevatten gegevens uit alle werkruimten in uw account, maar ze kunnen alleen worden geopend vanuit een werkruimte met Unity Catalog-functionaliteit.

Systeemtabellen worden ingeschakeld op schemaniveau. Als u een systeemschema inschakelt, schakelt u alle tabellen in dat schema in. Wanneer er nieuwe schema's worden vrijgegeven, moet een accountbeheerder het schema handmatig inschakelen.

Systeemtabellen moeten worden ingeschakeld door een accountbeheerder. U kunt systeemtabellen inschakelen met behulp van de SystemSchemas-API.

Beschikbare systeemschema's weergeven

Gebruik de volgende curl-opdracht om beschikbare systeemschema's weer te geven:

curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"

Hier volgt een voorbeeld van de uitvoer van de GET opdracht:

{"schemas":[{"schema":"access","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"billing","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"information_schema","state":"<AVAILABLE OR EnableCompleted>"}]}

state: AVAILABLE: Het systeemschema is beschikbaar, maar is nog niet ingeschakeld.

state: EnableCompleted: U hebt het systeemschema ingeschakeld en is zichtbaar in Catalog Explorer.

Een systeemschema inschakelen

Gebruik de volgende curl-opdracht om een systeemschema in te schakelen:

curl -v -X PUT -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Als het systeemschema is ingeschakeld, wordt resultaatcode 200 geretourneerd.

Als u probeert een systeemschema opnieuw in te schakelen, wordt het volgende geretourneerd: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists"

Een systeemschema uitschakelen

Gebruik de volgende curl-opdracht om een systeemschema uit te schakelen:

curl -v -X DELETE -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Toegang verlenen tot systeemtabellen

Systeemtabeltoegang wordt beheerd door Unity Catalog. Standaard hebben geen gebruikers toegang tot systeemtabellen. Als u toegang wilt verlenen, moet een metastore-beheerder of een andere bevoegde gebruiker machtigingen verlenen en SELECT machtigingen verlenen USE aan de systeemschema's. Zie Bevoegdheden beheren in Unity Catalog.

Systeemtabellen zijn alleen-lezen en kunnen niet worden gewijzigd.

Notitie

Als uw account is gemaakt na 9 november 2023, hebt u mogelijk geen metastore-beheerder standaard. Zie Unity Catalog instellen en beheren voor meer informatie.

Bevatten systeemtabellen gegevens voor alle werkruimten in uw account?

Het auditlogboek en de herkomsttabellen bevatten operationele gegevens voor alle werkruimten in uw account die zijn geïmplementeerd in dezelfde cloudregio. De tabel factureringssysteem (system.billing.usage) bevat gegevens voor alle werkruimten in uw account, ongeacht in welke regio ze worden geïmplementeerd.

Hoewel systeemtabellen alleen toegankelijk zijn via een Unity Catalog-werkruimte, bevatten de tabellen ook operationele gegevens voor niet-Unity Catalog-werkruimten in uw account.

Waar bevinden zich de systeemtabellen?

De systeemtabellen in uw account bevinden zich in een catalogus met de naam system, die is opgenomen in elke Unity Catalog-metastore. In de system catalogus ziet u schema's zoals access en billing die de systeemtabellen bevatten.

Notitie

Tijdens de openbare preview van systeemtabellen behoudt Azure Databricks al uw systeemtabellen.

Overwegingen voor streamingsysteemtabellen

Toegang tot systeemtabellen wordt ondersteund door Delta Sharing. Houd rekening met de volgende overwegingen bij het streamen met Delta Sharing:

  • Als u streaming gebruikt met systeemtabellen, stelt u de skipChangeCommit optie in op true. Dit zorgt ervoor dat de streamingtaak niet wordt onderbroken door verwijderingen in de systeemtabellen. Zie Updates en verwijderingen negeren.
  • Trigger.AvailableNow wordt niet ondersteund met Delta Sharing-streaming. Het wordt geconverteerd naar Trigger.Once.
  • Als u een trigger in uw streamingtaak gebruikt en de taak niet inhaalt naar de nieuwste versie van de systeemtabel, raadt Databricks aan om de geplande frequentie van de taak te verhogen.

Bekende problemen

  • Momenteel is er geen ondersteuning voor realtime bewaking. Gegevens worden de hele dag bijgewerkt. Als u geen logboek ziet voor een recente gebeurtenis, controleert u het later opnieuw.

  • Als u systeemtabellen wilt inschakelen, moet u mogelijk netwerktoegang verlenen tot het Blob Storage-eindpunt van de systeemtabellen. Als u een lijst met het opslageindpunt van de systeemtabellen van elke regio wilt weergeven, raadpleegt u IP-adressen van opslageindpunten.

  • De systeemschema's system.operational_data en system.lineage zijn afgeschaft en bevatten lege tabellen.