Informazioni di riferimento sulle tabelle di sistema di calcolo
Importante
Questa funzionalità è disponibile in anteprima pubblica.
Questo articolo offre una panoramica delle tabelle di sistema di calcolo, inclusi gli schemi e le query di esempio. Sono ora disponibili due tabelle di sistema del cluster: clusters
e node_types
.
Schema della tabella del cluster
La tabella cluster è una tabella delle dimensioni a modifica lenta che contiene la cronologia completa delle configurazioni del cluster nel tempo per i cluster di tutti gli scopi e i processi.
La tabella di sistema cluster si trova in system.compute.clusters
e ha lo schema seguente:
Schema di tabella dei tipi di nodo
La tabella dei tipi di nodo acquisisce i tipi di nodo attualmente disponibili con le relative informazioni hardware di base. La tabella di sistema dei tipi di nodo si trova in system.compute.node_types
e ha lo schema seguente:
Nome colonna | Tipo di dati | Descrizione | Esempio |
---|---|---|---|
account_id |
string | ID dell'account in cui è stato creato il cluster. | 23e22ba4-87b9-4cc2-9770-d10b894b7118 |
node_type_name |
string | Identificatore univoco per il tipo di nodo. | Standard_D16s_v3 |
core_count |
double | Numero di vCPU per l'istanza. | 48.0 |
memory_mb |
long | Memoria totale per l'istanza. | 393216 |
gpu_count |
long | Numero di GPU per l'istanza. | 0 |
Limitazioni note
- I cluster contrassegnati come eliminati prima del 23 ottobre 2023 non vengono visualizzati nella tabella cluster. Ciò potrebbe comportare join dalla
system.billing.usage
tabella che non corrispondono ai record del cluster nella tabella cluster. Tutti i cluster attivi sono stati riempiti. - La tabella cluster include solo record per cluster di processi e per tutti gli scopi. Non contiene cluster delta live tables o sql warehouse.
Query di esempio
È possibile usare le query di esempio seguenti per rispondere a domande comuni sui cluster:
- Aggiungere record del cluster con record di utilizzo fatturabili
- Costi degli attributi per un cluster al proprietario del cluster
Nota
Questi esempi unisce la tabella cluster alla system.billing.usage
tabella . Poiché i record di fatturazione sono tra aree e record cluster region-sepcific, i record di fatturazione corrispondono solo ai record del cluster per l'area in cui si sta eseguendo una query. Per visualizzare i record di un'altra area, eseguire la query in tale area.
Aggiungere record del cluster con i record di fatturazione più recenti
Questa query consente di comprendere le spese nel tempo. Dopo aver aggiornato l'oggetto usage_start_time
al periodo di fatturazione più recente, vengono acquisiti gli aggiornamenti più recenti ai record di fatturazione per l'aggiunta ai dati dei cluster.
Ogni record è associato al proprietario del cluster durante l'esecuzione specifica. Pertanto, se il proprietario del cluster cambia, i costi verranno rollup al proprietario corretto in base al momento dell'uso del cluster.
SELECT
u.record_id,
c.cluster_id,
c.owned_by,
c.change_time,
u.usage_start_time,
u.usage_quantity
FROM
system.billing.usage u
JOIN system.compute.clusters c
JOIN (SELECT u.record_id, c.cluster_id, max(c.change_time) change_time
FROM system.billing.usage u
JOIN system.compute.clusters c
WHERE
u.usage_metadata.cluster_id is not null
and u.usage_start_time >= '2023-01-01'
and u.usage_metadata.cluster_id = c.cluster_id
and date_trunc('HOUR', c.change_time) <= date_trunc('HOUR', u.usage_start_time)
GROUP BY all) config
WHERE
u.usage_metadata.cluster_id is not null
and u.usage_start_time >= '2023-01-01'
and u.usage_metadata.cluster_id = c.cluster_id
and u.record_id = config.record_id
and c.cluster_id = config.cluster_id
and c.change_time = config.change_time
ORDER BY cluster_id, usage_start_time desc;
Costi degli attributi per un cluster al proprietario del cluster
Se si vuole ridurre i costi di calcolo, è possibile usare questa query per scoprire quali proprietari del cluster nell'account usano la maggior parte delle unità di database.
SELECT
u.record_id record_id,
c.cluster_id cluster_id,
max_by(c.owned_by, c.change_time) owned_by,
max(c.change_time) change_time,
any_value(u.usage_start_time) usage_start_time,
any_value(u.usage_quantity) usage_quantity
FROM
system.billing.usage u
JOIN system.compute.clusters c
WHERE
u.usage_metadata.cluster_id is not null
and u.usage_start_time >= '2023-01-01'
and u.usage_metadata.cluster_id = c.cluster_id
and c.change_time <= u.usage_start_time
GROUP BY 1, 2
ORDER BY cluster_id, usage_start_time desc;
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