Destino no BigQuery

Esta página oferece uma visão geral do destino do BigQuery. Ela descreve o comportamento de gravação e as limitações conhecidas do Datastream ao replicar dados no BigQuery.

Comportamento de gravação

  • O tamanho máximo do evento ao transmitir dados para o BigQuery é de 20 MB.

  • Ao configurar o stream, você pode selecionar a maneira como o Datastream grava os dados de mudança no BigQuery. Para mais informações, consulte Configurar o modo de gravação.

Metadados da tabela

O Datastream anexa uma coluna STRUCT chamada datastream_metadata a cada tabela gravada no destino do BigQuery.

Modo de gravação de mesclagem

Se uma tabela tiver uma chave primária na origem, a coluna vai conter os seguintes campos:

  • UUID: esse campo tem o tipo de dados STRING.
  • SOURCE_TIMESTAMP: esse campo tem o tipo de dados INTEGER.

Se uma tabela não tiver uma chave primária, a coluna vai conter um campo adicional: IS_DELETED. Esse campo tem o tipo de dados BOOLEAN e indica se os dados que o Datastream transmite para o destino estão associados a uma operação DELETE na origem. Tabelas sem chaves primárias são apenas de anexação.

Modo de gravação somente de anexação

A coluna datastream_metadata contém os mesmos campos para tabelas com e sem chaves primárias:

  • UUID: esse campo tem o tipo de dados STRING.
  • SOURCE_TIMESTAMP: esse campo tem o tipo de dados INTEGER.
  • CHANGE_SEQUENCE_NUMBER: esse campo tem o tipo de dados STRING. É um número de sequência interno usado pelo Datastream para cada evento de mudança.
  • CHANGE_TYPE: esse campo tem o tipo de dados STRING. Ele indica o tipo de evento de mudança: INSERT, UPDATE-INSERT, UPDATE-DELETE ou DELETE.
  • SORT_KEYS: esse campo contém uma matriz de valores STRING. Você pode usar os valores para classificar os eventos de mudança.

Controlar custos do BigQuery

Os custos do BigQuery são cobrados separadamente do Datastream. Para saber como controlar os custos do BigQuery, consulte Preços do CDC do BigQuery.

Práticas recomendadas de gerenciamento de custos

Ao usar o Datastream com o BigQuery como destino, considere as seguintes práticas recomendadas de gerenciamento de custos:

  • Entenda os custos do CDC do BigQuery: ao usar o Datastream com o BigQuery como destino, a captura de dados de mudança (CDC) envolve operações de mesclagem em segundo plano que são faturadas como uso da SKU Análise.
  • Use reservas do BigQuery: para gerenciar e limitar os custos associados aos jobs de mesclagem do CDC, recomendamos que você compre uma BigQuery. Isso oferece uma capacidade fixa por um preço fixo, tornando seus custos mais previsíveis.
  • Ajuste max_staleness: o parâmetro max_staleness no BigQuery é uma troca direta entre a atualização de dados e o custo. Um valor menor significa operações de mesclagem mais frequentes e custos mais altos, mas dados mais recentes. Ajuste esse parâmetro para um nível que atenda aos requisitos de negócios para atualização de dados sem exceder o orçamento. Para mais informações, consulte Gerenciar a obsolescência da tabela.

Limitações conhecidas

As limitações conhecidas para o uso do BigQuery como destino incluem:

  • Por padrão, o Datastream não oferece suporte à adição de uma chave primária a uma tabela que já foi replicada para o BigQuery sem uma chave primária ou à remoção de uma chave primária de uma tabela replicada para o BigQuery com uma chave primária. Se você precisar fazer essas mudanças, entre em contato com o Suporte do Google. Para informações sobre como mudar a definição da chave primária de uma tabela de origem que já tem uma chave primária, consulte Diagnosticar problemas.
  • As chaves primárias no BigQuery precisam ser dos seguintes tipos de dados:

    • DATE
    • BOOL
    • GEOGRAPHY
    • INT64
    • NUMERIC
    • BIGNUMERIC
    • STRING
    • TIMESTAMP
    • DATETIME

    As tabelas que contêm chaves primárias de tipos de dados sem suporte não são replicadas pelo Datastream.

  • O BigQuery não oferece suporte a nomes de tabelas com caracteres ., $, /, @ , ou +. O Datastream substitui esses caracteres por sublinhados ao criar tabelas de destino.

    Por exemplo, table.name no banco de dados de origem se torna table_name no BigQuery.

    Para mais informações sobre nomes de tabelas no BigQuery, consulte Nomenclatura de tabelas.

  • O BigQuery não oferece suporte a mais de quatro colunas de clusterização. Ao replicar uma tabela com mais de quatro colunas de chave primária, o Datastream usa quatro colunas de chave primária como colunas de clusterização.

  • O Datastream mapeia literais de data e hora fora do intervalo, como tipos de data infinita do PostgreSQL, para os seguintes valores:

    • DATE positivo para o valor de 9999-12-31
    • DATE negativo para o valor de 0001-01-01
    • TIMESTAMP positivo para o valor de 9999-12-31 23:59:59.999000 UTC
    • TIMESTAMP negativo para o valor de 0001-01-01 00:00:00 UTC
  • O BigQuery não oferece suporte a tabelas de streaming que têm chaves primárias dos tipos de dados FLOAT ou REAL. Essas tabelas não são replicadas. Para saber mais sobre os tipos e intervalos de datas do BigQuery, consulte Tipos de dados.

  • Se a origem for o Salesforce ou o Salesforce Marketing Cloud (versão prévia), a opção de configuração Conjunto de dados para cada esquema não será aceita.

A seguir