Comportamento e casi d'uso
Datastream consente di importare i dati di origine da un sistema di gestione di database relazionali (RDBMS) e da altre origini in destinazioni come BigQuery, tabelle Apache Iceberg e Cloud Storage quasi in tempo reale. Ciò consente di utilizzare i dati a valle, ad esempio caricandoli in BigQuery per il data warehousing e l'analisi o eseguendo job Apache Spark sui dati per carichi di lavoro di intelligenza artificiale e machine learning.
Concetti
Questa sezione descrive i concetti principali che devi comprendere per utilizzare Datastream in modo efficace.
Change Data Capture (CDC)
Change Data Capture (CDC) è un insieme di pattern di progettazione software utilizzati per determinare e monitorare i dati modificati in modo che le applicazioni possano elaborare gli aggiornamenti. CDC è anche un approccio all'integrazione dei dati basato sull'identificazione, l'acquisizione e la distribuzione delle modifiche apportate alle origini dati aziendali.
Event Sourcing
Il pattern di progettazione event sourcing acquisisce ogni modifica allo stato di un'applicazione in un oggetto evento. Utilizzando Event Sourcing, un'applicazione può ricostruire il proprio stato, eseguire il ripristino point-in-time (elaborando gli eventi fino a quel punto), ricalcolare lo stato quando la logica di business cambia o abilitare un'architettura Command Query Responsibility Segregation (CQRS). Con l'evoluzione degli strumenti per l'elaborazione degli eventi in tempo reale, molte applicazioni utilizzano il modello Event Sourcing. I database transazionali sono intrinsecamente orientati agli eventi per soddisfare i requisiti di atomicità, coerenza, isolamento e durabilità (ACID).
Database transazionali
In un database transazionale, l'insieme di operazioni eseguite dal database viene
in genere scritto in un log write-ahead (WAL) prima che vengano
eseguite operazioni sul motore di archiviazione. Dopo che un'operazione viene eseguita sul motore di archiviazione e viene eseguito il commit nel WAL, l'operazione viene considerata riuscita. L'utilizzo di un WAL consente di ottenere atomicità e durabilità e consente anche la replica ad alta fedeltà del database. Alcuni database scrivono nel log l'operazione esatta che si verifica a livello di archiviazione (ad esempio, write 0x41 at location 20), quindi queste azioni possono essere replicate solo sullo stesso motore di archiviazione. Altri database registrano un'istruzione logica completa (o riga) che può essere rieseguita su un motore di archiviazione diverso.
Eventi e flussi di dati
Datastream importa grandi volumi di dati quasi in tempo reale da una varietà di origini e li rende disponibili per l'utilizzo nella destinazione. L'unità di dati archiviata da Datastream è un evento. Un flusso rappresenta l'importazione continua di eventi da un'origine e la loro scrittura in una destinazione.
Tipi unificati
Le origini dati hanno i propri tipi di dati, alcuni specifici del database stesso e altri generici e condivisi tra i database. Poiché più origini generano flussi verso una destinazione unificata, è necessaria una rappresentazione standard del tipo di origine originale in tutte le origini. Il tipo unificato è una rappresentazione comune e senza perdita dei tipi di dati in tutte le origini, in modo che i dati possano essere utilizzati in modo coeso. I tipi unificati supportati da Datastream rappresentano il superset di tutti i tipi normalizzati nei sistemi di origine supportati.
Contesto entità
Datastream ha cinque entità:
- Le configurazioni di connettività privata consentono a Datastream di comunicare con le origini dati tramite una connessione di rete privata e sicura. Questa comunicazione avviene tramite il peering del Virtual Private Cloud (VPC).
- I profili di connessione rappresentano le informazioni di connettività per un database di origine o di destinazione specifico.
- I flussi rappresentano una coppia di profili di connessione di origine e destinazione, insieme alle impostazioni specifiche del flusso.
- Gli oggetti rappresentano una parte di un flusso. Ad esempio, un flusso di database ha un oggetto dati per ogni tabella di cui viene eseguito lo streaming.
- Gli eventi rappresentano ogni modifica del data manipulation language (DML) per un determinato oggetto.
Dopo aver creato una configurazione di connettività privata, puoi connetterti alle origini ospitate in Google Cloud o altrove tramite un canale di comunicazione privato. La connettività privata è facoltativa. Datastream supporta anche altre modalità di connettività sulle reti pubbliche.
Dopo aver creato un profilo di connessione per un'origine e una destinazione, puoi creare flussi che utilizzano le informazioni archiviate nei profili di connessione per trasferire i dati dall'origine alla destinazione.
Dopo aver creato un flusso, Datastream si connette direttamente all'origine, utilizza i contenuti, quindi elabora e scrive gli eventi nella destinazione in base alla struttura degli eventi.
Puoi gestire le configurazioni di connettività privata e i profili di connessione separatamente dai flussi per il riutilizzo.
Funzionalità
Le funzionalità di Datastream includono:
- Serverless: configura un flusso e i dati iniziano a spostarsi. Non sono previsti costi generali per installazione, allocazione delle risorse o manutenzione. Man mano che i volumi di dati cambiano, le funzionalità di scalabilità automatica di Datastream allocano automaticamente le risorse per mantenere i dati in movimento quasi in tempo reale.
- Schema di tipi unificati basato su Avro: Datastream consente l'elaborazione indipendente dall'origine convertendo tutti i tipi di dati specifici dell'origine in uno schema di tipi Datastream unificato, basato sui tipi Avro.
- Trasmetti i dati storici e CDC: Datastream trasmette i dati di origine storici e CDC contemporaneamente quasi in tempo reale.
- CDC Oracle senza licenze aggiuntive: Datastream fornisce lo streaming CDC basato su LogMiner da qualsiasi versione di origine Oracle 11.2 e successive, senza richiedere licenze aggiuntive o installazioni di software.
- Destinazione BigQuery: le modifiche nell'origine vengono replicate continuamente nelle tabelle BigQuery quasi in tempo reale. I dati in BigQuery sono disponibili per l'analisi con un ritardo minimo.
- Destinazione Cloud Storage: i dati CDC vengono scritti continuamente in file Avro o JSON autodescrittivi in Cloud Storage. Questi dati sono disponibili per l'elaborazione aggiuntiva, direttamente in loco o caricandoli a valle in un'altra destinazione come Spanner.
- Gestione centralizzata dei metadati con Knowledge Catalog: le risorse Datastream, come flussi, profili di connessione e configurazioni di connettività, vengono sincronizzate automaticamente con Knowledge Catalog. In questo modo, puoi cercare e sfogliare questi asset direttamente nell'interfaccia utente di Knowledge Catalog.
Casi d'uso
Esistono tre scenari principali per l'utilizzo di Datastream:
- Integrazione dei dati: i flussi di dati provenienti da database e servizi cloud software as a service (SaaS) possono alimentare una pipeline di integrazione dei dati quasi in tempo reale caricando i dati in BigQuery.
- Analisi in streaming: le modifiche ai database vengono importate nelle pipeline di streaming che utilizzano Dataflow per il rilevamento delle frodi, l'elaborazione degli eventi di sicurezza e il rilevamento delle anomalie.
- Disponibilità quasi in tempo reale delle modifiche dei dati: la disponibilità delle modifiche dei dati quasi in tempo reale consente alle applicazioni di intelligenza artificiale e machine learning di prevenire il churn o aumentare il coinvolgimento tramite campagne di marketing o reinserendo i dati nei sistemi di produzione.
Panoramica comportamento
Datastream consente di trasmettere in streaming le modifiche in corso da più origini dati direttamente in Google Cloud.
Fonti
- Prima di utilizzare un'origine con Datastream, devi configurare l'autenticazione e le opzioni di origine aggiuntive.
- Ogni origine genera eventi che riflettono tutte le modifiche del data manipulation language (DML).
- Ogni flusso può eseguire il backfill dei dati storici e trasmettere in streaming le modifiche in corso nella destinazione.
Destinazioni
Datastream supporta BigQuery, le tabelle Apache Iceberg e Cloud Storage come destinazioni. Quando crei un flusso, definisci la configurazione della destinazione.
Distribuzione di eventi
- L'ordine degli eventi non è garantito. I metadati degli eventi includono informazioni che possono essere utilizzate per ordinare gli eventi.
- La distribuzione degli eventi avviene almeno una volta. I metadati degli eventi includono dati che possono essere utilizzati per rimuovere eventuali dati duplicati nella destinazione.
- La dimensione dell'evento è limitata a 20 MB per evento per le destinazioni BigQuery e a 100 MB per evento per le destinazioni Cloud Storage.
Per saperne di più sugli eventi, consulta Eventi e flussi di dati.
Alta affidabilità e ripristino di emergenza
Datastream fornisce alta affidabilità tra le zone e gestisce il ripristino di emergenza durante le interruzioni regionali:
Alta affidabilità: Datastream è un servizio regionale, in esecuzione in più zone di ogni regione. Un errore di una singola zona in una regione non influisce sulla disponibilità o sulla qualità del servizio in altre zone.
Disaster recovery: in caso di errore in una regione, tutti i flussi in esecuzione in quella regione non sono disponibili per la durata dell'interruzione. Una volta risolta l'interruzione, Datastream riprende da dove si era interrotto e tutti i dati che non sono stati scritti nella destinazione vengono recuperati di nuovo dall'origine. In questo caso, nella destinazione potrebbero esistere dati duplicati. Per informazioni sulla rimozione dei dati duplicati, consulta Distribuzione di eventi.
Dati iniziali e dati CDC
Poiché le origini dati contengono dati esistenti prima che l'origine si connetta a un flusso (dati storici), Datastream genera eventi sia dai dati storici sia dalle modifiche dei dati che si verificano in tempo reale.
Per garantire un accesso rapido ai dati, i dati storici e le modifiche dei dati in tempo reale vengono replicati contemporaneamente nella destinazione. I metadati degli eventi indicano se un evento proviene dal backfill o da CDC.
Passaggi successivi
- Scopri di più su Datastream.
- Scopri di più sulle mappature dei tipi unificati.
- Scopri di più sulle origini supportate.
- Scopri di più sulle destinazioni supportate destinations.
- Crea configurazioni di connettività privata, profili di connessione, e flussi.