Use dbx para sincronizar arquivos locais com espaços de trabalho remotos em tempo real
Importante
Esta documentação foi desativada e pode não ser atualizada.
O Databricks recomenda que, em vez de dbx sync
, você use o Databricks CLI versões 0.205 ou superiores, que inclui funcionalidade semelhante ao dbx sync
através do comando databricks sync
.
A extensão Databricks para Visual Studio Code também inclui funcionalidade semelhante à dbx sync
integrada ao IDE de código do Visual Studio. Observe que dbx sync
pode sincronizar alterações de ficheiros de uma máquina de desenvolvimento local para o DBFS, locais de espaço de trabalho e pastas Git do Databricks nos seus espaços de trabalho do Azure Databricks. A extensão Databricks para Visual Studio Code oferece suporte à sincronização de alterações de arquivos somente para arquivos de usuário do espaço de trabalho (/Users
) e pastas Git Databricks (/Repos
).
Observação
Este artigo aborda dbx
da Databricks Labs, que é disponibilizado as-is e não é suportado pela Databricks por meio dos canais de suporte técnico ao cliente. Perguntas e pedidos de funcionalidades podem ser comunicados através 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 em sua máquina de desenvolvimento local com seus arquivos correspondentes em seus espaços de trabalho do Azure Databricks usando dbx pelo Databricks Labs. Esses arquivos de espaço de trabalho podem estar em DBFS ou em pastas Databricks Git.
A sincronização de arquivos em tempo real com o dbx
(também conhecido como dbx sync
) é útil em cenários de desenvolvimento rápido de código. Por exemplo, pode-se usar um ambiente de desenvolvimento integrado (IDE) local para funcionalidades de produtividade, como realce de sintaxe, conclusão inteligente de código, análise de código e testar e depurar. Em seguida, você pode ir imediatamente para seu espaço de trabalho e executar seu código atualizado.
Você pode usar dbx sync
sozinho, com trabalhos automatizadosou com um IDE.
dbx sync
fluxos de trabalho de desenvolvimento
Existem dois fluxos de trabalho de desenvolvimento para dbx sync
, um com DBFS e outro com pastas Databricks Git.
O fluxo de trabalho de desenvolvimento típico com dbx sync
e DBFS é:
- Identifique um diretório local que contenha os arquivos que você deseja sincronizar com o DBFS.
- Identifique o caminho no DBFS com o qual você deseja que seu diretório local sincronize (ou deixe que
dbx sync
crie um caminho DBFS padrão para você). - Execute
dbx sync dbfs
para sincronizar seu diretório local com o caminho DBFS.dbx sync
começa a observar seu diretório local para quaisquer alterações de arquivo. - Faça alterações nos arquivos em seu diretório local conforme necessário.
dbx sync
aplica essas alterações aos arquivos correspondentes no caminho DBFS em tempo real.
O fluxo de trabalho de desenvolvimento típico com pastas Git dbx sync
e Databricks é:
- Crie um repositório com um provedor Git que as pastas do Databricks Git suportem, se você ainda não tiver um repositório disponível.
- Clone seu repositório em seu espaço de trabalho do Azure Databricks.
- Clone seu repositório em sua máquina de desenvolvimento local.
- Execute
dbx sync repo
para associar seu repositório clonado local ao repositório clonado do espaço de trabalho.dbx sync
começa a observar seu diretório local para quaisquer alterações de arquivo. - Faça alterações nos arquivos em seu repositório clonado local, conforme necessário.
dbx sync
aplica essas alterações aos arquivos correspondentes nas pastas Databricks Git em tempo real. - Envie periodicamente arquivos atualizados do repositório clonado em seu espaço de trabalho para seu provedor Git, para que o repositório permaneça atualizado com seu provedor Git.
Importante
dbx sync
executa apenas a sincronização unidirecional e em tempo real de alterações de arquivos da máquina de desenvolvimento local para o espaço de trabalho remoto. Portanto, o Databricks não recomenda que você inicie alterações em seu espaço de trabalho do Azure Databricks em arquivos monitorados por dbx sync
. Se você precisar fazer essas alterações de arquivo iniciadas pelo espaço de trabalho, também deverá fazer o seguinte:
- Para alterações de arquivo no DBFS, faça as alterações correspondentes nos arquivos locais manualmente.
- Para alterações de arquivo em pastas do Databricks Git, envie as alterações de arquivo do seu espaço de trabalho para o provedor do Git. Em seguida, na sua máquina de desenvolvimento local, extraia essas alterações de ficheiro do seu provedor Git.
Requerimentos
Se você quiser usar dbx sync
com pastas Git Databricks, seu espaço de trabalho do Azure Databricks deve atender ao seguinte requisito:
Em sua máquina de desenvolvimento local, você deve ter o seguinte instalado:
Python versão 3.8 ou superior. Para verificar se o Python está instalado e verificar a versão do Python instalada, execute
python --version
no terminal ou no PowerShell.python --version
Observação
Algumas instalações do
python
podem exigir que você usepython3
em vez depython
. Em caso afirmativo, substituapython
porpython3
ao longo deste artigo.pip. Para verificar se o
pip
está instalado e a versão dopip
instalada, executepip --version
oupython -m pip --version
.pip --version # Or... python -m pip --version
Observação
Algumas instalações do
pip
podem exigir que você usepip3
em vez depip
. Em caso afirmativo, substituapip
porpip3
ao longo deste artigo.dbx versão 0.8.0 ou superior. Para verificar se o
dbx
está instalado e verificar a versão dodbx
instalada, executedbx --version
. Para instalardbx
a partir do Python Package Index (PyPI), 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 do dbx.O Databricks CLI versão 0.18 ou inferior, configurado com autenticação. A CLI legada do Databricks (Databricks CLI versão 0.17) é instalada automaticamente ao instalar o
dbx
. Essa autenticação pode ser configurada em sua máquina de desenvolvimento local em um ou ambos os seguintes locais:- Dentro das variáveis de ambiente
DATABRICKS_HOST
eDATABRICKS_TOKEN
(começando com a versão legada do Databricks CLI 0.8.0). - Em um Azure Databricks perfil de configuração dentro do seu arquivo
.databrickscfg
.
dbx
procura credenciais de autenticação nesses dois locais, respectivamente.dbx
usa apenas o primeiro conjunto de credenciais correspondentes que encontrar.Observação
Se você usar um arquivo
.databrickscfg
,dbx sync
procurará nesse arquivo um perfil de configuração chamadoDEFAULT
por padrão. Para especificar um perfil diferente, use a opção--profile
ao executar o comandodbx sync
, mais adiante neste artigo.dbx
não suporta o uso de um ficheiro .netrc para autenticação.- Dentro das variáveis de ambiente
Se pretender usar
dbx sync
com pastas do Git do Databricks, um clone local do seu repositório com o seu provedor Git, mesmo não sendo obrigatório, é recomendado. Para executar um clone local, consulte a documentação do seu provedor Git.
Use DBFS com dbx sync
No terminal ou PowerShell em sua máquina de desenvolvimento local, mude para o diretório que contém os arquivos que você deseja sincronizar com o DBFS em seu espaço de trabalho do Azure Databricks.
Execute o comando dbx sync para sincronizar seu diretório local com o DBFS em seu espaço de trabalho, da seguinte maneira. (Não se esqueça do ponto (
.
) no final, que representa o seu 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, é provável que a instalação dodbx
esteja desatualizada. Para corrigir isso, executepip install --upgrade dbx==<version>
oupython -m pip install --upgrade dbx==version
, onde<version>
é a versão mais recente dodbx
. Este número de versão pode ser encontrado na página do PyPI para dbx.pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
dbx sync
começa a sincronizar arquivos em seu diretório local atual com arquivos no seguinte caminho DBFS em seu espaço de trabalho.dbx 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
dbx sync
continuar sincronizando. Se você fechar o terminal ou o PowerShell,dbx sync
para de observar as alterações de arquivo e para de sincronizar. Para retomar a sincronização de alterações de ficheiros, repita este procedimento desde o início.Se necessário, verifique as alterações nos ficheiros no caminho anterior no DBFS no seu espaço de trabalho.
Usar diretórios Databricks Git com dbx sync
No terminal ou no PowerShell na sua máquina de desenvolvimento local, navegue até o diretório raiz que contém o clone do repositório do seu provedor de Git.
Em seu espaço de trabalho do Azure Databricks, identifique o nome da pasta Databricks Git com a qual você deseja sincronizar seu repositório clonado local. Você pode encontrar esse nome de repositório clicando em pastas Git na barra lateral do seu espaço de trabalho.
Em sua máquina de desenvolvimento local, execute o comando dbx sync para sincronizar seu repositório clonado local com as pastas Databricks Git em seu espaço de trabalho da seguinte maneira, substituindo
<your-repo-name>
pelo nome do seu repositório nas pastas Databricks Git. (Não se esqueça do ponto (.
) no final, que representa o seu 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, é provável que a instalação dodbx
esteja desatualizada. Para corrigir isso, executepip install --upgrade dbx==<version>
oupython -m pip install --upgrade dbx==version
, onde<version>
é a versão mais recente dodbx
. Este número de versão pode ser encontrado na página do PyPI para dbx.pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
dbx sync
começa a sincronizar arquivos em seu repositório clonado local com arquivos em pastas Databricks Git em seu espaço de trabalho.dbx sync
confirma isso imprimindoTarget base path
seguido pelo caminho das pastas Databricks Git, por exemplo:/Repos/<your-Databricks-username>/<your-repo-name>
Dica
Para especificar um nome de usuário ou repo diferente, especifique as opções
--user
e--dest-repo
, respectivamente, quando executardbx sync
.Faça alterações em seus arquivos locais, conforme necessário.
Importante
Você deve manter seu terminal ou PowerShell aberto para
dbx sync
continuar sincronizando. Se você fechar o terminal ou o PowerShell,dbx sync
para de observar as alterações de arquivo e para de sincronizar. Para retomar a sincronização de alterações de ficheiros, repita este procedimento desde o início.Conforme necessário, verifique as alterações de arquivo nas pastas do Databricks Git em seu espaço de trabalho.