Databricks Connect
Cet article couvre Databricks Connect pour Databricks Runtime 13.3 LTS et les versions ultérieures.
Databricks Connect est une bibliothèque cliente pour le Databricks Runtime qui vous permet de vous connecter au compute Databricks à partir d'IDEs tels que Visual Studio Code, PyCharm et IntelliJ IDEA, de Notebooks et de toute application personnalisée, afin d'activer de nouvelles expériences utilisateur interactives basées sur votre Databricks Lakehouse.
Databricks Connect est disponible pour les langues suivantes :
Que puis-je faire avec Databricks Connect ?
En utilisant Databricks Connect, vous pouvez écrire du code en utilisant les Spark API et les exécuter à distance sur le compute Databricks au lieu de les exécuter dans la session Spark locale.
-
Développez et déboguez de manière interactive depuis n'importe quel IDE . Databricks Connect permet aux développeurs de développer et de déboguer leur code sur le compute Databricks en utilisant les fonctionnalités d'exécution et de debugging natives de n'importe quel IDE. L'extension Visual Studio Code Databricks utilise Databricks Connect pour fournir un debugging intégré du code utilisateur sur Databricks.
-
Créez des applications de données interactives . Tout comme un JDBC Driver, la bibliothèque Databricks Connect peut être intégrée à n'importe quelle application pour interagir avec Databricks. Databricks Connect offre la pleine expressivité de Python via PySpark, éliminant le mésappariement d'impédance du langage de programmation SQL et vous permettant d'exécuter toutes les transformations de données avec Spark sur le compute serverless scalable de Databricks.
Comment ça marche ?
Databricks Connect est basé sur Spark Connect, un logiciel open source qui dispose d'une architecture client-serveur découplée pour Apache Spark, permettant la connectivité à distance aux clusters Spark à l'aide de l'API DataFrame. Le protocole sous-jacent utilise des plans logiques non résolus Spark et Apache Arrow basés sur gRPC. L'API client est conçue pour être légère, afin qu'elle puisse être intégrée partout : dans les serveurs d'applications, les IDEs, les Notebook et les langages de programmation.

- Le code général s’exécute localement : le code Python et Scala s’exécute côté client, ce qui permet un debugging interactif. Tout le code est exécuté localement, tandis que tout le code Spark continue de s'exécuter sur le cluster distant.
- Les API DataFrame sont exécutées sur le compute Databricks . Toutes les Transformations de données sont converties en plans Spark et exécutées sur le compute Databricks via la session Spark à distance. Ils sont matérialisés sur votre client local lorsque vous utilisez des commandes telles que
collect(),show(),toPandas(). - **Le code UDF s'exécute sur le compute Databricks** : Les UDF définies localement sont sérialisées et transmises au cluster où elles s'exécutent. Les APIs qui exécutent le code utilisateur sur Databricks incluent : UDFs,
foreach,foreachBatchettransformWithState. - Pour la gestion des dépendances :
- Installez les dépendances de l'application sur votre machine locale . Ceux-ci s'exécutent localement et doivent être installés dans le cadre de votre projet, comme dans le cadre de votre environnement virtuel Python.
- Installer les dépendances UDF sur Databricks . Voir Gérer les dépendances UDF.
Quel est le lien entre Databricks Connect et Spark Connect ?
Spark Connect est un protocole open source basé sur gRPC au sein d’Apache Spark qui permet l’exécution distante de charges de travail Spark à l’aide de l’API DataFrame.
Pour Databricks Runtime 13.3 LTS et versions ultérieures, Databricks Connect est une extension de Spark Connect, avec des ajouts et des modifications pour prendre en charge les modes de compute Databricks et Unity Catalog.
Ressources supplémentaires
Consultez les tutoriels suivants pour commencer rapidement à développer des solutions Databricks Connect :
- Didacticiel Databricks Connect pour Python classic compute
- Didacticiel Databricks Connect pour le compute serverless Python
- Tutoriel Databricks Connect pour le compute classique Scala
- Tutoriel Databricks Connect pour le compute serverless Scala
- Tutoriel Databricks Connect pour R
Pour voir des exemples d'applications qui utilisent Databricks Connect, consultez le repository d'exemples GitHub, qui inclut les exemples suivants :