L ingestion est souvent le premier maillon de la stack data. En entretien, on évalue la capacité à choisir entre Fivetran et Airbyte, à configurer des connecteurs custom et à gérer le CDC.
1EL vs ELT vs ETL
Question discriminante
Quelle est la différence entre ETL et ELT ? Pourquoi le ELT est-il dominant en 2025 ?
- ETL — Extract, Transform, Load : transformation avant le chargement. L ère des entrepôts on-premise avec puissance de calcul limitée
- ELT — Extract, Load, Transform : charger brut, transformer dans le warehouse. Possible car les cloud warehouses (BigQuery, Snowflake) sont très puissants
- EL — Extract, Load uniquement : Fivetran/Airbyte font l EL, dbt fait le T. Séparation claire des responsabilités
- Pourquoi ELT domine — les transformations SQL dans BigQuery/Snowflake sont moins chères et plus rapides que des transformations Spark dans un ETL custom
2Fivetran : le standard managé
Question discriminante
Quels sont les avantages de Fivetran par rapport à un connecteur custom ?
- Points forts — 500+ connecteurs maintenus, zero maintenance, gestion automatique des schémas évolutifs, support 24/7
- Fivetran HVR — module de CDC haute performance pour les bases transactionnelles volumineuses
- Transformations Fivetran — dbt intégré pour les transformations post-ingestion
- Limite — coût élevé pour les gros volumes (tarification par volume de lignes)
- Quand choisir Fivetran — équipe sans expertise DE, sources standards (Salesforce, HubSpot, bases SQL classiques), besoin de zéro maintenance
3Airbyte : l open source flexible
Question discriminante
En quoi Airbyte est-il différent de Fivetran ?
# Déploiement Airbyte sur Docker (développement local)
docker-compose -f docker-compose.yaml up -d
# Interface web sur http://localhost:8000
# Connecteur custom Python (Airbyte CDK)
from airbyte_cdk.sources import AbstractSource
from airbyte_cdk.models import SyncMode
class CustomAPISource(AbstractSource):
def check_connection(self, logger, config):
# Vérifier que l API est accessible
response = requests.get(config['api_url'])
return response.status_code == 200, None
def streams(self, config):
return [OrdersStream(config), CustomersStream(config)]
- Open source — hébergeable sur son infra. Airbyte Cloud pour la version managée
- CDK Python — écrire un connecteur custom en Python avec le Connector Development Kit
- Moins de connecteurs — moins de 400 connecteurs vs 500+ pour Fivetran, mais suffisant pour la plupart des cas
4Airbyte vs Fivetran : quel choix ?
| Fivetran | Airbyte Cloud | Airbyte self-hosted |
|---|
| Maintenance | Zéro | Minimale | Gérée par l équipe |
| Connecteurs | 500+ (enterprise-grade) | 400+ | 400+ + custom |
| Coût | Élevé (par volume) | Modéré | Infrastructure uniquement |
| Flexibilité | Faible | Moyenne | Maximale |
| CDC | Excellent (HVR) | Bon | Bon |
| Idéal pour | Sources standards, zéro maintenance | Mix sources standards + custom | Contraintes de sécurité, budget serré |
5Connecteurs custom : quand et comment
Question discriminante
Dans quel cas créez-vous un connecteur custom plutôt que d utiliser un connecteur standard ?
- API propriétaire — aucun connecteur standard ne couvre votre source de données
- Authentification complexe — OAuth2 avec rotation de tokens, certificats mutuels
- Format exotique — fichiers XML, EDI, formats métier spécifiques
- Options — Airbyte CDK (Python), Singer (standard ouvert), ou script Python personnalisé orchestré par Airflow
6CDC : Change Data Capture
Question discriminante
Qu est-ce que le CDC ? Comment l implémentez-vous avec Fivetran ou Airbyte ?
- CDC — capturer les modifications (INSERT, UPDATE, DELETE) d une base transactionnelle en temps quasi-réel
- Log-based CDC — lit le binlog MySQL / WAL PostgreSQL. Impact minimal sur la base source. Fivetran HVR, Debezium
- Timestamp-based — filtre sur updated_at. Simple mais ne capture pas les suppressions
- Full refresh — recharge toute la table. Simple mais coûteux sur les grandes tables
- Fivetran HVR — solution de CDC enterprise haute performance, supporte Oracle, DB2, SAP
7Grille par niveau
| Niveau | Maitrise | Signal GO | NO-GO |
|---|
| Confirmé | ELT vs ETL, Fivetran ou Airbyte, CDC basique | A configuré un connecteur Fivetran ou Airbyte, explique ELT vs ETL | Ne sait pas la différence entre ELT et ETL |
| Senior | Connecteurs custom, CDC log-based, choix selon contexte | A écrit un connecteur custom Airbyte, compare Fivetran vs Airbyte selon le contexte | Ne sait pas ce qu est le CDC log-based |