Référence de table système d’utilisation facturable
Cet article fournit une présentation de la table système d’utilisation facturable, comprenant le schéma et des exemples de requêtes. Avec les tables système, les données d'utilisation facturables de votre compte sont centralisées et acheminées vers toutes les régions, afin que vous puissiez visualiser l'utilisation globale de votre compte depuis la région dans laquelle se trouve votre espace de travail.
Pour plus d’informations sur l’utilisation de ce tableau pour surveiller les coûts des travaux, consultez Surveiller les coûts des travaux avec les tables système.
Pour connaître les stratégies d’analyse de l’utilisation serverless, consultez Surveiller le coût de calcul serverless.
Chemin d’accès de la table : cette table système se trouve à l’emplacement system.billing.usage
.
Schéma du tableau d'utilisation facturable
La table système des utilisations facturables utilise le schéma suivant :
Nom de la colonne | Type de données | Description | Exemple : |
---|---|---|---|
record_id |
string | ID unique pour cet enregistrement | 11e22ba4-87b9-4cc2 -9770-d10b894b7118 |
account_id |
string | ID du compte pour lequel ce rapport a été généré | 23e22ba4-87b9-4cc2 -9770-d10b894b7118 |
workspace_id |
string | ID de l'espace de travail auquel cette utilisation était associée | 1234567890123456 |
sku_name |
string | Nom du SKU | STANDARD_ALL_PURPOSE_COMPUTE |
cloud |
string | Cloud pour lequel cette utilisation est pertinente. Les valeurs possibles sont AWS , AZURE et GCP . |
AWS , AZURE ou GCP |
usage_start_time |
timestamp | L’heure de début pertinente pour cet enregistrement d’utilisation. Les informations de fuseau horaire sont enregistrées à la fin de la valeur, où +00:00 représente le fuseau horaire UTC. |
2023-01-09 10:00:00.000+00:00 |
usage_end_time |
timestamp | L’heure de fin pertinente pour cet enregistrement d’utilisation. Les informations de fuseau horaire sont enregistrées à la fin de la valeur, où +00:00 représente le fuseau horaire UTC. |
2023-01-09 11:00:00.000+00:00 |
usage_date |
date | Date de l'enregistrement d'utilisation, ce champ peut être utilisé pour une agrégation plus rapide par date | 2023-01-01 |
custom_tags |
map | Balises appliquées à cette utilisation. Inclut les balises de ressources de calcul, les balises de travail, les balises personnalisées de l’espace de travail et les balises de stratégie budgétaire. | { “env”: “production” } |
usage_unit |
string | Unité dans laquelle cette utilisation est mesurée. Les valeurs possibles incluent les DBU. | DBU |
usage_quantity |
Décimal | Nombre d'unités consommées pour cet enregistrement. | 259.2958 |
usage_metadata |
struct | Métadonnées fournies par le système sur l'utilisation, y compris les ID des ressources de calcul et des tâches (le cas échéant). Consultez Analyser les métadonnées d’utilisation. | {cluster_id: null; instance_pool_id: null; notebook_id: null; job_id: null; node_type: null} |
identity_metadata |
struct | Métadonnées fournies par le système sur les identités impliquées dans l’utilisation. Consultez Analyser les métadonnées d’identité. | {run_as: example@email.com} |
record_type |
string | Indique si l’enregistrement est d’origine, une rétraction ou un repos. La valeur est ORIGINAL sauf si l’enregistrement est lié à une correction. Consultez Analyser les enregistrements de correction. |
ORIGINAL |
ingestion_date |
date | Date à laquelle l’enregistrement a été ingéré dans la table usage . |
2024-01-01 |
billing_origin_product |
string | Produit à l’origine de l’utilisation. Certains produits peuvent être facturés comme références SKU différentes. Pour connaître les valeurs possibles, consultez Afficher des informations sur le produit associé à l’utilisation. | JOBS |
product_features |
struct | Détails sur les fonctionnalités de produit spécifiques utilisées. | Pour connaître les valeurs possibles, consultez Fonctionnalités du produit. |
usage_type |
string | Type d’utilisation attribué au produit ou à la charge de travail à des fins de facturation. Les valeurs possibles sont COMPUTE_TIME , STORAGE_SPACE , NETWORK_BYTES , API_OPERATION , TOKEN ou GPU_TIME . |
STORAGE_SPACE |
Analyser les métadonnées d’utilisation.
Les valeurs de usage_metadata
vous indiquent les ressources impliquées dans l’enregistrement d’utilisation.
Valeur | Type de données | Description |
---|---|---|
cluster_id |
string | ID du cluster associé à l’enregistrement d’utilisation |
warehouse_id |
string | ID de l’entrepôt SQL associé à l’enregistrement d’utilisation |
instance_pool_id |
string | ID du pool d’instances associé à l’enregistrement d’utilisation |
node_type |
string | Type d’instance de la ressource de calcul |
job_id |
string | ID du travail associé à l’enregistrement d’utilisation. Retourne une valeur seulement pour le calcul serverless ou l’utilisation du calcul de tâches, sinon retourne null . |
job_run_id |
string | ID de l’exécution du travail associée à l’enregistrement d’utilisation. Retourne une valeur seulement pour le calcul serverless ou l’utilisation du calcul de tâches, sinon retourne null . |
job_name |
string | Le nom que l’utilisateur à donné à la tâche associée à l’enregistrement d’utilisation. Retourne une valeur seulement pour les tâches exécutées sur un calcul serverless, sinon retourne null . |
notebook_id |
string | ID du notebook associé à l’utilisation. Retourne une valeur seulement pour le calcul serverless pour l’utilisation du notebook, sinon retourne null . |
notebook_path |
string | Chemin de stockage de l’espace de travail du notebook associé à l’utilisation. Retourne une valeur seulement pour le calcul serverless pour l’utilisation du notebook, sinon retourne null . |
dlt_pipeline_id |
string | ID du pipeline Delta Live Tables associé à l’enregistrement d’utilisation |
dlt_update_id |
string | ID de la mise à jour du pipeline Delta Live Tables associé à l’enregistrement d’utilisation |
dlt_maintenance_id |
string | ID des tâches de maintenance du pipeline Delta Live Tables associé à l’enregistrement d’utilisation |
run_name |
string | Identificateur unique accessible par l’utilisateur du réglage précis du modèle Foundation associé à l’enregistrement d’utilisation |
endpoint_name |
string | Nom du point de terminaison de service du modèle ou du point de terminaison de recherche vectorielle associé à l’enregistrement d’utilisation |
endpoint_id |
string | ID du point de terminaison de service du modèle ou du point de terminaison de recherche vectorielle associé à l’enregistrement d’utilisation |
central_clean_room_id |
string | ID de la salle propre centrale associée à l’enregistrement d’utilisation |
Analyser les métadonnées d’identité
La colonne identity_metadata
peut vous aider à identifier qui est responsable d’un enregistrement de facturation serverless. La colonne inclut une valeur run_as
qui attribue l’utilisation à une identité. L’identité enregistrée dans identity_metadata.run_as
dépend du produit associé à l’utilisation.
Référencez le tableau suivant pour le comportement identity_metadata.run_as
:
Type de charge de travail | Identité de run_as |
---|---|
Jobs Compute | L’utilisateur ou le principal de service défini dans le paramètre run_as . Par défaut, les travaux s’exécutent en tant qu’identité du propriétaire du travail, mais les administrateurs peuvent le modifier comme un autre utilisateur ou principal de service. |
Calcul serverless pour les travaux | L’utilisateur ou le principal de service défini dans le paramètre run_as . Par défaut, les travaux s’exécutent en tant qu’identité du propriétaire du travail, mais les administrateurs peuvent le modifier comme un autre utilisateur ou principal de service. |
Calcul serverless pour les notebooks | Utilisateur qui a exécuté les commandes du notebook (en particulier, l’utilisateur qui a créé la session de notebook). Pour les notebooks partagés, cela inclut l’utilisation par d’autres utilisateurs partageant la même session de notebook. |
Pipelines Delta Live Tables | Utilisateur dont les autorisations sont utilisées pour exécuter le pipeline Delta Live Tables. Cela peut être modifié en transférant la propriété du pipeline. |
Réglage précis du modèle de base | L’utilisateur ou le principal de service à l’origine de l’exécution du réglage fin de la formation. |
Analyser les enregistrements de correction
Le tableau billing.usage
prend en charge les corrections. Les corrections se produisent quand un champ de l’enregistrement d’utilisation est incorrect et doit être corrigé.
Lorsqu’une correction se produit, Azure Databricks ajoute deux nouveaux enregistrements à la table. Un enregistrement de rétractation annule l’enregistrement incorrect d’origine, puis un enregistrement de repos inclut les informations corrigées. Les enregistrements de correction sont identifiés à l’aide du champ record_type
:
RETRACTION
: utilisé pour négation de l’utilisation incorrecte d’origine. Tous les champs sont identiques à l’enregistrementORIGINAL
, à l’exception deusage_quantity
, valeur négative qui annule la quantité d’utilisation d’origine. Par exemple, si la quantité d’utilisation de l’enregistrement d’origine était259.4356
, l’enregistrement de retrait aurait une quantité d’utilisation de-259.4356
.RESTATEMENT
: enregistrement qui inclut les champs corrects et la quantité d’utilisation.
Par exemple, la requête suivante retourne la quantité d’utilisation horaire correcte liée à un job_id
, même si des corrections ont été apportées. En agrégeant la quantité d’utilisation, l’enregistrement de rétractation annule l’enregistrement d’origine et seules les valeurs du repos sont retournées.
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
Remarque
Pour les corrections où l’enregistrement d’utilisation d’origine n’a pas dû être écrit, une correction peut uniquement ajouter un enregistrement de rétractation et aucun enregistrement de repos.
Afficher des informations sur le produit associé à l’utilisation
Certains produits Databricks sont facturés sous la même référence SKU partagée. Pour vous aider à différencier l’utilisation, les colonnes billing_origin_product
et product_features
fournissent plus d’informations sur le produit et les fonctionnalités spécifiques associés à l’utilisation.
La colonne billing_origin_product
affiche le produit Databricks associé à l’enregistrement d’utilisation. Les valeurs incluent :
JOBS
DLT
SQL
ALL_PURPOSE
MODEL_SERVING
INTERACTIVE
DEFAULT_STORAGE
VECTOR_SEARCH
LAKEHOUSE_MONITORING
PREDICTIVE_OPTIMIZATION
ONLINE_TABLES
FOUNDATION_MODEL_TRAINING
La colonne product_features
est un objet contenant des informations sur les fonctionnalités de produit spécifiques utilisées et inclut les paires clé/valeur suivantes :
jobs_tier
: les valeurs incluentLIGHT
,CLASSIC
ounull
sql_tier
: les valeurs incluentCLASSIC
,PRO
ounull
dlt_tier
: les valeurs incluentCORE
,PRO
,ADVANCED
ounull
is_serverless
: les valeurs incluenttrue
oufalse
, ounull
is_photon
: les valeurs incluenttrue
oufalse
, ounull
serving_type
: les valeurs incluentMODEL
,GPU_MODEL
,FOUNDATION_MODEL
,FEATURE
ounull
Exemples de requêtes
Vous pouvez utiliser les exemples de requêtes suivants pour répondre aux questions courantes sur l'utilisation facturable :
- Quelle est la tendance quotidienne de la consommation de DBU ?
- Combien d’unités de base de données de chaque produit ont été utilisées tout au long de ce mois -ci ?
- Quelles tâches ont consommé le plus de DBU ?
- Quelle utilisation peut être attribuée aux ressources avec une certaine balise ?
- Montrez-moi les SKU dont l'utilisation augmente
- Quelle est la tendance d’utilisation de All Purpose Compute (Photon) ?
- Quelle est la consommation DBU d’une vue matérialisée ou d’une table de diffusion en continu ?
- Quelle est la consommation DBU d’un pipeline DLT serverless ?
Quelle est la tendance quotidienne de la consommation de 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
Combien d’unités de base de données de chaque produit ont été utilisées tout au long de ce mois -ci ?
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
Quelles tâches ont consommé le plus de DBU ?
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
Quelle utilisation peut être attribuée aux ressources présentant une certaine balise ?
Vous pouvez répartir les coûts de différentes manières. Cet exemple vous montre comment répartir les coûts par balise personnalisée. Assurez-vous de remplacer la clé et la valeur de la balise personnalisée dans la requête.
SELECT
sku_name, usage_unit, SUM(usage_quantity) as `Usage`
FROM
system.billing.usage
WHERE
custom_tags.{{key}} = "{{value}}"
GROUP BY 1, 2
Me montrer les produits où l’utilisation augmente
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
Quelle est la tendance d’utilisation de 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
Quelle est la consommation DBU d’une vue matérialisée ou d’une table de diffusion en continu ?
Pour obtenir les données d’utilisation et la référence SKU DBU d’une table de diffusion en continu ou d’affichage matérialisée spécifique, envoyez une requête à la table système d’utilisation facturable pour les enregistrements où usage_metadata.dlt_pipeline_id
est défini sur l’ID du pipeline associé à la vue matérialisée ou à la table de diffusion en continu. Vous trouverez l’ID de pipeline sous l’onglet Détails de l’Explorateur de catalogues lors de l’affichage de la vue matérialisée ou de la table de diffusion en continu. Pour éventuellement limiter la consommation par date, spécifiez une date de début, une date de fin ou une plage de dates. La requête suivante récupère l’utilisation de DBU pour le pipeline avec l’ID 00732f83-cd59-4c76-ac0d-57958532ab5b
et une date de début d’utilisation de 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
Quelle est la consommation DBU d’un pipeline DLT serverless ?
Pour obtenir les données d’utilisation et la référence SKU DBU d’un pipeline DLT serverless, envoyez une requête à la table système d’utilisation facturable pour les enregistrements où usage_metadata.dlt_pipeline_id
est défini sur l’ID du pipeline. Vous trouverez l’ID de pipeline sous l’onglet Détails du pipeline lors de l’affichage d’un pipeline dans l’interface utilisateur de Delta Live Tables. Pour éventuellement limiter la consommation par date, spécifiez une date de début, une date de fin ou une plage de dates. La requête suivante récupère l’utilisation de DBU de décembre 2023 pour le pipeline avec l’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