Aller au contenu principal

Connecteurs Communauté dans Lakeflow Connect

info

Bêta

Cette fonctionnalité est en Bêta. Les administrateurs du Workspace peuvent contrôler l'accès à cette fonctionnalité à partir de la page Previews . Consultez Gérer les aperçus Databricks.

Les connecteurs Communauté sont des connecteurs open source qui étendent Lakeflow Connect aux sources ne bénéficiant pas de connecteurs gérés. La communauté les crée et les maintient. Cette page explique comment utiliser un connecteur Communauté pour ingérer des données depuis une source prise en charge vers Databricks.

Pour créer votre propre connecteur pour une source qui n’est pas encore prise en charge, consultez Build a custom connector. Vous pouvez exécuter un connecteur personnalisé dans votre propre workspace sans le contribuer à la communauté.

Fonctionnement des connecteurs de communauté

Les connecteurs de la communauté sont basés sur l'interface LakeflowConnect, qui encapsule l'API de source de données Spark Python. Chaque connecteur gère l'authentification, la découverte de schémas et la lecture incrémentielle des données afin que vous puissiez créer, configurer et exécuter un pipeline d'ingestion alimenté par des LakeFlow Pipelines.

Lorsque vous utilisez un connecteur communautaire, Databricks clone le code source du connecteur d’un repository GitHub vers un répertoire Workspace que vous spécifiez. Le pipeline lit ensuite le code source du connecteur au moment de l’exécution et exécute la logique d’ingestion par rapport à la source configurée.

Sources prises en charge

La communauté ajoute régulièrement de nouveaux connecteurs. Pour obtenir la liste la plus récente des sources prises en charge, consultez l’interface utilisateur Ajouter des données ( Data Ingestion ) dans votre Workspace Databricks ou le repository LakeFlow Communauté Connectors sur GitHub.

Exigences

  • Un workspace Databricks avec Unity Catalog activé
  • Une connexion pour la source que vous souhaitez ingérer, ou les autorisations nécessaires pour créer une connexion
  • Accès en écriture à un catalogue et à un schéma pour les tables ingérées

Créer un pipeline d'ingestion

Pour ingérer des données à l'aide d'un connecteur de la Communauté :

  1. Dans la barre latérale de votre Workspace Databricks, cliquez sur +New > Add or upload data , puis sélectionnez la source sous Communauté connectors .

  2. Cliquez sur + Create connection ou sélectionnez une connexion existante, puis cliquez sur Next .

  3. Pour Nom du pipeline , saisissez un nom pour le pipeline.

  4. Pour Event log location , saisissez un nom de catalogue et un nom de schéma. Databricks stocke le log des événements du pipeline ici. Les tables ingérées sont également écrites ici default.

  5. Pour Root path , saisissez le chemin d'accès à votre workspace (par exemple, /Workspace/Users/<your-email>/connectors). Databricks clone et stocke le code source du connecteur ici.

  6. Cliquez sur Créer un pipeline .

  7. Dans l'éditeur de pipeline, ouvrez ingest.py et mettez à jour le champ objects pour inclure les tables que vous souhaitez ingérer. Par exemple :

    Python
    from databricks.labs.community_connector.pipeline import ingest

    pipeline_spec = {
    "connection_name": "my_stripe_connection", # Required: UC connection name
    "objects": [
    {"table": {"source_table": "charges"}},
    {"table": {"source_table": "customers",
    "destination_table": "stripe_customers"}},
    ],
    }

    ingest(spark, pipeline_spec)
  8. Exécutez le pipeline manuellement ou planifiez-le.

Options de configuration du pipeline

Vous pouvez configurer les options suivantes dans ingest.py:

Option

Description

connection_name

Obligatoire. Le nom de la connexion qui stocke les identifiants d'authentification pour la source.

objects

Obligatoire. Une liste de tables à ingérer. Chaque entrée a le format {"table": {"source_table": "..."}}. Vous pouvez également spécifier un destination_table facultatif à l’intérieur de l’objet table.

destination_catalog

Le catalogue dans lequel les tables ingérées sont écrites. Utilise default le catalogue défini lors de la création du pipeline.

destination_schema

Le schéma où les tables ingérées sont écrites. Utilise default le schéma défini lors de la création du pipeline.

scd_type

La stratégie de dimension à évolution lente (SCD) : SCD_TYPE_1, SCD_TYPE_2 ou APPEND_ONLY. La valeur default est SCD_TYPE_1.

primary_keys

Remplacez les clés primaires default d'une table. Fournissez une liste de noms de colonne.

Option

Description

connection_name

Obligatoire. Le nom de la connexion qui stocke les identifiants d'authentification pour la source.

objects

Obligatoire. Une liste de tables à ingérer. Chaque entrée a le format {"table": {"source_table": "..."}}. Vous pouvez également spécifier un destination_table facultatif à l’intérieur de l’objet table.

destination_catalog

Le catalogue dans lequel les tables ingérées sont écrites. Utilise default le catalogue défini lors de la création du pipeline.

destination_schema

Le schéma où les tables ingérées sont écrites. Utilise default le schéma défini lors de la création du pipeline.

scd_type

La stratégie de dimension à évolution lente (SCD) : SCD_TYPE_1, SCD_TYPE_2 ou APPEND_ONLY. La valeur default est SCD_TYPE_1.

primary_keys

Remplacez les clés primaires default d'une table. Fournissez une liste de noms de colonne.

Considérations

  • Les connecteurs communautaires sont en cours de développement actif. Les interfaces et le comportement sont susceptibles de changer.
  • Databricks ne maintient pas les connecteurs communautaires. Ils ne sont pas couverts par les SLA de Databricks et ne garantissent pas la compatibilité ascendante.

Soumettre des commentaires

Signalez les bugs et soumettez des demandes de fonctionnalités dans le repository Lakeflow Community Connectors.