Configure um destino do Cloud Storage

Esta página descreve como configurar o fluxo de dados para escrever dados num contentor do Cloud Storage.

O Cloud Storage é um serviço para armazenar dados na Google Cloud. Armazena os dados como objetos em contentores denominados recipientes. Quando faz streaming para o Cloud Storage, o Datastream organiza os dados por nome do objeto e data/hora. Em seguida, pode consumir os seus dados através da API Cloud Storage. Para mais informações, consulte o artigo Acerca dos contentores do Cloud Storage.

Ative a API

A ativação da API Datastream é suficiente quando o contentor de armazenamento na nuvem de destino está no mesmo projeto que o Datastream.

Se estiver a escrever num contentor num projeto diferente, tem de conceder à conta de serviço associada à autorização do fluxo de dados acesso ao contentor.

  1. Obtenha o endereço de email usado para a conta de serviço. Para o fazer, encontre o Número do projeto na Google Cloud página inicial da consola. O endereço de email da conta de serviço é service-[project_number]@gcp-sa-datastream.iam.gserviceaccount.com.
  2. Conceda a este endereço de email as autorizações necessárias para escrever no contentor de destino (normalmente, as autorizações roles/storage.objectViewer, roles/storage.objectCreator e roles/storage.legacyBucketReader).

Especifique o prefixo e o contentor de destino

Indique o nome do projeto, o nome do contentor e o prefixo do ficheiro opcional na configuração da stream para determinar onde os dados são escritos.

Comportamento de escrita

  • Os dados de uma determinada stream são escritos no prefixo do ficheiro ou no contentor fornecido em: [bucket]/[prefix]/[object name]/yyyy/mm/dd/hh/mm/[filename(idempotent)].
  • O nome do objeto no caminho para origens de base de dados é o nome do esquema seguido do nome da tabela (separados por um sublinhado "_").
  • A data/hora no caminho (hh/mm) é a data/hora de origem dos metadados do evento.
    • Para eventos de preenchimento, a data/hora representa a hora em que a tarefa de preenchimento foi iniciada (normalmente, quando a stream foi iniciada ou quando o preenchimento foi acionado manualmente).
    • Para eventos de CDC, a data/hora representa o momento em que o registo foi alterado na origem.
  • Os ficheiros são rodados sempre que o tamanho máximo do ficheiro ou o tempo limite máximo é atingido, consoante o que ocorrer primeiro. Pode ajustar o tamanho máximo do ficheiro e os valores de tempo limite máximo através da API Datastream.
  • Além disso, os ficheiros são rodados sempre que é detetada uma alteração do esquema de origem (por exemplo, é adicionada uma nova coluna).
  • Pode haver vários ficheiros no mesmo caminho para o mesmo minuto.
  • O consumo dos dados pode ser feito de acordo com a API Cloud Storage.
  • O tamanho máximo do evento quando transmite dados para o Cloud Storage é de 100 MB.

Em alguns casos, mais frequentemente quando uma stream começa a ser executada, existe uma sobreposição entre o preenchimento e a CDC, o que resulta em eventos duplicados. Isto acontece quando a stream de dados começa a ler a partir do ficheiro de registo da base de dados atual (que foi criado antes do início da stream) e este ficheiro de registo inclui alguns eventos que também são capturados pelo preenchimento. Este é o comportamento esperado e, se necessário, é possível eliminar eventos duplicados através dos metadados de eventos.

O que se segue?