Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Remarque
Cet article présente Databricks Connect pour Databricks Runtime 13.3 LTS et les versions ultérieures.
Databricks Connect vous permet de vous connecter au calcul Databricks à partir d’un environnement de développement local en dehors de Databricks. Vous pouvez ensuite développer, déboguer et tester votre code directement à partir de votre IDE avant de déplacer votre code vers un notebook ou un travail dans Databricks. Consultez Qu’est-ce que Databricks Connect ?.
Portabilité
Pour faciliter la transition du développement local au déploiement vers Databricks, toutes les API Databricks Connect sont disponibles dans les notebooks Databricks dans le cadre du runtime Databricks correspondant. Cela vous permet d’exécuter votre code dans un notebook Databricks sans aucune modification de votre code.
Comportement de DatabricksSession
Le comportement de DatabricksSession diffère légèrement lorsqu'on utilise Databricks Connect dans un environnement de développement local ainsi que dans des cahiers et des tâches de l’espace de travail Databricks.
Comportement de l’environnement de développement local
Lors de l’exécution de code localement dans un IDE en dehors de Databricks, DatabricksSession.builder.getOrCreate() obtient la session Spark existante pour la configuration fournie s’il existe ou crée une session Spark si elle n’existe pas.
DatabricksSession.builder.create() crée toujours une session Spark. Les paramètres de connexion tels que host, token, et cluster_id sont renseignés à partir du code source, des variables d’environnement ou du fichier .databrickscfg de profils de configuration.
En d’autres termes, lors de l’exécution à l’aide de Databricks Connect, le code suivant crée deux sessions distinctes :
spark1 = DatabricksSession.builder.create()
spark2 = DatabricksSession.builder.create()
Comportement de l’espace de travail Databricks
Lorsque vous exécutez du code dans un bloc-notes ou un travail dans l’espace de travail Databricks, DatabricksSession.builder.getOrCreate() retourne la session Spark par défaut (également accessible via la variable spark) lorsqu’elle est utilisée sans configuration supplémentaire. La variable spark est préconfigurée pour se connecter à l’instance de calcul à laquelle le notebook ou le travail est attaché. Une nouvelle session Spark est créée si des paramètres de connexion supplémentaires sont définis, par exemple, à l’aide de DatabricksSession.builder.clusterId(...).getOrCreate() ou de DatabricksSession.builder.serverless().getOrCreate().
DatabricksSession.builder.create() nécessite des paramètres de connexion explicites dans un notebook, tels que DatabricksSession.builder.clusterId(...).create(), sinon il retourne une erreur [UNSUPPORTED].
Il est possible d’utiliser Databricks Connect pour se connecter au calcul Databricks qui n’est pas attaché au notebook ou au travail en utilisant remote(), qui prend une configuration kwargs ou des méthodes de configuration individuelles, telles que host() ou token(). Dans ces cas, une nouvelle session est créée pour le calcul référencé, comme lorsqu'elle est utilisée en dehors d’un notebook ou d’une tâche Databricks.
Remarque
Pour les notebooks s’exécutant sur une infrastructure sans serveur, par défaut, les requêtes expirent après 9 000 secondes. Vous pouvez le personnaliser en définissant la propriété de configuration Spark spark.databricks.execution.timeout. Consultez Configurer les propriétés Spark sur Azure Databricks.