Usar dbx para sincronizar arquivos locais com workspaces remotos em tempo real
Importante
Esta documentação foi desativada e pode não estar atualizada.
O Databricks recomenda que, em vez de dbx sync
, você use a CLI do Databricks versões 0.205 ou superiores, que inclui uma funcionalidade semelhante a dbx sync
por meio do comando databricks sync
.
A extensão do Databricks para Visual Studio Code também inclui uma funcionalidade similar a dbx sync
integrada ao IDE do Visual Studio Code. Observe que dbx sync
pode sincronizar as alterações de arquivo de um computador de desenvolvimento local para o DBFS, e pastas Git do Databricks em seus workspaces do Azure Databricks. A extensão do Databricks para Visual Studio Code dá suporte à sincronização de alterações de arquivo somente para arquivos de usuário do workspace (/Users
) e das pastas Git do Databricks (/Repos
).
Observação
Este artigo aborda o dbx
do Databricks Labs, que é fornecido no estado em que se encontra e não tem suporte do Databricks por meio de canais de suporte técnico ao cliente. As dúvidas e solicitações de recursos podem ser comunicadas por meio da página Problemas do repositório databrickslabs/dbx no GitHub.
Você pode executar a sincronização em tempo real de alterações em arquivos no computador de desenvolvimento local com os arquivos correspondentes nos workspaces do Azure Databricks usando o dbx do Databricks Labs. Esses arquivos de workspace podem estar em DBFS ou no pastas Git do Databricks.
A sincronização de arquivos em tempo real com dbx
(também conhecida como dbx sync
) é útil em cenários rápidos de desenvolvimento de código. Por exemplo, você pode usar um IDE (ambiente de desenvolvimento integrado) local para recursos de produtividade, como realce de sintaxe, preenchimento de código inteligente, lint de código e teste e depuração. Em seguida, você pode ir imediatamente ao seu workspace e executar o código atualizado.
Você pode usar o dbx sync
sozinho, com trabalhos automatizados ou com um IDE.
Fluxos de trabalho de desenvolvimento do dbx sync
Há dois fluxos de trabalho de desenvolvimento para dbx sync
, um com DBFS e outro com as pastas Git do Databricks.
O fluxo de trabalho de desenvolvimento típico com dbx sync
e DBFS é:
- Identificar um diretório local que contém os arquivos que você deseja sincronizar com o DBFS.
- Identificar o caminho no DBFS com o qual você deseja que seu diretório local seja sincronizado (ou deixar o
dbx sync
criar um caminho DBFS padrão). - Executar o
dbx sync dbfs
para sincronizar seu diretório local com o caminho DBFS. Odbx sync
começa a observar o diretório local quanto a quaisquer alterações de arquivo. - Fazer alterações nos arquivos em seu diretório local conforme necessário. O
dbx sync
aplica essas alterações aos arquivos correspondentes no caminho DBFS em tempo real.
O fluxo de trabalho de desenvolvimento típico com dbx sync
e pastas Git do Databricks é:
- Criar um repositório com um provedor Git compatível com pastas Git do Databricks, se você ainda não tiver um repositório disponível.
- Clonar seu repositório remoto no workspace do Azure Databricks.
- Clonar seu repositório em seu computador de desenvolvimento local.
- Executar o
dbx sync repo
para associar seu repositório clonado local ao repositório clonado do workspace. Odbx sync
começa a observar o diretório local quanto a quaisquer alterações de arquivo. - Fazer alterações nos arquivos em seu repositório clonado local, conforme necessário. O
dbx sync
aplica essas alterações aos arquivos correspondentes nas pastas Git do Databricks em tempo real. - Envie arquivos atualizados periodicamente do repositório clonado em seu workspace para seu provedor Git para que o repositório permaneça atualizado com o provedor Git.
Importante
O dbx sync
executa apenas a sincronização unidirecional em tempo real de alterações de arquivo do computador de desenvolvimento local para o workspace remoto. Portanto, o Databricks não recomenda iniciar alterações no workspace do Azure Databricks para arquivos monitorados por dbx sync
. Se precisar fazer essas alterações de arquivo iniciadas pelo workspace, você também deverá fazer o seguinte:
- Para alterações de arquivo no DBFS, faça as alterações correspondentes aos arquivos locais manualmente.
- Para alterações de arquivo nas pastas Git do Databricks, envie por push as alterações de arquivo do workspace para o provedor Git. Em seguida, no computador de desenvolvimento local, efetue pull dessas alterações de arquivo do provedor Git.
Requisitos
Se você quiser usar dbx sync
com as pastas Git do Databricks, seu workspace do Azure Databricks deverá atender ao seguinte requisito:
- Um clone do repositório com seu provedor Git, embora não seja necessário, é sugerido.
No computador de desenvolvimento local, você deve ter o seguinte instalado:
Python versão 3.8 ou superior. Para verificar se o Python está instalado e checar a versão instalada, execute
python --version
no terminal do PowerShell.python --version
Observação
Algumas instalações de
python
podem exigir que você usepython3
em vez depython
. Nesse caso, substituapython
porpython3
neste artigo.pip. Para verificar se o
pip
está instalado e verificar a versão instalada dopip
, executepip --version
oupython -m pip --version
.pip --version # Or... python -m pip --version
Observação
Algumas instalações de
pip
podem exigir que você usepip3
em vez depip
. Nesse caso, substituapip
porpip3
neste artigo.dbx versão 0.8.0 ou superior. Para verificar se o
dbx
está instalado e checar a versão instalada dodbx
, executedbx --version
. Para instalar odbx
por meio do PyPI (Índice de Pacotes do Python), executepip install dbx
oupython -m pip install dbx
. (dbx
inclui dbx sync.)# Check whether dbx is installed, and check its version. dbx --version # Install dbx. pip install dbx # Or... python -m pip install dbx
Observação
Para obter mais informações sobre
dbx
, consulte dbx by Databricks Labs e a documentação dbx.A CLI do Databricks versão 0.18 ou inferior, configurada com autenticação. A CLI herdada do Databricks (versões 0.17 e inferiores da CLI do Databricks) é instalada automaticamente quando você instala o
dbx
. Essa autenticação pode ser configurada em seu computador de desenvolvimento local em um ou ambos os seguintes locais:- Nas variáveis de ambiente
DATABRICKS_HOST
eDATABRICKS_TOKEN
(a partir da versão 0.8.0 da CLI do Databricks herdada). - Em um perfil de configuração do Azure Databricks no arquivo
.databrickscfg
.
dbx
procura credenciais de autenticação nesses dois locais, respectivamente.dbx
usa apenas o primeiro conjunto de credenciais correspondentes que ele encontra.Observação
Se você usar um arquivo
.databrickscfg
, odbx sync
vai procurar nele um perfil de configuração denominadoDEFAULT
por padrão. Para especificar um perfil diferente, use a opção--profile
ao executar o comandodbx sync
posteriormente neste artigo.O
dbx
não dá suporte ao uso de um arquivo .netrc para autenticação.- Nas variáveis de ambiente
Para usar
dbx sync
com as pastas Git do Databricks, sugerimos um clone local do repositório com o provedor Git, embora não seja necessário. Para executar um clone local, consulte a documentação do provedor Git.
Usar DBFS com dbx sync
No terminal ou no PowerShell em seu computador de desenvolvimento local, altere para o diretório que contém os arquivos que você deseja sincronizar com o DBFS no workspace do Azure Databricks.
Execute o comando dbx sync para sincronizar seu diretório local com o DBFS no workspace da maneira a seguir. (Não se esqueça do ponto (
.
) no final, que representa o diretório atual.)dbx sync dbfs --source .
Dica
Para especificar um diretório de origem diferente, substitua o ponto (
.
) por um caminho diferente.Observação
Se o erro
Error: No such command 'sync'
aparecer, provavelmente a instalação dodbx
está desatualizada. Para corrigir isso, executepip install --upgrade dbx==<version>
oupython -m pip install --upgrade dbx==version
, em que<version>
é a última versão dedbx
. Esse número de versão pode ser encontrado na página da Web PyPI para dbx.pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
O
dbx sync
começa a sincronizar arquivos em seu diretório local atual com arquivos no caminho DBFS a seguir em seu workspace. Odbx sync
confirma isso imprimindoTarget base path
seguido pelo caminho DBFS, por exemplo:/tmp/users/<your-Databricks-username>/<local-directory-name>
Dica
Para especificar um nome de usuário ou caminho DBFS diferente, especifique as opções
--user
e--dest
respectivamente ao executardbx sync
.Faça alterações em seus arquivos locais, conforme necessário.
Importante
Você deve manter seu terminal ou PowerShell aberto para o
dbx sync
continuar sincronizando. Se você fechar o terminal ou o PowerShell, odbx sync
vai parar de observar as alterações de arquivo e de sincronizar. Para retomar a sincronização de alterações de arquivo, repita esse procedimento desde o início.Conforme necessário, verifique as alterações de arquivo no caminho anterior no DBFS em seu workspace.
Use pastas Git do Databricks com dbx sync
No terminal ou no PowerShell em seu computador de desenvolvimento local, altere para o diretório raiz que contém o clone do repositório com o provedor Git.
No workspace do Azure Databricks, identifique o nome da pastas Git do Databricks com o qual deseja sincronizar seu repositório clonado local. Você pode encontrar esse nome de repositório clicando em pastas Git na barra lateral do workspace.
Em seu computador de desenvolvimento local, execute o comando dbx sync para sincronizar seu repositório clonado local com as pastas Git do Databricks no workspace da maneira a seguir, substituindo
<your-repo-name>
pelo nome do repositório nas pastas Git do Databricks. (Não se esqueça do ponto (.
) no final, que representa o diretório atual.)dbx sync repo -d <your-repo-name> --source .
Dica
Para especificar um diretório de origem diferente, substitua o ponto (
.
) por um caminho diferente.Observação
Se o erro
Error: No such command 'sync'
aparecer, provavelmente a instalação dodbx
está desatualizada. Para corrigir isso, executepip install --upgrade dbx==<version>
oupython -m pip install --upgrade dbx==version
, em que<version>
é a última versão dedbx
. Esse número de versão pode ser encontrado na página da Web PyPI para dbx.pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
O
dbx sync
começa a sincronizar arquivos em seu repositório clonado local com arquivos pastas Git do Databricks em seu workspace. Odbx sync
confirma isso imprimindoTarget base path
seguido pelo caminho das pastas Git do Databricks, por exemplo:/Repos/<your-Databricks-username>/<your-repo-name>
Dica
Para especificar um nome de usuário ou nome de repositório diferente, especifique as opções
--user
e--dest-repo
respectivamente ao executardbx sync
.Faça alterações em seus arquivos locais, conforme necessário.
Importante
Você deve manter seu terminal ou PowerShell aberto para o
dbx sync
continuar sincronizando. Se você fechar o terminal ou o PowerShell, odbx sync
vai parar de observar as alterações de arquivo e de sincronizar. Para retomar a sincronização de alterações de arquivo, repita esse procedimento desde o início.Conforme necessário, verifique as alterações de arquivo nas pastas Git do Databricks em seu workspace.
Recursos adicionais
- Documentação do dbx
- Documentação do dbx sync
- Repositório databrickslabs/dbx no GitHub
- Limitações do dbx