Connecteurs gérés dans Lakeflow Connect
Les connecteurs gérés dans Lakeflow Connect sont dans divers états de publication.
Cette page présente un aperçu des connecteurs gérés dans Databricks Lakeflow Connect pour l'ingestion de données provenant d'applications SaaS et de bases de données. Le pipeline d'ingestion résultant est régi par Unity Catalog et est alimenté par le compute serverless et LakeFlow Pipelines. Les connecteurs gérés exploitent des lectures et écritures incrémentielles efficaces pour rendre l'ingestion de données plus rapide, évolutive et plus rentable, tout en garantissant que vos données restent à jour pour la consommation en aval.
Types de connecteurs
-
- Connecteurs de la Communauté
- Ingérer des données à l'aide de connecteurs open source construits par la communauté.
-
- Connecteurs de base de données (CDC)
- Ingérez des données provenant de bases de données relationnelles, notamment MySQL, PostgreSQL et SQL Server, à l’aide de la capture des modifications des données.
-
- Connecteurs de source de fichier
- Ingérez des fichiers non structurés et structurés à partir de services de stockage de fichiers d'entreprise, notamment Google Drive et SharePoint.
-
- Connecteurs basés sur des query
- Ingérez des données de bases de données en interrogeant directement la source, sans nécessiter de configuration de capture des changements de données (CDC).
-
- Connecteurs SaaS
- Ingérer les données des applications SaaS d'entreprise, y compris Salesforce, HubSpot, Jira, Workday, et plus encore.
-
- Connecteurs de streaming
- Ingérez en continu des données à partir de bus de messages et de sources de streaming d'événements, y compris RabbitMQ.
Architecture
Chaque type de connecteur possède un ensemble distinct de composants. Les connecteurs SaaS utilisent une connexion, un pipeline d'ingestion et des tables de destination. Les connecteurs de base de données comprennent également une passerelle d’ingestion et un stockage intermédiaire pour prendre en charge la capture continue des modifications. Pour plus de détails, consultez Connecteurs SaaS gérés et Connecteurs de base de données gérés.
Composants de connecteur basés sur les query
Un connecteur basé sur une query interroge directement la base de données source selon un planning, sans passerelle ni stockage intermédiaire. Pour un aperçu du fonctionnement des connecteurs basés sur les query, consultez Connecteurs basés sur les query.
Composant | Description |
|---|---|
Connexion | Un objet sécurisable Unity Catalog qui stocke les informations d'authentification de la base de données source. Soit une connexion Unity Catalog directe (pour l'ingestion de connexions externes), soit un catalogue externe Unity Catalog (pour l'ingestion de catalogues externes à l'aide de Lakehouse Federation). |
pipeline d'ingestion | Un pipeline qui interroge directement la base de données source et écrit les résultats dans des tables de streaming. Le pipeline s'exécute sur le compute Serverless par default. |
Tables de destination | Les tables de streaming où le pipeline d'ingestion écrit les données. |
Composants de connecteur de streaming
Un connecteur de streaming lit en continu les messages d'un bus de messages ou d'une source de streaming d'événements et les écrit dans des tables de streaming. Pour une vue d'ensemble du fonctionnement des connecteurs de streaming, consultez Connecteurs de streaming gérés.
Composant | Description |
|---|---|
Connexion | Un objet sécurisable Unity Catalog qui stocke l'Endpoint source et les justificatifs d'authentification pour votre source de streaming. Le connecteur géré utilise cette connexion pour s'authentifier sans nécessiter de justificatifs dans la configuration de votre pipeline. |
pipeline d'ingestion | Un pipeline qui lit en continu les messages de la source de streaming et écrit les résultats dans des tables de streaming. Le pipeline s'exécute sur le compute Serverless. |
Tables de destination | Les tables de streaming où le pipeline d'ingestion écrit les données. |
orchestration
Vous pouvez exécuter votre pipeline d'ingestion sur une ou plusieurs planifications personnalisées. Pour chaque planification que vous ajoutez à un pipeline, Lakeflow Connect crée automatiquement un job pour celui-ci. Le pipeline d’ingestion est une tâche au sein du Job. Vous pouvez éventuellement ajouter d’autres tâches au Job.

Pour les connecteurs de base de données, la passerelle d’ingestion s’exécute dans son propre Job en tant que tâche continue.

Ingestion incrémentielle
Lakeflow Connect utilise l'ingestion incrémentielle pour améliorer l'efficacité du pipeline. Lors de la première exécution de votre pipeline, il ingère toutes les données sélectionnées de la source. En parallèle, il suit les modifications apportées aux données source. À chaque exécution ultérieure du pipeline, il utilise ce suivi des modifications pour ingérer uniquement les données qui ont changé par rapport à l'exécution précédente, lorsque cela est possible.
L’approche exacte dépend de ce qui est disponible dans votre source de données. Par exemple, vous pouvez utiliser le suivi des modifications et la capture des modifications de données (CDC) avec SQL Server. En revanche, le connecteur Salesforce sélectionne une colonne de curseur à partir d’une liste d’options.
Certaines sources ou tables spécifiques ne prennent pas en charge l'ingestion incrémentielle pour le moment. Databricks prévoit d'étendre la couverture pour le support incrémental.
Mise en réseau
Plusieurs options sont disponibles pour se connecter à une application SaaS ou à une base de données.
- Les connecteurs pour les applications SaaS se connectent aux APIs de la source. Ils sont également automatiquement compatibles avec les contrôles de sortie serverless.
- Les connecteurs pour bases de données cloud peuvent se connecter à la source via Private Link. Alternativement, si votre workspace dispose d'un réseau virtuel (VNet) ou d'un Virtual Private Cloud (VPC) appairé au VNet ou au VPC hébergeant votre base de données, vous pouvez alors déployer la passerelle à l'intérieur de celui-ci.
- Les connecteurs pour les bases de données on-premise peuvent se connecter à l'aide de services tels que AWS Direct Connect et Azure ExpressRoute.
Déploiement
Vous pouvez déployer des pipelines d'ingestion à l'aide de Declarative Automation Bundles, qui permettent d'appliquer les meilleures pratiques telles que le contrôle des sources, la révision du code, les tests et l'intégration et la livraison continues (CI/CD). Les bundles sont gérés à l'aide de l'interface CLI Databricks et peuvent être exécutés dans différents Workspace cibles, tels que le développement, la pré-production et la production.
Créer des connexions par programmation
Pour les connecteurs qui utilisent l'authentification par API uniquement (tous les connecteurs de base de données et la plupart des connecteurs SaaS), vous pouvez créer des connexions par programmation à l'aide de Notebooks, de l'interface de ligne de commande (CLI) Databricks ou de Bundles d'automatisation déclaratifs au lieu de l'interface utilisateur de Catalog Explorer.
- Notebooks : utilisez l'API Connections à partir d'un notebook pour créer une connexion et la transmettre à votre pipeline.
- Databricks CLI : exécutez
databricks connections createavec--jsonpour transmettre le type de connexion et les informations d'identification. Le corps JSON suit le même schéma que l'a API REST de Connections. - Declarative Automation Bundles : Utilisez un script de prédéploiement ou une tâche Job pour appeler
databricks connections createdans le cadre de votre workflow de bundle avant de déployer le pipeline.
Les connecteurs qui utilisent OAuth basé sur un navigateur (OAuth U2M) comme seule option d'authentification ne peuvent pas être créés par programme. Ces connecteurs nécessitent une connexion interactive pour obtenir le jeton OAuth initial. Cela inclut : Confluence, Google Ads, HubSpot, Jira, Meta Ads, Slack, Logs d'audit Slack, TikTok Ads et Zendesk Support.
Reprise en cas de panne
En tant que service entièrement managé, Lakeflow Connect vise à se remettre automatiquement des problèmes lorsque cela est possible. Par exemple, lorsqu'un connecteur échoue, il tente automatiquement une nouvelle fois avec une interruption exponentielle.
Cependant, il est possible qu'une erreur nécessite votre intervention (par exemple, lorsque les identifiants expirent). Dans ces cas, le connecteur essaie d'éviter les données manquantes en stockant la dernière position du curseur. Il peut alors reprendre à partir de cette position lors de la prochaine exécution du pipeline, si possible.
monitoring
Lakeflow Connect offre des alertes et un monitoring robustes pour vous aider à maintenir vos pipelines. Cela inclut les Logs d'événements, les Logs de clusters, les métriques de santé des pipelines et les métriques de qualité des données. Vous pouvez également utiliser la table system.billing.usage pour suivre les coûts et superviser l'utilisation du pipeline. Voir Superviser le coût du pipeline d'ingestion géré.
Pour les connecteurs de base de données, vous pouvez surveiller la progression de la passerelle en temps réel à l'aide des logs d'événements. Consultez Surveiller la progression de la passerelle d'ingestion avec les Logs d'événements.
Connecteurs Communauté
Les connecteurs Communauté étendent Lakeflow Connect aux sources ne bénéficiant pas de connecteurs gérés. Ils sont créés et maintenus par la communauté. Voir Connecteurs Communauté dans Lakeflow Connect.
Connecteurs personnalisés
Si aucun connecteur géré ou Communauté ne prend en charge votre source, vous pouvez créer votre propre connecteur personnalisé et l'exécuter dans votre Workspace. Voir Créer un connecteur personnalisé.
Dépendance aux services externes
Les connecteurs Databricks SaaS, de base de données et autres connecteurs entièrement managés dépendent de l'accessibilité, de la compatibilité et de la stabilité de l'application, de la base de données ou du service externe auxquels ils se connectent. Databricks ne contrôle pas ces services externes et n'a, par conséquent, qu'une influence limitée (voire aucune) sur leurs modifications, mises à jour et maintenances.
Si des changements, des disruptions ou des circonstances liées à un service externe entravent ou rendent l'opération d'un connecteur irréalisable, Databricks peut arrêter ou cesser de maintenir ce connecteur. Databricks fera des efforts raisonnables pour informer les clients de l'arrêt ou de la cessation de la maintenance, y compris des mises à jour de la documentation applicable.