Nesta página, descrevemos como configurar o Datastream para replicação em tabelas Iceberg do BigLake no BigQuery.
As tabelas do BigLake Iceberg oferecem a mesma experiência totalmente gerenciada das tabelas padrão do BigQuery, mas armazenam dados em buckets do Cloud Storage de propriedade do cliente no formato de tabela do Apache Iceberg e no formato de arquivo Parquet. Você pode consultar e analisar dados usando os recursos do BigQuery, mantendo os dados nos seus próprios buckets de armazenamento.
Metadados da tabela
O Datastream anexa uma coluna STRUCT chamada datastream_metadata a cada tabela gravada no destino do BigQuery.
A coluna datastream_metadata contém os seguintes campos:
UUID: esse campo tem o tipo de dadosSTRING.SOURCE_TIMESTAMP: esse campo tem o tipo de dadosINTEGER.CHANGE_SEQUENCE_NUMBER: esse campo tem o tipo de dadosSTRING. É um número de sequência interno usado pelo Datastream para cada evento de mudança.CHANGE_TYPE: esse campo tem o tipo de dadosSTRING. Ele indica o tipo do evento de mudança. Para o modo de gravação somente de anexação, o valor éINSERT.SORT_KEYS: esse campo contém uma matriz de valoresSTRING. Você pode usar os valores para classificar os eventos de mudança.
Configurar o streaming para tabelas do BigLake Iceberg
Para configurar o fluxo para ingerir dados em tabelas do BigLake Iceberg:
- Crie um bucket do Cloud Storage para armazenar seus dados.
- Crie uma conexão de recurso do Cloud no BigQuery. Para informações sobre como criar esse tipo de conexão, consulte Criar e configurar uma conexão de recursos do Cloud.
Consiga o identificador da conta de serviço de conexão:
bq show --location=LOCATION --connection --project_id=PROJECT_ID CONNECTION_NAMEConceda à sua conexão de recursos do Cloud acesso ao bucket do Cloud Storage criado. Para fazer isso, adicione a permissão do IAM
storage.adminà conta de serviço da conexão:gcloud storage buckets add-iam-policy-binding gs://YOUR_GCS_BUCKET \ --member=serviceAccount:YOUR_SERVICE_ACCOUNT_ID \ --role=roles/storage.adminCrie um fluxo de tabelas do BigLake Iceberg.
Para informações sobre como criar um fluxo de tabelas Iceberg do BigLake usando o console do Google Cloud , consulte Criar um fluxo.
Para informações sobre como criar uma solicitação para transmitir dados para tabelas do BigLake Iceberg usando REST,
Google Cloud CLIou Terraform, consulte Gerenciar streams usando a API.
A seguir
- Para saber mais sobre streams, consulte Ciclo de vida do stream.
- Para saber como criar um stream, consulte Criar um stream.
- Para saber como criar um perfil de conexão que pode ser usado com um fluxo de tabelas Iceberg do BigLake, consulte Criar um perfil de conexão para o BigQuery.