Utilisez dbx pour synchroniser les fichiers locaux avec les Workspace à distance en temps réel
Cette documentation a été retirée et pourrait ne pas être mise à jour.
Databricks recommande qu’au lieu de dbx sync, vous utilisiez les versions 0.205 ou supérieures du CLI Databricks, qui inclut des fonctionnalités similaires à dbx sync via la commande databricks sync.
L'extension Databricks pour Visual Studio Code inclut également des fonctionnalités similaires à dbx sync intégrées à l'IDE Visual Studio Code. Notez que dbx sync peut synchroniser les modifications de fichiers d'une machine de développement locale vers DBFS, les emplacements de workspace et les dossiers Git Databricks de vos workspaces Databricks. L'extension Databricks pour Visual Studio Code prend en charge la synchronisation des modifications de fichiers uniquement avec les fichiers utilisateur (/Users) du workspace et les dossiers Git Databricks (/Repos).
Cet article couvre dbx par Databricks Labs, qui est fourni tel quel et n'est pas pris en charge par Databricks via les canaux d'assistance technique des clients. Les questions et les demandes de fonctionnalités peuvent être transmises via la page Problèmes du dépôt databrickslabs/dbx sur GitHub.
Vous pouvez effectuer une synchronisation en temps réel des modifications apportées aux fichiers sur votre machine de développement locale avec leurs fichiers correspondants dans vos Workspaces Databricks en utilisant dbx par Databricks Labs. Ces fichiers de workspace peuvent se trouver dans DBFS ou dans les dossiers Git Databricks.
La synchronisation de fichiers en temps réel avec dbx (également connu sous le nom de dbx sync) est utile dans les scénarios de développement de code rapide. Par exemple, vous pouvez utiliser un environnement de développement intégré (IDE) local pour des fonctionnalités de productivité telles que la coloration syntaxique, la complétion de code intelligente, le linting de code, ainsi que le test et le debugging. Vous pouvez ensuite accéder immédiatement à votre Workspace et exécuter votre code mis à jour.
Vous pouvez utiliser dbx sync seul, avec des Jobs automatisés, ou avec un IDE.
dbx sync workflows de développement
Il existe deux workflows de développement pour dbx sync: l'un avec DBFS et l'autre avec les dossiers Databricks Git.
Le flux de travail de développement typique avec dbx sync et DBFS est :
- Identifiez un répertoire local qui contient les fichiers que vous souhaitez synchroniser sur DBFS.
- Identifiez le chemin dans DBFS avec lequel vous souhaitez synchroniser votre répertoire local (ou laissez
dbx synccréer un chemin DBFS par default pour vous). - Exécutez
dbx sync dbfspour synchroniser votre répertoire local avec le chemin DBFS.dbx synccommence à surveiller votre répertoire local pour toute modification de fichier. - Apportez des modifications aux fichiers dans votre répertoire local selon les besoins.
dbx syncapplique ces changements aux fichiers correspondants dans le chemin DBFS en temps réel.
Le workflow de développement typique avec dbx sync et les dossiers Git Databricks est :
- Créez un repository avec un fournisseur Git pris en charge par les dossiers Git de Databricks, si vous n'avez pas déjà de repository disponible.
- Clonez votre dépôt dans votre Workspace Databricks.
- Clonez votre référentiel sur votre machine de développement locale.
- Exécutez
dbx sync repopour associer votre dépôt cloné local au dépôt cloné de votre workspace.dbx synccommence à surveiller votre répertoire local pour toute modification de fichier. - Apportez les modifications nécessaires aux fichiers de votre référentiel cloné local.
dbx syncapplique ces modifications aux fichiers correspondants dans les dossiers Git Databricks en temps réel. - Poussez périodiquement les fichiers mis à jour du dépôt cloné dans votre Workspace vers votre fournisseur Git, afin que le dépôt reste à jour avec votre fournisseur Git.
dbx sync effectue uniquement une synchronisation unidirectionnelle et en temps réel des modifications de fichiers de votre machine de développement locale vers votre Workspace distant. Par conséquent, Databricks ne recommande pas d'initier des changements dans votre Workspace Databricks pour les fichiers surveillés par dbx sync. Si vous devez apporter de telles modifications de fichiers initiées par le Workspace, vous devez également effectuer les opérations suivantes :
- Pour les modifications de fichiers dans DBFS, apportez manuellement les modifications correspondantes aux fichiers locaux.
- Pour les modifications de fichier dans les dossiers Git Databricks, envoyez les modifications de fichier de votre Workspace vers votre fournisseur Git. Ensuite, sur votre machine de développement locale, extrayez ces modifications de fichier depuis votre fournisseur Git.
Exigences
Si vous souhaitez utiliser dbx sync avec les dossiers Git de Databricks, votre workspace Databricks doit remplir la condition suivante :
- Un clone de votre repository avec votre fournisseur Git, bien que non obligatoire, est suggéré.
Sur votre machine de développement locale, vous devez avoir installé les éléments suivants :
-
Python version 3.8 ou supérieure. Pour vérifier si Python est installé, et pour vérifier la version de Python installée, exécutez
python --versiondans votre terminal ou PowerShell.Bashpython --version
Certaines installations de python peuvent vous demander d'utiliser python3 au lieu de python. Si tel est le cas, substituez python par python3 dans cet article.
-
pip. Pour vérifier si
pipest installé, et pour vérifier votre versionpipinstallée, exécutezpip --versionoupython -m pip --version.Bashpip --version
# Or...
python -m pip --version
Certaines installations de pip peuvent vous demander d'utiliser pip3 au lieu de pip. Si tel est le cas, substituez pip par pip3 dans cet article.
-
dbx version 0.8.0 ou supérieure. Pour vérifier si
dbxest installé et pour vérifier votre version installée dedbx, exécutezdbx --version. Pour installerdbxà partir de l'index de packages Python (PyPI), exécutezpip install dbxoupython -m pip install dbx. (dbxinclut dbx sync.)Bash# Check whether dbx is installed, and check its version.
dbx --version
# Install dbx.
pip install dbx
# Or...
python -m pip install dbx
Pour plus d'informations sur dbx, consultez dbx by Databricks Labs et la documentation dbx.
-
La CLI Databricks version 0.18 ou antérieure, configurée avec l'authentification. L'ancienne CLI Databricks (CLI Databricks version 0.17) est automatiquement installée lorsque vous installez
dbx. Cette authentification peut être configurée sur votre machine de développement locale dans l'un ou les deux emplacements suivants :- Dans les variables d'environnement
DATABRICKS_HOSTetDATABRICKS_TOKEN(depuis la version héritée 0.8.0 du CLI Databricks). - Dans un profil de configuration Databricks dans votre fichier
.databrickscfg.
dbxrecherche les identifiants d'authentification à ces deux emplacements, respectivement.dbxutilise uniquement le premier ensemble d'identifiants correspondants qu'il trouve. - Dans les variables d'environnement
Si vous utilisez un fichier .databrickscfg, dbx sync recherche default un profil de configuration nommé DEFAULT dans ce fichier. Pour spécifier un profil différent, utilisez l'option --profile lorsque vous exécutez la commande dbx sync, plus loin dans cet article.
dbx ne prend pas en charge l’utilisation d’un fichier .netrc fichier pour l'authentification.
- Si vous souhaitez utiliser
dbx syncavec les dossiers Databricks Git, un clone local de votre repository avec votre fournisseur Git, bien que non obligatoire, est suggéré. Pour effectuer un clone local, consultez la documentation de votre fournisseur Git.
Utiliser DBFS avec dbx sync
-
Depuis le terminal ou PowerShell sur votre machine de développement locale, accédez au répertoire qui contient les fichiers que vous souhaitez synchroniser avec DBFS dans votre Workspace Databricks.
-
Exécutez la commande dbx sync pour synchroniser votre répertoire local sur DBFS dans votre Workspace, comme suit. (N'oubliez pas le point (
.) à la fin, qui représente votre répertoire actuel.)Bashdbx sync dbfs --source .
Pour spécifier un autre répertoire source, remplacez le point (.) par un autre chemin.
Si l'erreur Error: No such command 'sync' apparaît, votre installation de dbx est probablement obsolète. Pour corriger cela, exécutez pip install --upgrade dbx==<version> ou python -m pip install --upgrade dbx==version, où <version> est la dernière version de dbx. Ce numéro de version se trouve sur la page web PyPI de dbx.
pip install --upgrade dbx==<version>
# Or...
python -m pip install --upgrade dbx==version
-
dbx synccommence à synchroniser les fichiers de votre répertoire local actuel avec les fichiers du chemin DBFS suivant dans votre Workspace.dbx syncle confirme en affichantTarget base pathsuivi du chemin DBFS, par exemple :/tmp/users/<your-Databricks-username>/<local-directory-name>
Pour spécifier un nom d'utilisateur ou un chemin DBFS différent, spécifiez les options --user et --dest, respectivement, lorsque vous exécutez dbx sync.
- Apportez les modifications nécessaires à vos fichiers locaux.
Vous devez garder votre terminal ou PowerShell ouvert pour que dbx sync continue de se synchroniser. Si vous fermez votre terminal ou PowerShell, dbx sync cesse de surveiller les modifications de fichiers et arrête la synchronisation. Pour reprendre la synchronisation des modifications de fichiers, répétez cette procédure depuis le début.
- Au besoin, vérifiez vos modifications de fichier dans le chemin précédent de DBFS dans votre workspace.
Utiliser les dossiers Git Databricks avec dbx sync
-
À partir du terminal ou de PowerShell sur votre machine de développement locale, accédez au répertoire racine qui contient le clone du repository avec votre fournisseur Git.
-
Dans votre workspace Databricks, identifiez le nom du dossier Git Databricks avec lequel vous souhaitez synchroniser votre dépôt local cloné. Vous pouvez trouver ce nom de dépôt en cliquant sur Dossiers Git dans la barre latérale de votre workspace.
-
Sur votre machine de développement locale, exécutez la commande dbx sync pour synchroniser votre repository cloné localement avec les dossiers Git Databricks de votre Workspace comme suit, en remplaçant
<your-repo-name>par le nom de votre repository dans les dossiers Git Databricks. (N'oubliez pas le point (.) à la fin, qui représente votre répertoire actuel.)Bashdbx sync repo -d <your-repo-name> --source .
Pour spécifier un autre répertoire source, remplacez le point (.) par un autre chemin.
Si l'erreur Error: No such command 'sync' apparaît, votre installation de dbx est probablement obsolète. Pour corriger cela, exécutez pip install --upgrade dbx==<version> ou python -m pip install --upgrade dbx==version, où <version> est la dernière version de dbx. Ce numéro de version se trouve sur la page web PyPI de dbx.
pip install --upgrade dbx==<version>
# Or...
python -m pip install --upgrade dbx==version
-
dbx synccommence à synchroniser les fichiers de votre local cloned repository avec les fichiers des dossiers Git Databricks dans votre Workspace.dbx syncle confirme en imprimantTarget base pathsuivi du chemin des dossiers Git Databricks, par exemple :/Repos/<your-Databricks-username>/<your-repo-name>
Pour spécifier un nom d'utilisateur ou un nom de référentiel différent, spécifiez les options --user et --dest-repo, respectivement, lorsque vous exécutez dbx sync.
- Apportez les modifications nécessaires à vos fichiers locaux.
Vous devez garder votre terminal ou PowerShell ouvert pour que dbx sync continue de se synchroniser. Si vous fermez votre terminal ou PowerShell, dbx sync cesse de surveiller les modifications de fichiers et arrête la synchronisation. Pour reprendre la synchronisation des modifications de fichiers, répétez cette procédure depuis le début.
- Si nécessaire, vérifiez les modifications de vos fichiers dans les dossiers Git Databricks de votre Workspace.
Ressources supplémentaires
- documentation dbx
- documentation dbx sync
- repository databrickslabs/dbx sur GitHub
- dbx limitations