Abilita l'API
L'abilitazione dell'API Datastream è sufficiente quando il bucket Cloud Storage di destinazione si trova nello stesso progetto di Datastream.
Se stai scrivendo in un bucket di un altro progetto, devi fornire all'account di servizio associato all'autorizzazione Datastream l'accesso al bucket.
- Scarica l'indirizzo email utilizzato per l'account di servizio. A tal fine, individua il numero di progetto nella home page della console Google Cloud. L'indirizzo email dell'account di servizio sarà
service-[project_number]@gcp-sa-datastream.iam.gserviceaccount.com
. - Concedi a questo indirizzo email le autorizzazioni richieste per scrivere nel bucket di destinazione (in genere le autorizzazioni
roles/storage.objectViewer
,roles/storage.objectCreator
eroles/storage.legacyBucketReader
).
Specifica il bucket e il prefisso di destinazione
Fornisci il nome del progetto, il nome del bucket e il prefisso file facoltativo nella configurazione dello stream per determinare dove vengono scritti i dati.
Comportamento di scrittura
- I dati di un determinato stream vengono scritti nel bucket o nel prefisso file fornito all'indirizzo:
[bucket]/[prefix]/[object name]/yyyy/mm/dd/hh/mm/[filename(idempotent)]
. - Il nome dell'oggetto nel percorso per le origini database è il nome dello schema seguito dal nome della tabella (separati da un trattino basso '_').
- Il timestamp nel percorso (hh/mm) è il timestamp di origine dei metadati dell'evento.
- Per gli eventi di backfill, il timestamp rappresenta il momento in cui è stata avviata l'attività di backfill (in genere quando è stato avviato lo stream o quando il backfill è stato attivato manualmente).
- Per gli eventi CDC, il timestamp indica quando il record è stato modificato nell'origine.
- I file vengono ruotati ogni volta che viene raggiunta la dimensione massima del file o il timeout massimo, a seconda dell'evento che si verifica per primo. Puoi modificare le dimensioni massime del file e i valori di timeout massimo utilizzando l'API Datastream.
- Inoltre, i file vengono ruotati ogni volta che viene rilevata una modifica dello schema di origine (ad esempio, viene aggiunta una nuova colonna).
- Possono essere presenti più file nello stesso percorso per lo stesso minuto.
- L'utilizzo dei dati può essere eseguito in base all'API Cloud Storage.
- La dimensione massima di un evento quando importi i dati in streaming in Cloud Storage è 100 MB.
In alcuni casi, in genere quando uno stream inizia a essere eseguito per la prima volta, si verifica una sovrapposizione tra il backfill e il CDC, con conseguente duplicazione degli eventi. Questo accade quando Datastream inizia a leggere dal file di log del database corrente (creato prima dell'avvio dello stream) e questo file di log include alcuni eventi acquisiti anche dal backfill. Si tratta di un comportamento previsto e, se necessario, gli eventi duplicati possono essere eliminati utilizzando i metadati degli eventi.