Questa sezione contiene informazioni su:
- Il comportamento di Datastream per la gestione dei dati estratti da un database MySQL di origine
- Le versioni del database MySQL supportate da Datastream
- Limitazioni note per l'utilizzo del database MySQL come origine
- Una panoramica su come configurare un database MySQL di origine in modo che i dati possano essere trasmessi in flusso da un database a una destinazione
Comportamento
Il database MySQL di origine si basa sulla funzionalità del log binario per esporre le modifiche ai dati.
- È possibile selezionare tutti i database o database specifici di una determinata origine MySQL, nonché tutte le tabelle dei database o di tabelle specifiche.
- Tutti i dati storici vengono replicati.
- Tutte le modifiche al linguaggio di manipolazione dei dati (DML), come inserimenti, aggiornamenti ed eliminazioni dai database e dalle tabelle specificati, vengono replicate.
- Vengono replicate solo le modifiche di cui è stato eseguito il commit.
Versioni
Datastream supporta le seguenti versioni del database MySQL:
- MySQL 5.6
- MySQL 5.7
- MySQL 8.0
Datastream supporta i seguenti tipi di database MySQL:
- MySQL in self-hosted
- Cloud SQL per MySQL
- Amazon RDS per MySQL
- Amazon Aurora MySQL
- MariaDB
- Alibaba Cloud PolarDB
- Server Percona per MySQL
Limitazioni note
Le limitazioni note per l'utilizzo del database MySQL come origine includono:
- Gli stream sono limitati a 10.000 tabelle.
- Non è possibile eseguire il backfill delle tabelle con una chiave primaria definita come
INVISIBLE
. - Non è possibile eseguire il backfill di una tabella con più di 500 milioni di righe, a meno che non siano soddisfatte le seguenti condizioni:
- La tabella ha un indice univoco.
- Nessuna delle colonne dell'indice può essere annullata.
- L'indice non è decrescente.
- Tutte le colonne dell'indice sono incluse nello stream.
- Datastream recupera periodicamente lo schema più recente dall'origine durante l'elaborazione degli eventi. Se uno schema cambia, Datastream lo rileva e attiva un recupero dello schema. Tuttavia, alcuni eventi potrebbero essere elaborati in modo errato o essere eliminati tra i recuperi dello schema, il che può causare discrepanze nei dati.
- Non tutte le modifiche allo schema di origine possono essere rilevate automaticamente e in questo caso i dati potrebbero essere danneggiati. Le seguenti modifiche allo schema potrebbero danneggiare i dati o danneggiare l'elaborazione degli eventi downstream:
- Eliminazione di colonne
- Aggiungere colonne al centro di una tabella
- Modifica del tipo di dati di una colonna
- Riordinare le colonne
- Eliminazione di tabelle (rilevante se la stessa tabella viene poi ricreata con l'aggiunta di nuovi dati)
- Troncamento delle tabelle
- Datastream non supporta la replica delle visualizzazioni.
- Datastream non supporta le colonne di tipi di dati spaziali. I valori in queste colonne sono sostituiti con i valori
NULL
. - Datastream non supporta il valore zero (
0000-00-00 00:00:00
) nelle colonne dei tipi di datiDATETIME
,DATE
oTIMESTAMP
. Il valore zero viene sostituito con il valoreNULL
. - Datastream non supporta la replica di righe che includono i seguenti valori nelle colonne
JSON
:DECIMAL
,NEWDECIMAL
,TIME
,TIME2
DATETIME
,DATETIME2
,DATE
,TIMESTAMP
oTIMESTAMP2
. Gli eventi contenenti questi valori vengono ignorati. - Datastream non supporta la compressione delle transazioni dei log binari.
- Datastream non supporta le catene di certificati SSL nei profili di connessione MySQL di origine. Sono supportati solo certificati singoli x509 con codifica PEM.
- Datastream non supporta le eliminazioni in cascata. Questi eventi non vengono scritti nel log binario e, di conseguenza, non vengono propagati nella destinazione.
- Datastream non supporta i failover alle repliche. Per questo motivo, sconsigliamo di utilizzare Datastream per la replica da origini Cloud SQL per MySQL Enterprise Plus. Le istanze della versione Enterprise Plus di Cloud SQL sono soggette a manutenzione con tempi di inattività quasi azzerati e al failover su una replica durante la manutenzione. Questo interrompe la continuità del binlog e, di conseguenza, i flussi interessati si interrompono definitivamente.
Passaggi successivi
- Scopri come configurare un'origine MySQL per l'utilizzo con Datastream.