Exportar dados do Faturamento do Cloud para o BigQuery

Gerenciar e gerar relatórios de custos com eficiência é uma parte essencial da administração financeira, independentemente de você administrar uma empresa multimilionária ou uma pequena empresa familiar. 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 que você exporte automaticamente dados detalhados do Google Cloud (como uso e custo da estimativa de dados) 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álises detalhadas ou usar uma ferramenta como o Google Data Studio para visualizar seus dados. Também é possível usar este método de exportação para exportar dados para um arquivo JSON.

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

Permissões exigidas

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, primeiro crie um conjunto de dados do BigQuery.

Um conjunto de dados está contido em um Projeto do Cloud. Os 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 desses conjuntos 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 que você configure 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 para acesso às APIs do Faturamento do Cloud, 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 console Menu de navegação e selecione Faturamento.

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

    • Para gerenciar o Faturamento do Cloud para o projeto atual do Cloud, selecione Acessar 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 criado, 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. Portanto, se você consultar o conjunto de dados de exportação do Faturamento do Cloud do BigQuery enquanto os dados estiverem sendo carregados, não encontrará dados parcialmente carregados. Saiba mais sobre as características do BigQuery.

Tabela de uso

Logo depois de ativar a 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 anteriores ou versões 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 que pertence e é gerenciada pelo Google é adicionada como proprietário ao conjunto de dados que você especificar. 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 para ela.

Custo de uso

O uso do BigQuery para armazenar dados de uso acarreta em tarifas mínimas. Ao exportar e analisar dados do Faturamento do Cloud com o BigQuery, o custo associado dependerá da quantidade de dados que você envia, armazena e consulta. 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

A tabela a seguir descreve 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 código da conta de faturamento do Cloud ao qual o uso está associado.

Para revendedores: para custos de uso gerados por uma subconta de faturamento do Cloud, esse é o código (não o código 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 esse campo para ver as cobranças totais na fatura. Consulte Exportação do Faturamento do Cloud para exemplos de consulta do BigQuery.

cost_type String

O tipo de custo representado por este item de linha: erro regular, tributo, 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 código 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 para o 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 em execução longa está distribuído em várias janelas de hora em hora.

Para mais informações, consulte a documentação do BigQuery sobre os tipos de dados do 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 em execução longa está distribuído em várias janelas de hora em hora.

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

project.id String O código 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 para o 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 da chave do 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 do 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 da chave do 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 do par de chave-valor que compreende o rótulo no recurso 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 de chave do par de chave-valor que compreende o rótulo gerado pelo sistema no recurso em que 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 do par de chave-valor que compreende o rótulo gerado pelo sistema no recurso em que o uso ocorreu. Consulte também Rótulos do sistema disponíveis.
location.location String Localização 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 for um país ou uma região, este campo será 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 Flutuante O custo do uso antes de qualquer crédito. Para o custo total, incluindo os créditos, credits.amount precisa ser adicionado ao 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 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 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 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 Flutuante O 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 rótulos

Você verá colunas para rótulos no conjunto de dados do BigQuery, mas na versão atual alguns valores de rótulos 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 A configuração da máquina virtual. Consulte Tipos de máquinas 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 relatórios de uso. No final de um mês, é possível que o uso relatado 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 e 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. Como resultado, os dados do Faturamento do Cloud retornados podem não ser mapeados diretamente para essa fatura.

Os campos do carimbo de data/hora incluem o seguinte:

  • usage_start_time
  • usage_end_time
  • export_time

Para retornar dados do Faturamento do Cloud que mapeia 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 para as seguintes:

  • cost
  • credit
  • usage.amount
  • export_time

Se você precisar determinar quais dados são novos, poderá fazer isso consultando export_time.