Configurer une destination Cloud Storage

Activer l'API

L'activation de l'API Datastream est suffisante lorsque le bucket Cloud Storage de destination se trouve dans le même projet que Datastream.

Si vous écrivez dans un bucket situé dans un autre projet, vous devez autoriser le compte de service associé à Datastream à accéder au bucket.

  1. Obtenez l'adresse e-mail utilisée pour le compte de service. Pour ce faire, recherchez le numéro du projet sur la page d'accueil de la console Google Cloud. L'adresse e-mail du compte de service sera service-[project_number]@gcp-sa-datastream.iam.gserviceaccount.com.
  2. Accordez à cette adresse e-mail les autorisations nécessaires pour écrire dans le bucket de destination (autorisations roles/storage.objectViewer, roles/storage.objectCreator et roles/storage.legacyBucketReader, en général).

Spécifier le bucket de destination et le préfixe

Indiquez le nom du projet, le nom du bucket et, éventuellement, le préfixe du fichier dans la configuration du flux afin de déterminer l'emplacement dans lequel les données sont écrites.

Comportement d'écriture

  • Les données d'un flux donné sont écrites dans le préfixe de bucket ou de fichier fourni à l'emplacement suivant : [bucket]/[prefix]/[object name]/yyyy/mm/dd/hh/mm/[filename(idempotent)].
  • Le nom d'objet dans le chemin d'accès des sources de base de données est le nom du schéma suivi du nom de la table (séparés par un trait de soulignement "_").
  • L'horodatage dans le chemin (hh/mm) est le code temporel source des métadonnées de l'événement.
    • Pour les événements de remplissage, l'horodatage représente l'heure à laquelle la tâche de remplissage a démarré (généralement, l'heure à laquelle le flux a démarré ou le remplissage a été manuellement déclenché).
    • Pour les événements CDC, l'horodatage représente le moment où l'enregistrement a été modifié dans la source.
  • Les fichiers sont alternés chaque fois que la taille de fichier maximale ou le délai d'expiration maximal est atteint, selon la première échéance atteinte. Vous pouvez ajuster la taille maximale des fichiers et les valeurs du délai avant expiration à l'aide de l'API Datastream.
  • De plus, les fichiers sont alternés chaque fois qu'une modification de schéma source est détectée (par exemple, une nouvelle colonne est ajoutée).
  • Il peut y avoir plusieurs fichiers dans le même chemin pour la même minute.
  • L'utilisation des données peut être effectuée à l'aide de l'API Cloud Storage.
  • La taille maximale des événements lorsque vous insérez des données en flux continu dans Cloud Storage est de 30 Mo.

Dans certains cas, le plus souvent, lorsqu'un flux démarre pour la première fois, il existe un chevauchement entre le remplissage et la CDC, ce qui entraîne des événements en double. Cela se produit lorsque Datastream commence à lire à partir du fichier journal de la base de données actuelle (créé avant le démarrage du flux) et que ce fichier journal inclut certains événements qui sont également capturés par le remplissage. Il s'agit d'un comportement anticipé. Les événements en double peuvent être éliminés à l'aide des métadonnées d'événements, si nécessaire.