Partilhar via


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 é:

  1. Identifique um diretório local que contenha os arquivos que você deseja sincronizar com o DBFS.
  2. 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ê).
  3. 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.
  4. 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 é:

  1. 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.
  2. Clone seu repositório em seu espaço de trabalho do Azure Databricks.
  3. Clone seu repositório em sua máquina de desenvolvimento local.
  4. 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.
  5. 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.
  6. 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:

  • É recomendado um clone do seu repositório com o seu provedor Git, ainda que não seja necessário.

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ê use python3 em vez de python. Em caso afirmativo, substitua python por python3 ao longo deste artigo.

  • pip. Para verificar se o pip está instalado e a versão do pip instalada, execute pip --version ou python -m pip --version.

    pip --version
    
    # Or...
    
    python -m pip --version
    

    Observação

    Algumas instalações do pip podem exigir que você use pip3 em vez de pip. Em caso afirmativo, substitua pip por pip3 ao longo deste artigo.

  • dbx versão 0.8.0 ou superior. Para verificar se o dbx está instalado e verificar a versão do dbx instalada, execute dbx --version. Para instalar dbx a partir do Python Package Index (PyPI), execute pip install dbx ou python -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 e DATABRICKS_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 chamado DEFAULT por padrão. Para especificar um perfil diferente, use a opção --profile ao executar o comando dbx sync, mais adiante neste artigo.

    dbx não suporta o uso de um ficheiro .netrc para autenticação.

  • 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

  1. 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.

  2. 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 do dbx esteja desatualizada. Para corrigir isso, execute pip install --upgrade dbx==<version> ou python -m pip install --upgrade dbx==version, onde <version> é a versão mais recente do dbx. 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
    
  3. 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 imprimindo Target 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 executar dbx sync.

  4. 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.

  5. 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

  1. 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.

  2. 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.

  3. 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 do dbx esteja desatualizada. Para corrigir isso, execute pip install --upgrade dbx==<version> ou python -m pip install --upgrade dbx==version, onde <version> é a versão mais recente do dbx. 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
    
  4. 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 imprimindo Target 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 executar dbx sync.

  5. 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.

  6. Conforme necessário, verifique as alterações de arquivo nas pastas do Databricks Git em seu espaço de trabalho.

Recursos adicionais