Referência da tabela do sistema de preços
Este artigo fornece uma visão geral da tabela do sistema de preços, incluindo o esquema e as consultas de exemplo. A tabela de preços fornece acesso a um log histórico de preços de SKU. Um registro é adicionado sempre que há uma alteração em um preço de SKU. Esses logs podem ajudá-lo a executar a análise de custos e monitorar as alterações de preços.
Caminho da tabela: Esta tabela do sistema está localizada em system.billing.list_prices
.
Esquema de tabela de preços
A tabela do sistema de preços usa o seguinte esquema:
Nome da coluna | Tipo de dados | Descrição | Exemplo |
---|---|---|---|
price_start_time |
timestamp | A hora em que esse preço entrou em vigor na hora UTC | 2023-01-01T09:59:59.999Z |
price_end_time |
timestamp | A hora em que esse preço deixou de estar em vigor na hora UTC | 2023-01-01T09:59:59.999Z |
account_id |
string | ID da conta para a qual este relatório foi gerado | 1234567890123456 |
sku_name |
string | Nome da SKU | STANDARD_ALL_PURPOSE_COMPUTE |
cloud |
string | Nome da nuvem ao qual esse preço é aplicável. Os valores possíveis são AWS , AZURE e GCP . |
AWS , AZURE ou GCP |
currency_code |
string | A moeda em que esse preço é expresso | USD |
usage_unit |
string | A unidade de medida que é monetizada. | DBU |
pricing |
struct | Um campo de dados estruturado que inclui informações de preços na taxa de preço da lista publicada. A chave default sempre retornará apenas um preço que pode ser usado para estimativas simples de longo prazo. A chave promotional representa um preço promocional temporário que todos os clientes obtêm, que pode ser usado para estimativa de custos durante o período temporário. A chave effective_list resolve a lista e o preço promocional e contém o preço de lista efetivo usado para calcular o custo. Alguns modelos de preços também podem incluir chaves adicionais que fornecem mais detalhes. |
{ "default": "0.10", "promotional": {"default": "0.07"}, "effective_list": {"default": "0.07"} } |
Consultas de exemplo
Você pode usar as seguintes consultas de exemplo para responder perguntas comuns sobre preços de SKU:
- Localize o preço de lista de um determinado SKU em uma data específica
- Exibir o custo total de tudo o que usou uma marca personalizada específica durante o mês do calendário anterior
- Exibir os preços que foram alterados entre meses
- Estimar os custos de complemento para uso no mês do calendário anterior
Para conferir exemplos de consultas relacionadas à observabilidade do custo de trabalho, consulte Monitorar custos de trabalho com tabelas do sistema.
Localize o preço de lista de um determinado SKU em uma data específica
Como a tabela contém apenas registros de horários em que o preço da SKU é alterado, você precisa pesquisar a alteração de preço mais recente na data ou antes dela.
SELECT sku_name, price_start_time, pricing.default
FROM system.billing.list_prices
WHERE sku_name = 'STANDARD_ALL_PURPOSE_COMPUTE'
AND price_start_time <= "2023-01-01"
ORDER BY price_start_time DESC
LIMIT 1
Exibir o custo total de tudo o que usou uma marca personalizada específica durante o mês do calendário anterior
Observação
Substitua a chave e o valor da marca personalizada na consulta.
SELECT
SUM(usage.usage_quantity * list_prices.pricing.effective_list.default)
as `Total Dollar Cost`
FROM system.billing.usage
JOIN system.billing.list_prices ON list_prices.sku_name = usage.sku_name
WHERE usage.custom_tags.{{ tag_key }} = {{ tag_value }}
AND usage.usage_end_time >= list_prices.price_start_time
AND (list_prices.price_end_time IS NULL OR usage.usage_end_time < list_prices.price_end_time)
AND usage.usage_date BETWEEN "2023-05-01" AND "2023-05-31"
Exibir os preços que foram alterados entre meses
SELECT sku_name, price_start_time, pricing.default
FROM system.billing.list_prices
WHERE price_start_time BETWEEN "2023-05-01" AND "2023-07-01"
Estimar os custos de complemento para uso no mês do calendário anterior
Essa consulta aplica uma porcentagem simples a todo o uso no período. Observe que isso pode ser ligeiramente diferente da monetização real devido à forma como os direitos para alguns complementos são gerenciados. Substitua a taxa do complemento pela taxa da sua conta.
SELECT SUM(usage.usage_quantity * list_prices.pricing.effective_list.default) * {{ add_on_rate }} as `Total Add-On Dollar Cost`
FROM system.billing.usage
JOIN system.billing.list_prices ON list_prices.sku_name = usage.sku_name
WHERE usage.usage_end_time >= list_prices.price_start_time
AND (list_prices.price_end_time IS NULL OR usage.usage_end_time < list_prices.price_end_time)
AND usage.usage_date BETWEEN "2024-02-01" AND "2024-02-29"