Exportar dados do Faturamento do Cloud para o BigQuery

Gerenciar e informar os custos com eficiência são partes essenciais da administração financeira, independentemente de você administrar uma empresa multimilionária ou um pequeno orçamento doméstico. Tomar decisões com base em dados sobre os custos e o uso do Google Cloud começa com a coleta dos dados necessários para informar essas decisões.

A exportação do Faturamento do Cloud para o BigQuery permite exportar automaticamente dados detalhados do Google Cloud (como estimativas de uso e custo) durante o dia para um conjunto de dados do BigQuery especificado por você. Em seguida, é possível acessar os dados do Faturamento do Cloud pelo BigQuery para análise detalhada ou usar uma ferramenta como o Google Data Studio para visualizar seus dados. Também é possível usar esse método para exportar dados para um arquivo JSON.

Como ativar a exportação do Faturamento do Cloud para o BigQuery

Permissões necessárias

Para ativar e configurar a exportação de dados de faturamento do Google Cloud para um conjunto de dados do BigQuery, você precisa das seguintes permissões:

  • papel Administrador da conta de faturamento referente à Conta de faturamento do Cloud de destino;
  • papel Usuário do BigQuery para o projeto do Cloud que contém o conjunto de dados do BigQuery que será usado para armazenar os dados do Faturamento do Cloud.

Para mais informações sobre as permissões do Google Cloud, consulte:

1. Criar um conjunto de dados do BigQuery

Antes de ativar a exportação do Faturamento do Cloud para o BigQuery, recomendamos criar um conjunto de dados do BigQuery.

Um conjunto de dados está contido em um projeto do Cloud específico. Conjuntos de dados são contêineres de nível superior usados na organização e no controle de acesso a suas tabelas e visualizações. É obrigatório que uma tabela ou visualização pertença a um conjunto de dados, então, crie pelo menos um conjunto de dados antes de carregar dados no BigQuery.

Para criar um conjunto de dados do BigQuery, faça o seguinte:

  1. Faça login no Console do Google Cloud e acesse a página do BigQuery.

    Acessar a página do BigQuery

  2. No menu suspenso do projeto ( Meu projeto ), na parte superior da página do Console do Google Cloud, selecione ou crie um projeto para conter o conjunto de dados.

    Recomendação: recomendamos configurar um projeto único e separado do Cloud para conter todas as necessidades de administração de faturamento, incluindo os dados do Faturamento do Cloud exportados. Seu projeto do Cloud de administração de faturamento também pode ser usado, por exemplo, para acesso às APIs Cloud Billing, canais do Pub/Sub para notificações programáticas de orçamento e assim por diante.

  3. No painel de navegação do BigQuery, clique em your-project-name.

  4. Clique em CRIAR CONJUNTO DE DADOS. O painel "Criar conjunto de dados" é aberto.

    1. Insira um código do conjunto de dados.
    2. Selecione um local dos dados.

    3. Selecione a expiração padrão da tabela.

    4. Selecione a opção Criptografia. Para a exportação do Faturamento do Cloud, selecione Chave gerenciada pelo Google.

    5. Para salvar, clique em Criar conjunto de dados.

2. Ativar exportação do Faturamento do Cloud para o conjunto de dados do BigQuery

Para ativar a exportação do Faturamento do Cloud para o BigQuery, faça o seguinte:

  1. Faça login no Console do Google Cloud.

    Fazer login no Console do Cloud

  2. Abra o Menu de navegação do console e selecione Faturamento.

    Se você tiver mais de uma Conta de faturamento do Cloud, siga um destes procedimentos:

    • Para gerenciar o Faturamento do Cloud no projeto atual, selecione Acessar a conta de faturamento vinculada.
    • Para localizar outra Conta de faturamento do Cloud, selecione Gerenciar contas de faturamento e escolha a conta da qual você quer ativar a exportação de dados do Faturamento do Cloud para o BigQuery.
  3. No menu de navegação "Faturamento", selecione Exportação de faturamento.

  4. Selecione a guia de Exportação do BigQuery.

  5. Clique em Editar configurações para ativar a exportação e atualizar as configurações de exportação.

  6. Na lista Projetos, selecione o projeto em que seu conjunto de dados do BigQuery está armazenado.

  7. Na lista Conjunto de dados de exportação de faturamento, especifique um conjunto de dados para onde os dados serão exportados.

    Dica: se você ainda não tiver um conjunto de dados do BigQuery, será solicitado a criar um. Se necessário, siga estas etapas para criar um novo conjunto de dados.

  8. Clique em Salvar.

Frequência de carregamentos de dados

  • Quando você ativa a exportação para o BigQuery pela primeira vez, pode levar algumas horas para começar a ver seus dados de faturamento do Google Cloud.
  • Os serviços do Google Cloud informam dados aos processos do Faturamento do Cloud em intervalos variados.
  • Os dados do Faturamento do Cloud são exportados para o conjunto de dados do BigQuery em intervalos regulares, não há garantias de entrega ou latência para a exportação para o BigQuery.
  • Como a frequência de relatórios de uso varia de acordo com o serviço do Google Cloud, talvez você não veja dados do Faturamento do Cloud imediatamente para todos os serviços do Google Cloud usados recentemente.
  • O conjunto de dados do BigQuery só reflete os dados do Faturamento do Cloud incorridos a partir da data em que você ativou e exportou pela primeira vez. Os dados do Faturamento do Cloud não são adicionados retroativamente. Por isso, você não verá os dados do Faturamento do Cloud referentes ao uso que ocorreram antes da exportação.
  • Se você excluir dados exportados, como os registros de exportação do BigQuery, não será possível preencher os registros excluídos.
  • Os carregamentos do BigQuery são compatíveis com ACID (em inglês). Portanto, se você consultar o conjunto de dados de exportação do Faturamento do Cloud do BigQuery enquanto os dados estiverem sendo carregados nele, não encontrará dados parcialmente carregados. Saiba mais sobre as características do BigQuery.

Tabela de uso

Logo após a ativação da exportação do Faturamento do Cloud para o BigQuery, a tabela de uso é criada automaticamente.

Se você quiser consolidar dados de faturamento de configurações ou versões anteriores da exportação do Faturamento do Cloud para o BigQuery, recomendamos manter os dados em tabelas separadas e usar uma consulta UNION.

Permissões do conjunto de dados

A exportação do Faturamento do Cloud para o BigQuery usa uma conta de serviço para gerenciar as permissões do conjunto de dados.

Quando você ativa a exportação do Faturamento do Cloud para o BigQuery, uma conta de serviço pertencente ao Google e gerenciada por ele é adicionada como proprietário ao conjunto de dados especificado. A conta de serviço tem esta aparência:

  • billing-export-bigquery@system.gserviceaccount.com

A conta de serviço fornece as permissões necessárias para que nosso processo off-line crie uma tabela e grave registros do Faturamento do Cloud nela.

Custo de uso

O uso do BigQuery para armazenar dados de uso gera tarifas mínimas. O carregamento de dados no conjunto de dados designado é gratuito, já que aproveita o pool de recursos compartilhados do BigQuery para carregar dados em lotes. Quando você exporta e analisa dados do Faturamento do Cloud com o BigQuery, o custo associado depende do volume de dados enviado, armazenado e consultado. Para ter uma ideia do quanto será cobrado, consulte Como estimar custos de armazenamento e consulta. Consulte os Preços do BigQuery para mais detalhes.

Dados de custo de uso do Google Cloud no BigQuery

Na tabela a seguir, veja o conteúdo dos dados de custo de uso do Google Cloud que são exportados para o BigQuery.

Campo Tipo Descrição
billing_account_id String

O ID da Conta de faturamento do Cloud ao qual o uso está associado.

Para revendedores: no caso de custos de uso gerados por uma subconta de faturamento do Cloud, trata-se do ID da subconta (não o ID da Conta de faturamento do Cloud do revendedor pai).

invoice.month String

O ano e o mês (AAAAMM) da fatura que inclui os itens de linha de custo. Por exemplo: "201901" equivale a janeiro de 2019.

Use este campo para ver as cobranças totais na fatura. Consulte Exemplos de consultas para exportação do Faturamento do Cloud para o BigQuery.

cost_type String

O tipo de custo representado por este item de linha: erro regular, imposto, ajuste ou arredondamento.

service.id String O código do serviço que está associado ao uso.
service.description String O serviço do Google Cloud que relatou os dados do Faturamento do Cloud.
sku.id String O ID do recurso usado pelo serviço. Para ver a lista completa de SKUs, consulte SKUs do Google Cloud.
sku.description String Uma descrição do tipo de recurso usado pelo serviço. Por exemplo, um tipo de recurso do Cloud Storage é o armazenamento padrão dos EUA.
usage_start_time Carimbo de data/hora O horário de início da janela de uso por hora em que o custo determinado foi calculado. O uso e os custos de todos os serviços são exibidos com granularidade de hora em hora, o que significa que o uso do serviço de longa duração está distribuído em várias janelas horárias.

Para mais informações, consulte a documentação do BigQuery sobre os tipos de dados de carimbo de data/hora. Consulte também Diferenças entre os dados exportados e as faturas abaixo.

usage_end_time Carimbo de data/hora O horário de término da janela de uso por hora em que o custo determinado foi calculado. O uso e os custos de todos os serviços são exibidos com granularidade de hora em hora, o que significa que o uso do serviço de longa duração está distribuído em várias janelas horárias.

Para mais informações, consulte a documentação do BigQuery sobre os tipos de dados de carimbo de data/hora. Consulte também Diferenças entre os dados exportados e as faturas abaixo.

project.id String O ID do projeto do Google Cloud que gerou os dados do Faturamento do Cloud.
project.name String O nome do projeto do Google Cloud que gerou os dados do Faturamento do Cloud.
project.ancestry_numbers String Os ancestrais na hierarquia de recursos do projeto identificado pelo project.id especificado (por exemplo, my-project-123).

Por exemplo: /ParentOrgNumber/ParentFolderNumber/. Saiba mais sobre a Hierarquia de recursos.

project.labels.key String Se houver rótulos, é a parte chave no par de chave-valor que compreende o rótulo no projeto do Google Cloud em que ocorreu o uso. Para mais informações sobre o uso de rótulos, consulte Como usar rótulos.
project.labels.value String Se houver rótulos, é a parte valor no par de chave-valor que compreende o rótulo no projeto do Google Cloud em que ocorreu o uso. Para mais informações sobre o uso de rótulos, consulte Como usar rótulos.
labels.key String Se houver rótulos, é a parte chave no par de chave-valor que compreende o rótulo no recurso do Google Cloud em que ocorreu o uso. Para mais informações sobre o uso de rótulos, consulte Como usar rótulos.
labels.value String Se houver rótulos, é a parte valor no par de chave-valor que compreende o rótulo no recurso do Google Cloud em que ocorreu o uso. Para mais informações sobre o uso de rótulos, consulte Como usar rótulos.
system_labels.key String Se houver rótulos do sistema, é a parte chave no par de chave-valor que compreende o rótulo gerado pelo sistema no recurso onde o uso ocorreu. Consulte também Rótulos do sistema disponíveis.
system_labels.value String Se houver rótulos do sistema, é a parte valor no par de chave-valor que compreende o rótulo gerado pelo sistema no recurso onde o uso ocorreu. Consulte também Rótulos do sistema disponíveis.
location.location String Local do uso no nível de um país, região ou zona, ou global para recursos que não têm local específico. Veja mais informações em Regiões e zonas.
location.country String Quando location.location é um país, região ou zona, este campo é o país de uso, por exemplo, US. Veja mais informações em Regiões e zonas.
location.region String Quando location.location é um país ou uma região, este campo é a região de uso, por exemplo, us-central1. Veja mais informações em Regiões e zonas.
location.zone String Quando location.location é uma zona, este campo é a zona de uso, por exemplo, us-central1-a. Veja mais informações em Regiões e zonas.
cost Ponto flutuante O custo do uso antes de qualquer crédito. Para conseguir o custo total, incluindo os créditos, é preciso incluir credits.amount no custo. Veja esta consulta de exemplo para mais informações.
currency String A moeda em que o custo é cobrado. Para mais informações, consulte Moeda local para faturamento e pagamentos.
currency_conversion_rate Ponto flutuante A taxa de câmbio de dólares americanos para a moeda local. Ou seja, cost/currency_conversion_rate é o custo em dólares americanos.
usage.amount Ponto flutuante A quantidade de usage.unit usada.
usage.unit String A unidade base em que o uso do recurso é medido. Por exemplo, a unidade base para armazenamento padrão é byte-segundos.
usage.amount_in_pricing_units Ponto flutuante A quantidade de usage.pricing_unit usada.
usage.pricing_unit String A unidade em que o uso de recursos é medido, de acordo com a API Cloud Billing Catalog.
credits.name String Uma descrição do crédito aplicado à conta de faturamento do Cloud.
credits.amount Ponto flutuante Valor do crédito aplicado ao uso. Os créditos são sempre valores negativos.
export_time Carimbo de data/hora Um tempo de processamento associado a um anexo de dados do Faturamento do Cloud. Ele sempre aumentará com cada nova exportação.
Consulte também Diferenças entre os dados exportados e as faturas abaixo.

Sobre os marcadores

Você verá colunas para marcadores no conjunto de dados do BigQuery, mas na versão atual alguns valores de marcadores estarão vazios. Os dados de exportação de rótulos serão preenchidos em horários diferentes para serviços diferentes, dependendo de quando cada serviço fornece esses dados.

Rótulos do sistema disponíveis

Os rótulos do sistema são pares de chave-valor para metadados importantes sobre o recurso que gerou o uso. Os seguintes rótulos de sistema são automaticamente incluídos no uso aplicável.

system_labels.key Exemplo de system_labels.value Descrição
compute.googleapis.com/machine_spec n1-standard-1, custom-2-2048 Configuração da máquina virtual. Consulte Tipos de máquina para mais informações.
compute.googleapis.com/cores para n1-standard-4 é 4. Para custom-2-2048 é 2 O número de vCPUs disponíveis para a máquina virtual.
compute.googleapis.com/memory para n1-standard-4 é 15360 (isto é, 15 GB * 1024 MB/GB), para custom-2-2048 é 2048 A quantidade de memória (em MB) disponível para a máquina virtual.

Diferenças entre os dados exportados e as faturas

Como os serviços do Google Cloud informam dados de uso e custo aos processos do Faturamento do Cloud em intervalos variados, pode haver um pequeno atraso nos informes de uso. No final de um mês, é possível que o uso informado com atraso não esteja incluído na fatura desse mês e, em vez disso, passe para a fatura do mês seguinte. No entanto, esse mesmo uso inclui um carimbo de data/hora de acordo com a data e a hora de uso real quando o uso é informado aos processos do Faturamento do Cloud.

Quando você consulta seus custos usando campos de carimbo de data/hora, os dados retornados podem identificar o uso informado posteriormente que não foi incluído originalmente na fatura gerada para o mesmo mês de uso. Consequentemente, os dados do Faturamento do Cloud retornados podem não ser mapeados diretamente para essa fatura.

Os campos do carimbo de data/hora incluem:

  • usage_start_time
  • usage_end_time
  • export_time

Para retornar dados do Faturamento do Cloud que sejam mapeados diretamente para uma fatura, consulte invoice.month em vez dos campos de carimbo de data/hora.

Erros e ajustes

No caso improvável de que os dados do Faturamento do Cloud contenham um erro ou exijam um ajuste, eles serão anexados com dados que anulam o erro. Todas as colunas permanecerão as mesmas, exceto estas:

  • cost
  • credit
  • usage.amount
  • export_time

Se você precisar determinar quais dados são novos, faça isso consultando export_time.