Google Cloud Data Fusion, l’ETL moderne

Vous avez besoin de faire de l’intégration de données dans votre Système d’Informations ?
Vous cherchez un ETL pour faire de l’Extraction, de la Transformation et du chargement (Load) de données dans le but de faire de la consolidation ou de la migration de vos données, garantir la cohérence et la qualité de vos données ?

Seulement, vous ne voulez pas :

  • Investir dans vos propres serveurs
  • Gérer vous-même l’infrastructure sous-jacente
  • Vous soucier de la mise à l’échelle (scalabilité) et de la disponibilité de vos charges de travail
  • Subir les délais de provisionnement des environnements
  • Rédiger et maintenir des procédures d’installation
  • Etre contraint d’investir des dizaines de jours-hommes à chaque montée de version de votre plateforme ETL

Vous voulez seulement : vous concentrer sur la conception de vos flux de données métier.
Et c’est tout.

Dans ce cas, la suite peut vous intéresser…

 

Google Cloud Data Fusion

Google Cloud Data Fusion (on utilisera « CDF » dans la suite de l’article) est l’ETL de la plateforme Cloud GCP (Google Cloud Platform).
Il s’agit d’un service entièrement géré par Google, ce qui signifie que les niveaux IaaS et PaaS sont gérés par Google, l’utilisateur n’a plus qu’à se focaliser sur le niveau SaaS pour concevoir ses flux d’intégration de données.
On est sur une solution ETL-as-a-service.

CDF s’intègre évidemment avec tout l’écosystème des services Cloud de Google, mais pas uniquement.

En plus des services propres à son écosystème, la nature même d’un ETL est de s’intégrer avec le panel le plus large possible de technologies tierces.
Et ce n’est pas la philosophie de Google qui va aller à l’encontre de cela, bien entendu.
L’architecture le démontre encore :

C’est grâce à son « Hub » que CDF offre un large panel de technologies disponibles (une sorte de Marketplace), que l’on peut utiliser comme sources/cibles de données :

Hub

Note importante : sachez que vous pouvez alimenter Hub avec vos propres plugins.

 

Design

Après avoir validé l’inventaire des technologies dont nous avons besoin, on peut maintenant s’atteler au cœur de la conception des flux : les pipelines.

Les pipelines sont la représentation visuelle du flux de données que l’on veut créer.
Et comme dans tout ETL, pour concevoir un pipeline, on commence par glisser-déposer les différentes sources de données à partir desquelles on va vouloir extraire des données :

Un pipeline est en réalité un Directed Acyclic Graph (DAG), un graphe orienté sans cycle.
Le sens des flux de données est donné par l’orientation des flèches (unidirectionnelles) du DAG.
Voici un exemple de pipeline contenant 4 sources de données reliées entre elles par de multiples composants de type « Analytics » (essentiellement des jointures (Joiner) dans l’exemple) :

Exemple de pipeline

Ce pipeline vient alimenter un entrepôt de données BigQuery (service GCP de base de données analytique).

Un autre exemple de pipeline qui alimente plusieurs cibles cette fois :

Pipeline multi cibles

Dans cet exemple, chaque nouveau fichier qui arrive dans un compartiment donné est un évènement déclencheur de toute la chaîne.
On est là sur une approche micro-batch.

 

Analyse d’exécution

Côté supervision, un tableau de bord personnalisable permet d’avoir un aperçu rapide des exécutions :

La page de Logs permet de visualiser tous les messages remontés lors de l’exécution des pipelines :

Logs

 

Pourquoi choisir Google ?

Google Cloud est un Cloud ouvert, s’appuyant sur de nombreux projets Open Source (auxquels Google contribue massivement).
En savoir plus : https://cloud.google.com/open-cloud/

La philosophie de Google est d’offrir la plus grande liberté à ses clients :
« Un cloud ouvert sous-entend qu’un lien avec un fournisseur particulier ne doit pas vous empêcher d’atteindre vos objectifs. »

Autrement dit : pas de « Vendor Lock-in« .

La preuve en est avec l’une des plus importantes annonces faites lors du Google Next en avril dernier : l’arrivée de Google Anthos.
Cela montre à quel point Google veut faire profiter l’utilisateur des meilleures technologies au monde en lui permettant de tirer parti des avantages de chaque fournisseur de Cloud en facilitant l’approche multi-Cloud.

Tous les produits Google sont conçus selon la règle du « User First » : c’est-à-dire en plaçant l’utilisateur au centre des priorités.

Vous souhaitez en savoir plus ?
Rendez-vous sur https://cloud.google.com/data-fusion