Comportamento e casi d'uso
Datastream consente agli utenti 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 in modo quasi in tempo reale. Ciò consente di utilizzare i dati in downstream, ad esempio caricandoli in BigQuery per il data warehousing e l'analisi o eseguendo job Spark sui dati per casi d'uso 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 sia possibile intraprendere azioni utilizzando i dati modificati. 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
Introdotto nel 2005, event sourcing è un design pattern in cui ogni modifica allo stato di un'applicazione viene acquisita in un oggetto evento. Utilizzando Event Sourcing, un'applicazione può ricostruire il suo stato, eseguire il recupero point-in-time (elaborando l'evento fino a quel punto), ricalcolare lo stato in caso di una modifica della logica o abilitare la progettazione Command Query Responsibility Segregation (CQRS). Con l'evoluzione degli strumenti per l'elaborazione degli eventi in tempo reale, molte applicazioni stanno passando al modello Event Sourcing. Storicamente, i database transazionali sono sempre stati orientati agli eventi, a causa dei requisiti di atomicità, coerenza, isolamento e durabilità (ACID).
Database transazionali
In un database transazionale, l'insieme di operazioni che il database eseguirà 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 WAL consente l'atomicità e la durabilità e consente anche la replica ad alta fedeltà del database. Alcuni database scrivono nel log l'operazione esatta che verrà eseguita a livello di archiviazione (ad esempio, write 0x41 on location 20), quindi queste azioni possono essere replicate (o ripetute) solo sullo stesso motore di archiviazione. Altri database registrano un'istruzione logica completa (o una riga) che può essere rieseguita su un motore di archiviazione diverso.
Eventi e flussi di dati
Datastream importa una grande quantità di dati in modo 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, alcuni specifici del database stesso e altri generici e condivisi tra i database. Poiché esistono molte origini diverse che generano flussi verso una destinazione unificata, deve esistere un modo standard e unificato per rappresentare il tipo di origine originale in tutte le origini. Il tipo unificato è un modo comune e senza perdita di rappresentare i tipi di dati in tutte le origini in modo che possano essere utilizzati in modo coeso. I tipi unificati supportati da Datastream rappresenteranno il superset di tutti i tipi normalizzati in tutti i sistemi di origine supportati, in modo che tutti i tipi possano essere supportati senza perdita.
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à a 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 secondaria 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 flusso, Datastream si connette direttamente all'origine, utilizza i contenuti, quindi elabora e scrive gli eventi nella destinazione in base alla struttura degli eventi.
Le configurazioni di connettività privata e i profili di connessione possono essere gestiti separatamente dai flussi per il riutilizzo.
Funzionalità
Le funzionalità di Datastream includono:
- Serverless: puoi configurare un flusso per iniziare a trasferire i dati. Non sono previsti costi generali per installazione, allocazione delle risorse o manutenzione. Man mano che i volumi di dati crescono e si riducono, le funzionalità di scalabilità automatica di Datastream allocano risorse per mantenere i dati in movimento in modo quasi in tempo reale e automatico.
- Schema dei tipi unificato basato su Avro: Datastream consente l'elaborazione indipendente dall'origine convertendo tutti i tipi di dati specifici dell'origine in uno schema dei tipi unificato di Datastream, basato sui tipi Avro.
- Streaming di dati storici e CDC: Datastream esegue lo streaming dei dati di origine storici e CDC in modo quasi in tempo reale e simultaneo.
CDC Oracle senza licenze aggiuntive: Datastream fornisce lo streaming CDC basato su LogMiner da qualsiasi versione di origine Oracle 11.2g e successive, senza la necessità di pagare licenze aggiuntive o installazioni di software.
Destinazione BigQuery: le modifiche all'origine vengono replicate continuamente nelle tabelle BigQuery in modo quasi in tempo reale. I dati in BigQuery sono disponibili quasi immediatamente per l'analisi.
Destinazione Cloud Storage: i dati CDC vengono scritti continuamente in file Avro o JSON autodescrittivi in Cloud Storage. Queste informazioni sono utilizzabili per l'elaborazione aggiuntiva, direttamente in loco o caricandole in downstream 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 dei flussi di dati: le modifiche ai database vengono importate nelle pipeline di streaming, ad esempio con Dataflow, per il rilevamento di frodi, l'elaborazione di eventi di sicurezza e il rilevamento di anomalie.
- Disponibilità quasi in tempo reale delle modifiche ai dati: la disponibilità delle modifiche ai dati in modo quasi in tempo reale consente alle applicazioni di intelligenza artificiale e machine learning di prevenire il churn o aumentare il coinvolgimento utilizzando gli sforzi di marketing o alimentando i sistemi di produzione.
Panoramica comportamento
Datastream consente ai clienti di eseguire lo streaming delle modifiche in corso da più origini dati direttamente in Google Cloud.
Fonti
- È necessario eseguire la configurazione di un'origine per poterla utilizzare con Datastream, inclusi l'autenticazione e le opzioni di configurazione aggiuntive.
- Ogni origine genera eventi che riflettono tutte le modifiche del data manipulation language (DML).
- Ogni flusso può eseguire il backfill dei dati storici, nonché lo streaming delle modifiche in corso nella destinazione.
Destinazioni
Datastream supporta BigQuery, le tabelle Apache Iceberg e Cloud Storage come destinazioni. Quando viene creato il flusso, viene definita 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 degli eventi è 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
Questa sezione contiene informazioni su come Datastream gestisce gli scenari associati all'alta affidabilità e al ripristino di emergenza.
Alta affidabilità: Datastream è un servizio regionale, in esecuzione su più zone in ogni regione. Un errore in una singola zona di una regione non influisce sulla disponibilità o sulla qualità del servizio in altre zone.
Disaster recovery: se si verifica un errore in una regione, tutti i flussi in esecuzione in quella regione non saranno disponibili per la durata dell'interruzione. Una volta risolta l'interruzione, Datastream continuerà esattamente da dove si era interrotto e tutti i dati che non sono stati scritti nella destinazione verranno recuperati di nuovo dall'origine. In questo caso, nella destinazione potrebbero essere presenti duplicati dei dati. Per saperne di più sulla rimozione dei dati duplicati, consulta Distribuzione di eventi.
Dati iniziali e dati CDC
Poiché le origini dati contengono dati esistenti prima del momento in cui l'origine è stata connessa a un flusso (dati storici), Datastream genera eventi sia dai dati storici sia dalle modifiche ai dati che si verificano in tempo reale.
Per garantire un accesso rapido ai dati, i dati storici e le modifiche ai dati in tempo reale vengono replicati simultaneamente nella destinazione. I metadati degli eventi indicano se l'evento proviene dal backfill o dal CDC.
Passaggi successivi
- Scopri di più su Datastream.
- Scopri di più sui mapping dei tipi unificati.
- Scopri di più sulle origini supportate da Datastream.
- Scopri di più sulle destinazioni supportate da Datastream.
- Scopri come creare configurazioni di connettività privata, profili di connessione e flussi.