Cette section contient des informations sur les éléments suivants :
- Comportement de la manière dont Datastream gère les données extraites d'une base de données MySQL source
- Versions de la base de données MySQL compatibles avec Datastream
- Limites connues concernant l'utilisation d'une base de données MySQL en tant que source
- Présentation de la configuration d'une base de données MySQL source afin que les données puissent être diffusées en streaming vers une destination
Comportement
La base de données MySQL source s'appuie sur sa fonctionnalité de journal binaire pour exposer les modifications apportées aux données.
- Vous pouvez sélectionner toutes les bases de données ou certaines bases de données d'une source MySQL donnée, ainsi que toutes les tables des bases de données ou de tables spécifiques.
- Toutes les données historiques sont répliquées.
- Toutes les modifications du langage de manipulation de données (LMD), telles que les insertions, les mises à jour et les suppressions des bases de données et des tables spécifiées, sont répliquées.
- Seules les modifications validées sont répliquées.
Versions
Datastream est compatible avec les versions suivantes de la base de données MySQL :
- MySQL 5.6
- MySQL 5.7
- MySQL 8.0
Datastream est compatible avec les types de base de données MySQL suivants :
- MySQL auto-hébergé
- Cloud SQL pour MySQL
- Amazon RDS pour MySQL
- Amazon Aurora MySQL
- MariaDB
- Alibaba Cloud PolarDB
- Percona Server pour MySQL
Limitations connues
Les limites connues d'utilisation de la base de données MySQL en tant que source incluent les suivantes :
- Les flux sont limités à 10 000 tables.
- Les tables dont la clé primaire est définie sur
INVISIBLE
ne peuvent pas être remplies. - Une table contenant plus de 500 millions de lignes ne peut pas être remplie, sauf si les conditions suivantes sont remplies :
- La table possède un index unique.
- Aucune des colonnes de l'index ne peut avoir une valeur nulle.
- L'index n'est pas décroissant.
- Toutes les colonnes de l'index sont incluses dans le flux.
- Datastream récupère régulièrement le dernier schéma de la source à mesure que les événements sont traités. Si un schéma est modifié, Datastream détecte la modification apportée et déclenche une extraction de schéma. Toutefois, certains événements peuvent être traités de manière incorrecte ou supprimés entre les récupérations de schéma, ce qui peut entraîner des divergences de données.
- Certaines modifications apportées au schéma source ne peuvent pas être détectées automatiquement, ce qui peut provoquer une corruption des données. Les modifications de schéma suivantes peuvent entraîner une corruption des données ou l'échec du traitement des événements en aval :
- Supprimer des colonnes
- Ajout de colonnes au milieu d'une table
- Changement du type de données d'une colonne
- Réorganisation des colonnes
- Suppression de tables (pertinente si la même table est ensuite recréée avec de nouvelles données ajoutées)
- Troncation de tables
- Datastream n'est pas compatible avec la réplication des vues.
- Datastream n'est pas compatible avec les colonnes de types de données spatiales. Les valeurs de ces colonnes sont remplacées par des valeurs
NULL
. - Datastream n'est pas compatible avec la valeur zéro (
0000-00-00 00:00:00
) dans les colonnes des types de donnéesDATETIME
,DATE
ouTIMESTAMP
. La valeur zéro est remplacée par la valeurNULL
. - Datastream n'accepte pas la réplication des lignes qui incluent les valeurs suivantes dans les colonnes
JSON
:DECIMAL
,NEWDECIMAL
,TIME
,TIME2
DATETIME
,DATETIME2
,DATE
,TIMESTAMP
ouTIMESTAMP2
. Les événements contenant ces valeurs sont supprimés. - Datastream n'est pas compatible avec la compression des transactions de journaux binaires.
- Datastream n'est pas compatible avec les chaînes de certificats SSL dans les profils de connexion MySQL sources. Seuls les certificats uniques encodés au format PEM x509 sont acceptés.
- Datastream n'est pas compatible avec les suppressions en cascade. Ces événements ne sont pas écrits dans le journal binaire et, par conséquent, ne sont pas propagés vers la destination.
- Datastream n'est pas compatible avec le basculement vers des instances dupliquées. C'est pourquoi nous vous déconseillons d'utiliser Datastream pour la réplication à partir de sources Cloud SQL pour MySQL Enterprise Plus. Les instances de l'édition Cloud SQL Enterprise Plus sont soumises à une maintenance quasiment sans temps d'arrêt et basculent vers une instance répliquée pendant la maintenance. Cela rompt la continuité du binlog et, par conséquent, les flux affectés échouent définitivement.
Étape suivante
- Découvrez comment configurer une source MySQL pour l'utiliser avec Datastream.