Monitorare l'utilizzo con le tabelle di sistema
Importante
Questa funzionalità è disponibile in anteprima pubblica. Attualmente non sono previsti addebiti per l'uso di questa funzionalità. In futuro, alcuni di questi utilizzi potrebbero comportare un addebito.
Questo articolo illustra il concetto di tabelle di sistema in Azure Databricks ed evidenzia le risorse che è possibile usare per sfruttare al meglio i dati delle tabelle di sistema.
Che cosa sono le tabelle di sistema?
Le tabelle di sistema sono un archivio analitico ospitato in Azure Databricks dei dati operativi dell'account presenti nel system
catalogo. Le tabelle di sistema possono essere usate per l'osservabilità cronologica nell'account.
Nota
Per la documentazione su system.information_schema
, vedere Schema delle informazioni.
Requisiti
Per accedere alle tabelle di sistema, l'area di lavoro deve essere abilitata per Il catalogo unity. Per altre informazioni, vedere Abilitare gli schemi di tabella di sistema.
Le tabelle di sistema non sono disponibili nelle aree seguenti:
- Aree di Azure Cina
- Aree di Azure per enti pubblici
- India occidentale
- Svizzera occidentale
Quali tabelle di sistema sono disponibili?
Attualmente, Azure Databricks ospita le tabelle di sistema seguenti:
Tabella | Descrizione | Ubicazione | Supporta lo streaming | Conservazione | Includere dati globali o regionali |
---|---|---|---|---|---|
Log di controllo | Include record per tutti gli eventi di controllo delle aree di lavoro nella propria area. Per un elenco degli eventi di controllo disponibili, vedere Informazioni di riferimento sul log di diagnostica. | system.access.audit |
Sì | 365 giorni | Area per gli eventi a livello di area di lavoro. Globale per gli eventi a livello di account. |
Derivazione tabella | Include un record per ogni evento di lettura o scrittura in una tabella o un percorso del catalogo Unity. | system.access.table_lineage |
Sì | 365 giorni | Regional |
Derivazione delle colonne | Include un record per ogni evento di lettura o scrittura in una colonna del catalogo Unity ( ma non include eventi che non dispongono di un'origine). | system.access.column_lineage |
Sì | 365 giorni | Regional |
Utilizzo fatturabile | Include record per tutti gli utilizzi fatturabili nell'account. Ogni record di utilizzo è un'aggregazione oraria dell'utilizzo fatturabile di una risorsa. | system.billing.usage |
Sì | 365 giorni | Generale |
Prezzi | Un log cronologico dei prezzi degli SKU. Un record viene aggiunto ogni volta che viene apportata una modifica al prezzo di uno SKU. | system.billing.list_prices |
No | N/D | Generale |
Clusters (Cluster) | Tabella delle dimensioni a modifica lenta che contiene la cronologia completa delle configurazioni del cluster nel tempo per qualsiasi cluster. | system.compute.clusters |
Sì | None | Regional |
Tipi di nodo | Acquisisce i tipi di nodo attualmente disponibili con le relative informazioni hardware di base. | system.compute.node_types |
No | N/D | Regional |
Eventi di SQL Warehouse | Acquisisce gli eventi correlati ai warehouse SQL. Ad esempio, l'avvio, l'arresto, l'esecuzione, l'aumento e la riduzione delle prestazioni. | system.compute.warehouse_events |
Sì | 365 giorni | Regional |
Processi | Tiene traccia di tutti i processi creati nell'account. | system.workflow.jobs |
Sì | 365 giorni | Regional |
Attività di processo | Tiene traccia di tutte le attività di processo eseguite nell'account. | system.workflow.job_tasks |
Sì | 365 giorni | Regional |
Sequenza temporale dell'esecuzione del processo | Tiene traccia dell'ora di inizio e di fine delle esecuzioni del processo. | system.workflow. job_run_timeline |
Sì | 365 giorni | Regional |
Sequenza temporale attività processo | Tiene traccia delle ore di inizio e di fine e delle risorse di calcolo usate per le esecuzioni delle attività di processo. | system.workflow. job_task_run_timeline |
Sì | 365 giorni | Regional |
Eventi a imbuto del Marketplace | Include i dati relativi all'impression e all'imbuto degli utenti per le presentazioni. | system.marketplace.listing_ funnel_events |
Sì | 365 giorni | Regional |
Accesso alla presentazione nel Marketplace | Include informazioni sull'utente per i dati delle richieste completate o ottenere eventi di dati nelle presentazioni. | system.marketplace.listing_ access_events |
Sì | 365 giorni | Regional |
Ottimizzazione predittiva | Tiene traccia della cronologia operativa della funzionalità di ottimizzazione predittiva. | system.storage.predictive_ optimization_operations_history |
No | 180 giorni | Regional |
Nota
È possibile visualizzare altre tabelle di sistema nell'account oltre a quelle elencate in precedenza. Tali tabelle sono attualmente in anteprima privata e sono vuote per impostazione predefinita. Se si è interessati a usare una di queste tabelle, contattare il team dell'account Databricks.
Abilitare gli schemi di tabella di sistema
Poiché le tabelle di sistema sono regolate da Unity Catalog, è necessario avere almeno un'area di lavoro abilitata per Unity Catalog nell'account per abilitare e accedere alle tabelle di sistema. Le tabelle di sistema includono i dati di tutte le aree di lavoro nell'account, ma è possibile accedervi solo da un'area di lavoro abilitata per Unity Catalog.
Le tabelle di sistema sono abilitate a livello di schema. Se si abilita uno schema di sistema, si abilitano tutte le tabelle all'interno di tale schema. Quando vengono rilasciati nuovi schemi, un amministratore dell'account deve abilitare manualmente lo schema.
Le tabelle di sistema devono essere abilitate da un amministratore dell'account. È possibile abilitare le tabelle di sistema usando l'API SystemSchemas.
Nota
Lo billing
schema è abilitato per impostazione predefinita. Gli altri schemi devono essere abilitati manualmente.
Elencare gli schemi di sistema disponibili
Usare il comando curl seguente per elencare gli schemi di sistema disponibili:
curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"
Di seguito è riportato un esempio di output del GET
comando :
{"schemas":[{"schema":"access","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"billing","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"information_schema","state":"<AVAILABLE OR EnableCompleted>"}]}
state: AVAILABLE
: lo schema di sistema è disponibile ma non è ancora stato abilitato.
state: EnableCompleted
: lo schema di sistema è stato abilitato ed è visibile in Esplora cataloghi.
Abilitare uno schema di sistema
Usare il comando curl seguente per attivare uno schema di sistema:
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>"
Se lo schema di sistema è abilitato correttamente, viene restituito il codice 200
del risultato.
Se si tenta di riabilitare uno schema di sistema, viene restituito quanto segue: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists"
.
Disabilitare uno schema di sistema
Usare il comando curl seguente per disabilitare uno schema di sistema:
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>"
Concedere l'accesso alle tabelle di sistema
L'accesso alle tabelle di sistema è regolato da Unity Catalog. Per impostazione predefinita, nessun utente ha accesso alle tabelle di sistema. Per concedere l'accesso, un amministratore del metastore o un altro utente con privilegi deve concedere USE
e SELECT
autorizzazioni per gli schemi di sistema. Vedere Gestire i privilegi nel catalogo unity.
Le tabelle di sistema sono di sola lettura e non possono essere modificate.
Nota
Se l'account è stato creato dopo il 9 novembre 2023, potrebbe non essere disponibile un amministratore del metastore per impostazione predefinita. Per altre informazioni, vedere Configurare e gestire il catalogo Unity.
Le tabelle di sistema contengono dati per tutte le aree di lavoro nell'account?
Le tabelle di log di controllo e derivazione contengono dati operativi per tutte le aree di lavoro nell'account distribuito all'interno della stessa area cloud. La tabella del sistema di fatturazione (system.billing.usage
) contiene i dati per tutte le aree di lavoro nell'account, indipendentemente dall'area in cui vengono distribuite.
Anche se è possibile accedere alle tabelle di sistema solo tramite un'area di lavoro di Unity Catalog, le tabelle includono anche i dati operativi per le aree di lavoro non Unity Catalog nell'account.
Dove si trovano le tabelle di sistema?
Le tabelle di sistema nell'account si trovano in un catalogo denominato system
, incluso in ogni metastore del catalogo Unity. system
Nel catalogo verranno visualizzati schemi come access
e billing
che contengono le tabelle di sistema.
Nota
Durante le tabelle di sistema Anteprima pubblica, Azure Databricks manterrà tutti i dati delle tabelle di sistema.
Considerazioni per le tabelle di sistema di streaming
L'accesso alle tabelle di sistema è supportato dalla condivisione delta. Tenere presenti le considerazioni seguenti quando si esegue lo streaming con la condivisione Delta:
- Se si usa lo streaming con le tabelle di sistema, impostare l'opzione
skipChangeCommit
sutrue
. In questo modo il processo di streaming non viene interrotto dalle eliminazioni nelle tabelle di sistema. Vedere Ignorare gli aggiornamenti e le eliminazioni. Trigger.AvailableNow
non è supportato con il flusso di condivisione Delta. Verrà convertito inTrigger.Once
.- Se si usa un trigger nel processo di streaming e si trova che il processo non viene aggiornato alla versione più recente della tabella di sistema, Databricks consiglia di aumentare la frequenza pianificata del processo.
Problemi noti
Attualmente non è disponibile alcun supporto per il monitoraggio in tempo reale. I dati vengono aggiornati nel corso della giornata. Se non viene visualizzato un log per un evento recente, controllare più tardi.
Per abilitare le tabelle di sistema, potrebbe essere necessario concedere l'accesso alla rete all'endpoint di archiviazione Blob delle tabelle di sistema. Per visualizzare un elenco dell'endpoint di archiviazione delle tabelle di sistema di ogni area, vedere Indirizzi IP degli endpoint di archiviazione.
Gli schemi di
system.operational_data
sistema esystem.lineage
sono deprecati e conterranno tabelle vuote.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per