Prenez en main les principales fonctionnalités d’Airbyte

Dans cette partie, vous commencerez par un cas simple en configurant une source de données (Faker), une destination JSON, et une connexion pour synchroniser les données. 

Une fois les bases acquises, vous passerez à un cas plus complet et réaliste avec PostgreSQL comme source et S3 comme destination, un scénario courant pour un Data Engineer.

Pour mener à bien ces étapes, vous allez suivre des tutoriels pratiques sur le site d’Airbyte.

Enfin, nous appliquerons tout ce que vous avez appris à un cas concret : l'intégration et l'orchestration des données pour l'entreprise Click et Achète.

Maîtrisez les bases pour extraire vos premières données

Dans un premier temps, il est essentiel de gérer les connecteurs de données avec Airbyte. Cela inclut la sélection de la source de données, la définition de la destination de stockage et la configuration des paramètres du connecteur pour établir une connexion fluide. Pour ce premier cas, vous allez suivre des tutoriels qui utilisent une source de données simulée appelée Faker, puis vous allez découvrir JSON comme source de destination et enfin vous allez voir comment configurer votre première connexion.

1. Sélectionnez une source de données

Airbyte prend en charge de nombreuses sources de données populaires telles que CSV, Google Analytics, JSON, PostgreSQL, et bien d’autres. Mais dans ce premier tutoriel, la source de données provient de Faker, un outil qui génère des données aléatoires pour simuler une vraie source.

Suivez le tutoriel "Add a Source" pour :

  1. sélectionner votre source de données dans l'interface d'Airbyte ;

  2. configurer les paramètres de cette source, comme l’authentification et les options spécifiques aux données.

2. Sélectionnez une destination de stockage

Vous devez maintenant définir où les données extraites seront envoyées. Airbyte prend en charge diverses destinations telles que S3, PostgreSQL, ou même JSON. Dans ce tutoriel, vous allez exporter les données au format JSON en local pour une utilisation simplifiée.

Suivez le tutoriel "Add a Destination" pour :

  1. sélectionner la destination de stockage dans Airbyte ; 

  2. paramétrer cette destination selon vos besoins spécifiques (par ex. : choisir le format de fichier ou l'emplacement).

On voit l'onglet
Capture d'écran de l'onglet "Self-Managed"

3. Configurez la connexion

Une fois que vous avez sélectionné et configuré votre source et destination, il est temps de configurer une connexion entre les deux.

Suivez le tutoriel "Set up a Connection" pour :

  1. configurer les paramètres de synchronisation (fréquence de réplication, choix des streams, etc.) ;

  2. démarrer la connexion et suivre les progrès de la synchronisation des données.

Maintenant que vous avez géré les connecteurs de données et configuré votre première connexion, passons à un cas plus complexe. Soyez prêt à utiliser Airbyte pour synchroniser vos données PostgreSQL vers S3 en quelques minutes !

Extrayez les données PostgreSQL vers un bucket S3

Pourquoi PostgreSQL et S3 ?

PostgreSQL est une base de données relationnelle largement utilisée dans les entreprises et S3 est un service de stockage très répandu dans les architectures modernes de données. Ces technologies sont fréquemment rencontrées par les data engineers, ce qui en fait des exemples parfaits pour ce tutoriel. 

Suivez le tutoriel "How to load data from Postgres to S3" pour :

  • configurer PostgreSQL comme source de données dans Airbyte.  Vous pouvez utiliser un serveur PostgreSQL existant ou en installer un pour ce cas. N’hésitez pas à vous référer à la documentation Airbyte ou à la section Installez Postgresql du cours “Perfectionnez votre maîtrise de SQL” ;

  • paramétrer S3 comme destination pour vos données. Pour ça, il vous faut un compte AWS actif et un bucket S3 pour stocker les données extraites de PostgreSQL. N’hésitez pas à lire la documentation Airbyte pour plus d’informations sur S3 ;

  • créer une connexion pour synchroniser les données entre PostgreSQL et S3.

Maintenant que vous avez appris à synchroniser vos données PostgreSQL vers S3, passons à la prochaine étape : orchestrer et planifier les flux de données pour qu'ils fonctionnent de manière automatique.

Orchestrez et planifiez les flux des données

Pour rendre vos processus de données plus efficaces et robustes, vous avez besoin d’automatiser, de surveiller et d’optimiser vos flux de données en utilisant des outils d’orchestration comme Kestra.

Suivez le tutoriel "Using the Kestra Plugin" pour :

  1. installer Kestra. Utilisez Docker pour démarrer Kestra et configurez votre instance pour automatiser la gestion des flux ;

  2. créer un flow via l'UI de Kestra. Choisissez un blueprint Airbyte dans l'interface de Kestra pour créer un flow d'automatisation et configurer les connexions. Choisissez le blueprint “Trigger multiple Airbyte syncs in parallel” ;

  3. exécuter un flow. Déclenchez des tâches Airbyte en parallèle, avec des options pour gérer des connexions multiples.

Airbyte s'intègre avec plusieurs orchestrateurs tels qu'Apache Airflow, Prefect, Dagster, Kestra, ou de manière custom, en utilisant directement l'API Airbyte. Cela vous permettra d'adapter l'intégration de vos données à l'orchestrateur de votre choix.

Nous pouvons désormais appliquer toutes ces étapes à notre entreprise Click et Achète.

Extrayez, orchestrez et planifiez les flux de données de Click et Achète

Il est temps de mettre en place l'architecture demandée par Sophie pour intégrer et orchestrer les données avec Airbyte. Nous allons donc :

  1. créer des sources de données PostgreSQL et définir une destination S3 pour stocker nos données (vidéo 1) ;

  2. créer des sources de données Google Sheets et JSON et sélectionner la destination S3 (vidéo 2) ;

  3. configurer les connexions entre ces différentes sources et destinations pour assurer le flux de données (vidéos 1 et 2) ;

  4. utiliser Kestra pour orchestrer et automatiser les processus de manière fluide et efficace (vidéo 3).

Voici une première vidéo de démonstration qui présente les principales étapes à suivre pour commencer à mener à bien la mission avec la source PostgreSQL. Vous retrouvez tous les scripts associés et les fichiers sources sur ce lien GitHub.

Voici une deuxième vidéo de démonstration qui présente les principales étapes à suivre pour connecter les sources Google Sheets et JSON avec la destination S3.

Cette dernière vidéo vous montre comment utiliser Kestra pour orchestrer et automatiser les processus.

Bravo, votre mission est terminée ! Enfin presque : pour ceux qui souhaitent aller un peu plus loin, vous pouvez explorer la possibilité de travailler avec PyAirbyte pour intégrer vos données.

Chargez les données avec PyAirbyte

Ici, vous allez suivre les étapes pour intégrer la source de données Faker, configurer la connexion et charger les données extraites dans votre environnement.

Suivez le tutoriel "Leverage PyAirbyte" pour :

  1. installer et configurer PyAirbyte dans votre IDE pour interagir avec vos sources de données ;

  2. lire les données à l'aide de PyAirbyte ;

  3. manipuler et afficher les données extraites.

Après avoir vu comment utiliser PyAirbyte, vous êtes capable de vous connecter à n’importe quelle source de la même manière, notamment à une source PostgreSQL. Il suffit de changer la connexion source Faker (celle utilisée dans le tutoriel Airbyte) en  remplaçant le code de la connexion source avec ce bout de code :

pip install airbyte
from airbyte.caches import PostgresCacheConfig, PostgresCache 

#Define a Postgres Cache and pass the necessary configuration
pg_cache = PostgresCache(
PostgresCacheConfig
host="localhost", 
port=5432, 
username="postgres", 
password="postgres", 
database="pyairbyte_demo" 
)
 )

# Select all of the source's streams and read data into the previously defined Postgres cache: 
source.select_all_streams()

En résumé

  • Pour intégrer des données, il faut sélectionner une source de données (Faker, PostgreSQL, Google Sheets), une destination (S3, PostgreSQL), puis configurer une connexion pour automatiser la synchronisation des données.

  •  La connexion permet de lier de façon automatisée une source de données à sa destination.

  • L’outil Kestra sert à orchestrer et automatiser les flux de données, pour une gestion plus fluide des processus.

  • Vous avez utilisé PyAirbyte, une bibliothèque Python pour configurer la connexion et charger les données extraites dans votre environnement. 

Félicitations, vous avez terminé ce cours sur Airbyte ! Vous avez exploré une série de concepts essentiels pour gérer l'intégration de données, de la configuration des sources et destinations jusqu’à l'automatisation des flux via des outils comme Kestra. Ces compétences sont fondamentales pour tout Data Engineer, et vous êtes désormais capable de gérer des pipelines de données de manière efficace et flexible. Ne vous arrêtez pas là ! Continuez à pratiquer et à mettre en œuvre ces connaissances dans des projets réels. Plus vous intégrerez de sources et automatiserez de processus, plus vous deviendrez maître de l'intégration de données. Vous êtes désormais prêt à relever de nouveaux défis et à appliquer ces compétences dans vos futures missions. Bravo et continuez sur cette lancée !

Et si vous obteniez un diplôme OpenClassrooms ?
  • Formations jusqu’à 100 % financées
  • Date de début flexible
  • Projets professionnalisants
  • Mentorat individuel
Trouvez la formation et le financement faits pour vous