Informazioni di riferimento sulla tabella del sistema di utilizzo fatturabile

Questo articolo offre una panoramica della tabella del sistema di utilizzo fatturabile, inclusi lo schema e le query di esempio. Con le tabelle di sistema, i dati di utilizzo fatturabili dell'account sono centralizzati e indirizzati a tutte le aree, in modo da poter visualizzare l'utilizzo globale dell'account da qualsiasi area in cui si trova l'area di lavoro.

Per informazioni sull'uso di questa tabella per monitorare i costi dei processi, vedere Monitorare i costi dei processi con le tabelle di sistema.

Per le strategie sull'analisi dell'utilizzo serverless, vedere Monitorare il costo del calcolo serverless.

Percorso tabella: questa tabella di sistema si trova in system.billing.usage.

Schema della tabella di utilizzo fatturabile

La tabella del sistema di utilizzo fatturabile usa lo schema seguente:

Nome colonna Tipo di dati Descrizione Esempio
record_id string ID univoco per questo record 11e22ba4-87b9-4cc2
-9770-d10b894b7118
account_id string ID dell'account per cui è stato generato il report 23e22ba4-87b9-4cc2
-9770-d10b894b7118
workspace_id string ID dell'area di lavoro a cui è stato associato questo utilizzo 1234567890123456
sku_name string Nome dello SKU STANDARD_ALL_PURPOSE_COMPUTE
cloud string Questo utilizzo è rilevante per il cloud. I valori possibili sono AWS, AZURE e GCP. AWS, AZURE o GCP
usage_start_time timestamp Ora di inizio relativa a questo record di utilizzo. Le informazioni sul fuso orario vengono registrate alla fine del valore con +00:00 che rappresenta il fuso orario UTC. 2023-01-09 10:00:00.000+00:00
usage_end_time timestamp Ora di fine relativa a questo record di utilizzo. Le informazioni sul fuso orario vengono registrate alla fine del valore con +00:00 che rappresenta il fuso orario UTC. 2023-01-09 11:00:00.000+00:00
usage_date data Data del record di utilizzo, questo campo può essere usato per un'aggregazione più veloce per data 2023-01-01
custom_tags mappa Tag applicati a questo utilizzo. Include tag delle risorse di calcolo, tag dei processi, tag personalizzati dell'area di lavoro e tag dei criteri di budget. { “env”: “production” }
usage_unit string Unità in cui viene misurato questo utilizzo. I valori possibili includono le DPU. DBU
usage_quantity decimale Numero di unità utilizzate per questo record. 259.2958
usage_metadata struct Metadati forniti dal sistema relativi all'utilizzo, inclusi gli ID per le risorse di calcolo e i processi (se applicabile). Vedere Analizzare i metadati di utilizzo. {cluster_id: null;
instance_pool_id: null;
notebook_id: null;
job_id: null;
node_type: null}
identity_metadata struct Metadati forniti dal sistema sulle identità coinvolte nell'utilizzo. Vedere Analizzare i metadati delle identità. {run_as: example@email.com}
record_type string Se il record è originale, un ritiro o una riformazione. Il valore è ORIGINAL a meno che il record non sia correlato a una correzione. Vedere Analizzare i record di correzione. ORIGINAL
ingestion_date data Data di inserimento del record nella usage tabella. 2024-01-01
billing_origin_product string Prodotto che ha originato l'utilizzo. Alcuni prodotti possono essere fatturati come SKU diversi. Per i valori possibili, vedere Visualizzare informazioni sul prodotto associato all'utilizzo. JOBS
product_features struct Informazioni dettagliate sulle funzionalità specifiche del prodotto usate. Per i valori possibili, vedere Funzionalità del prodotto.
usage_type string Tipo di utilizzo attribuito al prodotto o al carico di lavoro a scopo di fatturazione. I valori possibili sono COMPUTE_TIME, STORAGE_SPACE, NETWORK_BYTES, API_CALLS, TOKENo GPU_TIME. STORAGE_SPACE

Analizzare i metadati di utilizzo

I valori in usage_metadata indicano le risorse coinvolte nel record di utilizzo.

Valore Tipo di dati Descrizione
cluster_id stringa ID del cluster associato al record di utilizzo
warehouse_id string ID del warehouse SQL associato al record di utilizzo
instance_pool_id string ID del pool di istanze associato al record di utilizzo
node_type string Tipo di istanza della risorsa di calcolo
job_id string ID del processo associato al record di utilizzo. Restituisce solo un valore per l'utilizzo di calcolo o processi serverless. In caso contrario, restituisce null.
job_run_id string ID dell'esecuzione del processo associata al record di utilizzo. Restituisce solo un valore per l'utilizzo di calcolo o processi serverless. In caso contrario, restituisce null.
job_name string Nome specificato dall'utente del processo associato al record di utilizzo. Restituisce solo un valore per i processi eseguiti in un ambiente di calcolo serverless. In caso contrario, restituisce null.
notebook_id string ID del notebook associato all'utilizzo. Restituisce solo un valore per il calcolo serverless per l'utilizzo del notebook. In caso contrario, restituisce null.
notebook_path string Percorso di archiviazione dell'area di lavoro del notebook associato all'utilizzo. Restituisce solo un valore per il calcolo serverless per l'utilizzo del notebook. In caso contrario, restituisce null.
dlt_pipeline_id string ID della pipeline Delta Live Tables associata al record di utilizzo
dlt_update_id string ID dell'aggiornamento della pipeline Delta Live Tables associato al record di utilizzo
dlt_maintenance_id string ID delle attività di manutenzione della pipeline delta live tables associate al record di utilizzo
run_name string Identificatore univoco per l'utente dell'esecuzione di ottimizzazione dell'ottimizzazione del training del modello di intelligenza artificiale mosaico associata al record di utilizzo
endpoint_name string Nome del modello che gestisce l'endpoint o l'endpoint di ricerca vettoriale associato al record di utilizzo
endpoint_id string ID del modello che gestisce l'endpoint o l'endpoint di ricerca vettoriale associato al record di utilizzo
central_clean_room_id string ID della stanza pulita centrale associata al record di utilizzo

Analizzare i metadati delle identità

La identity_metadata colonna consente di identificare chi è responsabile di un record di fatturazione serverless. La colonna include un run_as valore che attributi l'utilizzo a un'identità. L'identità registrata in identity_metadata.run_as dipende dal prodotto associato all'utilizzo.

Fare riferimento alla tabella seguente per il identity_metadata.run_as comportamento:

Tipo di carico di lavoro Identità di run_as
Calcolo dei processi L'utente o l'entità servizio definita nell'impostazione run_as . Per impostazione predefinita, i processi vengono eseguiti come identità del proprietario del processo, ma gli amministratori possono modificarli in modo che siano un altro utente o un'entità servizio.
Calcolo serverless per i processi L'utente o l'entità servizio definita nell'impostazione run_as . Per impostazione predefinita, i processi vengono eseguiti come identità del proprietario del processo, ma gli amministratori possono modificarli in modo che siano un altro utente o un'entità servizio.
Calcolo serverless per notebook L'utente che ha eseguito i comandi del notebook( in particolare l'utente che ha creato la sessione del notebook). Per i notebook condivisi, questo include l'utilizzo da parte di altri utenti che condividono la stessa sessione del notebook.
Pipeline di tabelle live delta Utente le cui autorizzazioni vengono usate per eseguire la pipeline Delta Live Tables. Questa operazione può essere modificata trasferendo la proprietà della pipeline.
Mosaic AI Model Training L'utente o l'entità servizio che ha avviato l'esecuzione del training di ottimizzazione.

Analizzare i record di correzione

La billing.usage tabella supporta le correzioni. Le correzioni si verificano quando un campo del record di utilizzo non è corretto e deve essere corretto.

Quando si verifica una correzione, Azure Databricks aggiunge due nuovi record alla tabella. Un record di ritiro nega il record originale non corretto, quindi un record di riformazione include le informazioni corrette. I record di correzione vengono identificati usando il record_type campo :

  • RETRACTION: usato per negare l'utilizzo non corretto originale. Tutti i campi sono identici al ORIGINAL record tranne usage_quantity, ovvero un valore negativo che annulla la quantità di utilizzo originale. Ad esempio, se la quantità di utilizzo del record originale era 259.4356, il record di ritiro avrebbe una quantità di utilizzo pari -259.4356a .
  • RESTATEMENT: record che include i campi e la quantità di utilizzo corretti.

Ad esempio, la query seguente restituisce la quantità di utilizzo orario corretta correlata a un job_idoggetto , anche se sono state apportate correzioni. Aggregando la quantità di utilizzo, il record di ritiro nega il record originale e vengono restituiti solo i valori del riformulare.

SELECT
  usage_metadata.job_id, usage_start_time, usage_end_time,
  SUM(usage_quantity) as usage_quantity
FROM system.billing.usage
GROUP BY ALL
HAVING usage_quantity != 0

Nota

Per le correzioni in cui il record di utilizzo originale non deve essere stato scritto, una correzione può aggiungere solo un record di ritiro e nessun record di riformazioni.

Visualizzare informazioni sul prodotto associato all'utilizzo

Alcuni prodotti Databricks vengono fatturati con lo stesso SKU condiviso. Per differenziare l'utilizzo, le billing_origin_product colonne e product_features forniscono maggiori informazioni dettagliate sui prodotti e le funzionalità specifici associati all'utilizzo.

La billing_origin_product colonna mostra il prodotto Databricks associato al record di utilizzo. I valori includono:

  • JOBS
  • DLT
  • SQL
  • ALL_PURPOSE
  • MODEL_SERVING
  • INTERACTIVE
  • MANAGED_STORAGE
  • VECTOR_SEARCH
  • LAKEHOUSE_MONITORING
  • PREDICTIVE_OPTIMIZATION
  • ONLINE_TABLES
  • FOUNDATION_MODEL_TRAINING

La product_features colonna è un oggetto contenente informazioni sulle funzionalità specifiche del prodotto usate e include le coppie chiave/valore seguenti:

  • jobs_tier: i valori includono LIGHT, CLASSICo null
  • sql_tier: i valori includono CLASSIC, PROo null
  • dlt_tier: i valori includono CORE, PROADVANCED, , onull
  • is_serverless: i valori includono true o falseo null
  • is_photon: i valori includono true o falseo null
  • serving_type: i valori includono MODEL, GPU_MODELFOUNDATION_MODEL, FEATURE, onull

Query di esempio

È possibile usare le query di esempio seguenti per rispondere a domande comuni sull'utilizzo fatturabile:

Qual è la tendenza giornaliera del consumo DBU?

SELECT
  usage_date as `Date`, sum(usage_quantity) as `DBUs Consumed`
FROM
  system.billing.usage
WHERE
  sku_name = "STANDARD_ALL_PURPOSE_COMPUTE"
GROUP BY
  usage_date
ORDER BY
  usage_date ASC

Quanti DPU di ogni prodotto sono stati usati durante questo mese?

SELECT
    billing_origin_product,
    usage_date,
    sum(usage_quantity) as usage_quantity
FROM system.billing.usage
WHERE
    month(usage_date) = month(NOW())
    AND year(usage_date) = year(NOW())
GROUP BY billing_origin_product, usage_date

Quali processi hanno utilizzato la maggior parte delle UNITÀ di database?

SELECT
  usage_metadata.job_id as `Job ID`, sum(usage_quantity) as `Usage`
FROM
  system.billing.usage
WHERE
  usage_metadata.job_id IS NOT NULL
GROUP BY
  `Job ID`
ORDER BY
  `DBUs` DESC

Quanto utilizzo può essere attribuito alle risorse con un tag specifico?

È possibile suddividere i costi in vari modi. In questo esempio viene illustrato come suddividere i costi in base a un tag personalizzato. Assicurarsi di sostituire la chiave e il valore del tag personalizzato nella query.

SELECT
  sku_name, usage_unit, SUM(usage_quantity) as `Usage`
FROM
  system.billing.usage
WHERE
  custom_tags.{{key}} = "{{value}}"
GROUP BY 1, 2

Mostra i prodotti in cui l'utilizzo è in crescita

SELECT
  after.billing_origin_product, before_dbus, after_dbus, ((after_dbus - before_dbus)/before_dbus * 100) AS growth_rate
FROM
  (SELECT
     billing_origin_product, sum(usage_quantity) as before_dbus
   FROM
     system.billing.usage
   WHERE
     usage_date BETWEEN "2023-04-01" and "2023-04-30"
   GROUP BY
     billing_origin_product
  ) as before
JOIN
  (SELECT
     billing_origin_product, sum(usage_quantity) as after_dbus
   FROM
     system.billing.usage
   WHERE
     usage_date
   BETWEEN
     "2023-05-01" and "2023-05-30"
   GROUP BY
     billing_origin_product
  ) as after
WHERE
  before.billing_origin_product = after.billing_origin_product
SORT BY
  growth_rate DESC

Qual è la tendenza di utilizzo di All Purpose Compute (Photon)?

SELECT
  sku_name,
  usage_date,
  sum(usage_quantity) as `DBUs consumed`
FROM
  system.billing.usage
WHERE
  year(usage_date) = year(CURRENT_DATE)
AND
  sku_name = "ENTERPRISE_ALL_PURPOSE_COMPUTE_(PHOTON)"
AND
  usage_date > "2023-04-15"
GROUP BY
  sku_name, usage_date

Qual è il consumo DBU di una vista materializzata o di una tabella di streaming?

Per ottenere l'utilizzo e lo SKU DBU per una vista materializzata o una tabella di streaming specifica, inviare una query alla tabella del sistema di utilizzo fatturabile per i record in cui usage_metadata.dlt_pipeline_id è impostato sull'ID della pipeline associata alla vista materializzata o alla tabella di streaming. È possibile trovare l'ID della pipeline nella scheda Dettagli in Esplora cataloghi quando si visualizza la vista materializzata o la tabella di streaming. Per limitare facoltativamente il consumo per data, specificare una data di inizio, una data di fine o un intervallo di date. La query seguente recupera l'utilizzo DBU per la pipeline con ID 00732f83-cd59-4c76-ac0d-57958532ab5b e una data di inizio dell'utilizzo di 2023-05-30:

SELECT
  sku_name,
  usage_date,
  SUM(usage_quantity) AS `DBUs`
FROM
  system.billing.usage
WHERE
  usage_metadata.dlt_pipeline_id = "00732f83-cd59-4c76-ac0d-57958532ab5b"
AND
  usage_start_time > "2023-05-30"
GROUP BY
  ALL

Qual è il consumo DBU di una pipeline DLT serverless?

Per ottenere l'utilizzo e lo SKU DBU per una pipeline DLT serverless, inviare una query alla tabella del sistema di utilizzo fatturabile per i record in cui usage_metadata.dlt_pipeline_id è impostato sull'ID della pipeline. È possibile trovare l'ID della pipeline nella scheda Dettagli pipeline quando si visualizza una pipeline nell'interfaccia utente delle tabelle live delta. Per limitare facoltativamente il consumo per data, specificare una data di inizio, una data di fine o un intervallo di date. La query seguente recupera l'utilizzo DBU da dicembre 2023 per la pipeline con ID 00732f83-cd59-4c76-ac0d-57958532ab5b.

SELECT
  sku_name,
  usage_date,
  SUM(usage_quantity) AS `DBUs`
FROM
  system.billing.usage
WHERE
  usage_metadata.dlt_pipeline_id = "00732f83-cd59-4c76-ac0d-57958532ab5b"
AND
  usage_start_time >= "2023-12-01"
AND
  usage_end_time < "2024-01-01"
GROUP BY
  ALL