Utiliser le connecteur Databricks pour se connecter à un autre espace de travail Databricks
Cet article fournit des exemples de syntaxe d’utilisation du connecteur Databricks pour se connecter à un autre espace de travail Databricks. Ce connecteur tire parti du pilote JDBC Databricks, qui est inclus dans Databricks Runtime 13.3 LTS et les versions ultérieures.
Important
Pour la plupart des opérations de partage de données, Databricks recommande Delta Sharing. Consultez Partager des données et des ressources IA de façon sécurisée à l’aide du partage Delta. Vous pouvez également préférer Lakehouse Federation pour gérer les requêtes sur les données d’autres espaces de travail Databricks. Consultez Présentation de Lakehouse Federation.
Connexion à un autre espace de travail Databricks
Le connecteur Databricks Spark vous permet de vous connecter aux ressources de calcul configurées dans un autre espace de travail Databricks, et de retourner les résultats à votre espace de travail Azure Databricks actuel. Vous devez avoir accès au calcul actif sur les deux espaces de travail pour que les requêtes réussissent.
Le pilote JDBC est inscrit pour les URL jdbc:databricks://
. Vous devez configurer et utiliser un jeton d’accès personnel qui vous octroie des autorisations sur les ressources d’espace de travail accessibles à distance. Consultez l’API Gestion des jetons.
Remarque
Si une bibliothèque JDBC Databricks est attachée à votre cluster, la version de bibliothèque attachée à votre cluster est utilisée à la place de la version incluse dans Databricks Runtime.
Lire les données d’un autre espace de travail Databricks
Vous pouvez spécifier le format databricks
pour utiliser le connecteur Databricks Spark quand vous lisez des données, comme dans l’exemple suivant :
df = (spark.read
.format("databricks")
.option("host", "adb-<workspace-id>.<random-number>.azuredatabricks.net")
.option("httpPath", "/sql/1.0/warehouses/<warehouse-id>")
.option("personalAccessToken", "<auth-token>")
.option("dbtable", "<table-name>")
.load()
)
Créer une table externe référençant un autre espace de travail Databricks
Vous pouvez inscrire une table externe dans un espace de travail Azure Databricks lié à un espace de travail Databricks distinct.
L’exemple suivant illustre cette syntaxe, en utilisant la fonction secret
pour obtenir les informations d’identification stockées avec les secrets Databricks :
Remarque
Pour plus d’informations sur les secrets Databricks, consultez fonction secrète.
CREATE TABLE databricks_external_table
USING databricks
OPTIONS (
host 'adb-<workspace-id>.<random-number>.azuredatabricks.net',
httpPath '/sql/1.0/warehouses/<warehouse-id>',
personalAccessToken secret('<scope>', '<token>'),
dbtable '<table-name>'
);