Informazioni di riferimento sulla tabella del sistema di utilizzo fatturabile
Questo articolo fornisce 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 & prestazioni 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 di utilizzo | 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 DBU. | 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 Riferimento ai 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. Consultare il riferimento ai metadati d'identità . | {"run_as": example@email.com,"created_by":null} |
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 Riferimento al tipo di record. |
ORIGINAL |
ingestion_date |
data | Data di inserimento del record nella tabella usage . |
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 Riferimento del prodotto di origine della fatturazione. | 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_OPERATION , TOKEN o GPU_TIME . |
STORAGE_SPACE |
Informazioni di riferimento sui metadati di utilizzo
I valori in usage_metadata
indicano gli oggetti e le risorse coinvolti nel record di utilizzo.
Valore | Tipo di dati | Descrizione |
---|---|---|
cluster_id |
string | 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 di 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 rivolto all'utente dell'ottimizzazione del modello foundation associato 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 |
metastore_id |
string | ID del metastore associato al registro di utilizzo. |
app_id |
string | ID dell'app associata al record di utilizzo. |
app_name |
string | Nome specificato dall'utente dell'app associata al record di utilizzo. |
Informazioni di riferimento sui metadati di identità
La colonna identity_metadata
può aiutarti a identificare chi è responsabile di un registro di fatturazione serverless. La colonna include un valore run_as
che attributi l'utilizzo a un'identità.
Inoltre, l'utilizzo attribuito alle applicazioni Databricks registra un valore nel campo identity_metadata.created_by
. Questo valore viene popolato con l'indirizzo di posta elettronica dell'utente che ha creato l'app.
L'identità registrata in identity_metadata.run_as
dipende dal prodotto associato all'utilizzo. Fare riferimento alla tabella seguente per il comportamento di identity_metadata.run_as
:
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 Delta Live Tables | L'utente le cui autorizzazioni vengono usate per eseguire la pipeline Delta Live Tables. Questa operazione può essere modificata trasferendo la proprietà della pipeline. |
Ottimizzazione del modello di base | L'utente o l'entità servizio che ha avviato l'esecuzione del training di ottimizzazione. |
Ottimizzazione predittiva | Il principale di servizio di proprietà di Databricks che esegue operazioni di ottimizzazione predittiva. |
Monitoraggio di Lakehouse | L'utente che ha creato il monitor. |
Riferimento al tipo di record
La tabella billing.usage
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 alORIGINAL
record tranneusage_quantity
, ovvero un valore negativo che annulla la quantità di utilizzo originale. Ad esempio, se la quantità di utilizzo del record originale era259.4356
, il record di ritiro avrebbe una quantità di utilizzo pari-259.4356
a . -
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_id
oggetto , anche se sono state apportate correzioni. Aggregando la quantità di utilizzo, il record di storno annulla il record originale e vengono restituiti solo i valori della rettifica.
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 avrebbe dovuto essere scritto, una correzione può aggiungere solo un record di revoca e nessun record di ristabilimento.
informazioni di riferimento sul prodotto origine fatturazione
Alcuni prodotti Databricks vengono fatturati con lo stesso SKU condiviso. Per facilitare la differenziazione dell'utilizzo, le colonne billing_origin_product
e product_features
forniscono maggiori informazioni dettagliate sul prodotto e sulle funzionalità specifiche associate all'utilizzo.
La colonna billing_origin_product
mostra il prodotto Databricks associato al record di utilizzo. I valori includono:
JOBS
DLT
SQL
ALL_PURPOSE
MODEL_SERVING
INTERACTIVE
DEFAULT_STORAGE
VECTOR_SEARCH
LAKEHOUSE_MONITORING
PREDICTIVE_OPTIMIZATION
ONLINE_TABLES
FOUNDATION_MODEL_TRAINING
AGENT_EVALUATION
FINE_GRAIN_ACCESS_CONTROL
APPS
: costi associati allo sviluppo e gestione delle App di Databricks
Informazioni di riferimento sulle funzionalità del prodotto
La colonna product_features
è un oggetto contenente informazioni sulle funzionalità specifiche del prodotto usate e include le coppie chiave/valore seguenti:
-
jobs_tier
: i valori includonoLIGHT
,CLASSIC
onull
-
sql_tier
: i valori includonoCLASSIC
,PRO
onull
-
dlt_tier
: i valori includonoCORE
,PRO
,ADVANCED
onull
-
is_serverless
: i valori includonotrue
ofalse
onull
-
is_photon
: i valori includonotrue
ofalse
onull
-
serving_type
: i valori includonoMODEL
,GPU_MODEL
,FOUNDATION_MODEL
,FEATURE
onull
Query di esempio
Questo articolo include le query di esempio seguenti:
- Qual è la tendenza giornaliera del consumo di unità Databricks?
- Quanti DPU di ogni prodotto sono stati usati durante questo mese?
- Quali processi hanno utilizzato la maggior parte delle DBU?
- Quale utilizzo può essere attribuito alle risorse con un tag specifico?
- Mostra i prodotti in cui l'utilizzo è in crescita
- Qual è la tendenza di utilizzo del calcolo multiuso (Photon)?
- Qual è il consumo DBU di una vista materializzata o di una tabella di streaming?
- Qual è il consumo DBU di una pipeline DLT serverless?
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. Immettere la chiave e il valore del tag personalizzato nei parametri di query.
SELECT
sku_name,
usage_unit,
SUM(usage_quantity) as `DBUs consumed`
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 Catalog Explorer quando si visualizza la vista materializzata o la tabella di streaming.
SELECT
sku_name,
usage_date,
SUM(usage_quantity) AS `DBUs`
FROM
system.billing.usage
WHERE
usage_metadata.dlt_pipeline_id = :dlt_pipeline_id
AND usage_start_time > :usage_start_time
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 della 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.
SELECT
sku_name,
usage_date,
SUM(usage_quantity) AS `DBUs`
FROM
system.billing.usage
WHERE
usage_metadata.dlt_pipeline_id = :dlt_pipeline_id
AND usage_start_time >= :usage_start_time
AND usage_end_time < :usage_end_time
GROUP BY
ALL