Destination

Présentation

La destination du flux de données de Datastream est Cloud Storage.

Dans cette section, vous apprendrez à effectuer les opérations suivantes :

  • Configurer cette destination de flux
  • Spécifier le bucket et le préfixe de destination pour déterminer l'emplacement dans lequel les données sont écrites dans la destination
  • Comportement associé aux données écrites dans la destination

Prérequis

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, retrouvez le numéro du projet sur la page d'accueil de Cloud Console. 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 requises pour écrire dans le bucket de destination (en général, il s'agit des autorisations roles/storage.objectViewer, roles/storage.objectCreator et roles/storage.legacyBucketReader).

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

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 bucket ou le préfixe de fichier fourni dans [bucket]/[prefix]/[object name]/yyyy/mm/dd/hh/mm/[filename(idempotent)].
  • Le nom de l'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é par un trait de soulignement "_").
  • L'horodatage du chemin (hh/mm) correspond à l'horodatage 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 maximal avant expiration est atteinte, selon la première éventualité.
  • Ils sont également alternés chaque fois qu'une modification du 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 d'accès pour la même minute.
  • La consommation des données peut être réalisée en fonction de l'API Cloud Storage.

Dans certains cas, le plus souvent lorsqu'un flux commence à s'exécuter, il y a un chevauchement entre le remplissage et la CDC, ce qui entraîne des événements en double. Cela se produit lorsque Datastream commence à lire les données du fichier journal actuel de la base de données (créé avant le démarrage du flux). Ce fichier journal inclut certains événements également capturés par le remplissage. Il s'agit d'un comportement normal, et les événements en double peuvent être éliminés à l'aide des métadonnées d'événement, si nécessaire.