Referência da tabela do sistema de utilização faturável

Este artigo fornece uma visão geral da tabela do sistema de uso faturável, incluindo o esquema e exemplos de consultas. Com as tabelas do sistema, os dados de uso faturável do seu accountsão centralizados e roteados para todas as regiões, de modo que o senhor pode view o uso global do seu accountde qualquer região em que o workspace esteja.

Para obter informações sobre como usar essa tabela para monitorar os custos do Job, consulte Monitorar os custos do Job com as tabelas do sistema.

Caminho da tabela: Essa tabela do sistema está localizada em system.billing.usage.

Esquema da tabela de utilização faturável

A tabela do sistema de uso faturável usa o seguinte esquema:

Nome da coluna

Tipo de dados

Descrição

Exemplo

record_id

string

ID exclusivo para esse registro

11e22ba4-87b9-4cc2 -9770-d10b894b7118

account_id

string

ID do site account para o qual esse relatório foi gerado

23e22ba4-87b9-4cc2 -9770-d10b894b7118

workspace_id

string

ID do site workspace ao qual esse uso estava associado

1234567890123456

sku_name

string

Nome da SKU

STANDARD_ALL_PURPOSE_COMPUTE

cloud

string

cloud este uso é relevante para. Os valores possíveis são AWS, AZURE e GCP.

AWS, AZURE, ou GCP

usage_start_time

timestamp

O tempo de início relevante para esse registro de uso. As informações de fuso horário são registradas no final do valor com +00:00 representando o fuso horário UTC.

2023-01-09 10:00:00.000+00:00

usage_end_time

timestamp

A hora final relevante para esse registro de uso. As informações de fuso horário são registradas no final do valor com +00:00 representando o fuso horário UTC.

2023-01-09 11:00:00.000+00:00

usage_date

Data

Data do registro de uso, esse campo pode ser usado para uma agregação mais rápida por data

2023-01-01

custom_tags

map

tags aplicados pelos usuários a esse uso. Inclui compute recurso tags e Job tags.

{ “env”: “production” }

usage_unit

string

Unidade em que esse uso é medido. Os valores possíveis incluem DBUs.

DBU

usage_quantity

decimal

Número de unidades consumidas para esse registro.

259.2958

usage_metadata

struct

Metadados fornecidos pelo sistema sobre o uso, incluindo IDs para compute recurso e Job (se aplicável). Consulte Analisar metadados de uso.

{cluster_id: null; instance_pool_id: null; notebook_id: null; job_id: null; node_type: null}

identity_metadata

struct

Usado para atribuir registros serverless em Azure e AWS. O valor será null.

null

record_type

string

Se o registro é original, uma retratação ou uma reformulação. O valor é ORIGINAL, a menos que o registro esteja relacionado a uma correção. Consulte Analisar registros de correção.

ORIGINAL

ingestion_date

Data

Data em que o registro foi ingerido na tabela usage.

2024-01-01

billing_origin_product

string

O produto que originou o uso. Alguns produtos podem ser faturados como SKUs diferentes. Para obter os valores possíveis, consulte view informações sobre o produto associado ao uso.

JOBS

product_features

struct

Detalhes sobre o produto recurso específico usado.

Para obter os valores possíveis, consulte produto recurso.

usage_type

string

O tipo de uso atribuído ao produto ou à carga de trabalho para fins de faturamento. Os valores possíveis são COMPUTE_TIME, STORAGE_SPACE, NETWORK_BYTES, API_OPERATION, TOKEN ou GPU_TIME.

STORAGE_SPACE

Analisar metadados de uso

Os valores em usage_metadata informam o senhor sobre o recurso envolvido no registro de uso.

Valor

Tipo de dados

Descrição

cluster_id

string

ID do cluster associado ao registro de uso

warehouse_id

string

ID do site SQL warehouse associado ao registro de uso

instance_pool_id

string

ID do pool de instâncias associado ao registro de uso

node_type

string

O tipo de instância do recurso compute

job_id

string

ID do trabalho associado ao registro de uso. Somente retorna um valor para o uso de serverless compute ou Job compute; caso contrário, retorna null.

job_run_id

string

ID da execução do trabalho associado ao registro de uso. Somente retorna um valor para o uso de serverless compute ou Job compute; caso contrário, retorna null.

job_name

string

Nome dado pelo usuário do trabalho associado ao registro de uso. Somente retorna um valor para a execução do trabalho em serverless compute, caso contrário, retorna null.

notebook_id

string

ID do site Notebook associado ao uso. Retorna apenas um valor para serverless compute para uso em Notebook; caso contrário, retorna null.

notebook_path

string

caminho de armazenamento do espaço de trabalho do Notebook associado ao uso. Somente retorna um valor para serverless compute para uso do Notebook; caso contrário, retorna null.

dlt_pipeline_id

string

ID do pipeline do Delta Live Tables associado ao registro de uso

dlt_update_id

string

ID da atualização do pipeline Delta Live Tables associada ao registro de uso

dlt_maintenance_id

string

ID da tarefa de manutenção Delta Live Tables pipeline associada ao registro de uso

run_name

string

Identificador exclusivo voltado para o usuário do Foundation Model Fine-tuning associado ao registro de uso

endpoint_name

string

O nome do modelo de serviço endpoint ou pesquisa vetorial endpoint associado ao registro de uso

endpoint_id

string

ID do modelo de serviço endpoint ou pesquisa vetorial endpoint associado ao registro de uso

central_clean_room_id

string

ID da sala limpa central associada ao registro de uso

Analise os registros de correção

A tabela billing.usage suporta correções. As correções ocorrem quando qualquer campo do registro de uso está incorreto e deve ser corrigido.

Quando ocorre uma correção, o Databricks adiciona dois novos registros à tabela. Um registro de retratação nega o registro incorreto original e, em seguida, um registro de reafirmação inclui as informações corrigidas. Os registros de correção são identificados usando o campo record_type:

  • RETRACTION: usado para negar o uso incorreto original. Todos os campos são idênticos ao registro ORIGINAL, exceto usage_quantity, que é um valor negativo que cancela a quantidade de uso original. Por exemplo, se a quantidade de uso do registro original fosse 259.4356, o registro de retração teria uma quantidade de uso de -259.4356.

  • RESTATEMENT: o registro que inclui os campos e a quantidade de uso corretos.

Por exemplo, a consulta a seguir retorna a quantidade correta de uso por hora relacionada a um job_id, mesmo que tenham sido feitas correções. Ao agregar a quantidade de uso, o registro de retração nega o registro original e somente os valores da atualização são retornados.

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

Observação

Para correções em que o registro de uso original não deveria ter sido escrito, uma correção só pode adicionar um registro de retração e nenhum registro de atualização.

view informações sobre o produto associado ao uso

Alguns produtos do Databricks são faturados sob o mesmo SKU compartilhado. Para ajudar o senhor a diferenciar o uso, as colunas billing_origin_product e product_features fornecem mais entendimento sobre o produto específico e o recurso associado ao uso.

A coluna billing_origin_product mostra o produto Databricks associado ao registro de uso. Os valores incluem:

  • JOBS

  • DLT

  • SQL

  • ALL_PURPOSE

  • MODEL_SERVING

  • INTERACTIVE

  • DEFAULT_STORAGE

  • VECTOR_SEARCH

  • LAKEHOUSE_MONITORING

  • PREDICTIVE_OPTIMIZATION

  • ONLINE_TABLES

  • FOUNDATION_MODEL_TRAINING

A coluna product_features é um objeto que contém informações sobre o produto recurso específico usado e inclui o seguinte par chave-valor:

  • jobs_tierValores: incluem LIGHT, CLASSIC ou null

  • sql_tierValores: incluem CLASSIC, PRO ou null

  • dlt_tierValores: incluem CORE, PRO, ADVANCED ou null

  • is_serverlessValores incluem true ou false, ou null

  • is_photonValores incluem true ou false, ou null

  • serving_typeValores: incluem MODEL, GPU_MODEL, FOUNDATION_MODEL, FEATURE ou null

Consultas de amostra

O senhor pode usar os exemplos de consultas a seguir para responder a perguntas comuns sobre o uso faturável:

Qual é a tendência diária do consumo 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

Quantas DBUs de cada produto foram usadas ao longo deste mês?

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

Qual trabalho consumiu mais DBUs?

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 uso pode ser atribuído ao recurso com um tag específico?

O senhor pode dividir os custos de várias maneiras. Este exemplo mostra ao senhor como dividir os custos por uma tag personalizada. Não se esqueça de substituir o tagpersonalizado por key e o valor na consulta.

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

Mostre-me o produto em que o uso está crescendo

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 é a tendência de uso do 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 é o consumo DBU de uma tabela materializada view ou de transmissão?

Para obter o DBU usage e o SKU para uma tabela materializada específica view ou transmissão, envie uma consulta à tabela do sistema billable usage para registros em que usage_metadata.dlt_pipeline_id esteja definido como o ID do pipeline associado à tabela materializada view ou transmissão. O senhor pode encontrar o ID pipeline em Details tab no Catalog Explorer ao visualizar a tabela materializada view ou de transmissão. Para limitar opcionalmente o consumo por data, especifique uma data de início, uma data final ou um intervalo de datas. A consulta a seguir recupera o uso do DBU para o pipeline com ID 00732f83-cd59-4c76-ac0d-57958532ab5b e uma data de início de uso 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

Qual é o consumo de DBU de um pipeline DLT sem servidor?

Para obter o uso de DBU e SKU para um serverless DLT pipeline, envie uma consulta à tabela do sistema de uso faturável para registros em que usage_metadata.dlt_pipeline_id é definido como o ID do pipeline. O senhor pode encontrar o ID do pipeline em Detalhes do pipeline tab ao visualizar um pipeline na interface do usuário Delta Live Tables. Para limitar opcionalmente o consumo por data, especifique uma data de início, uma data final ou um intervalo de datas. A consulta a seguir recupera o uso de DBU de dezembro de 2023 para o pipeline com 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