Usare dbx per sincronizzare i file locali con aree di lavoro remote in tempo reale
Importante
Questa documentazione è stata ritirata e potrebbe non essere aggiornata.
Databricks consiglia di usare, invece di dbx sync
, la versione 0.205 o successiva dell'interfaccia della riga di comando Databricks, che include funzionalità simili a dbx sync
tramite il comando databricks sync
.
L'estensione Databricks per Visual Studio Code include anche funzionalità simili a dbx sync
integrate nell'IDE di Visual Studio Code. Si prega di notare che dbx sync
è possibile sincronizzare le modifiche dei file da un computer di sviluppo locale a DBFS, le posizioni dell'area di lavoro e le cartelle Git di Databricks nelle aree di lavoro di Azure Databricks. L'estensione Databricks per Visual Studio Code supporta la sincronizzazione delle modifiche dei file solo ai file dell'utente dell'area di lavoro (/Users
) e alle cartelle Git di Databricks (/Repos
).
Nota
Questo articolo tratta di dbx
di Databricks Labs, che è fornito as-is e non è supportato da Databricks attraverso i canali di supporto tecnico ai clienti. Le domande e le richieste di funzionalità possono essere inviate tramite la pagina problemi del repository databrickslabs/dbx su GitHub.
È possibile eseguire la sincronizzazione in tempo reale delle modifiche ai file nel computer di sviluppo locale con i file corrispondenti nelle aree di lavoro di Azure Databricks usando dbx da Databricks Labs. Questi file dell'area di lavoro possono trovarsi in DBFS o nelle cartelle Git di Databricks .
La sincronizzazione dei file in tempo reale con dbx
(nota anche come dbx sync
) è utile negli scenari di sviluppo rapido del codice. Ad esempio, è possibile utilizzare un ambiente di sviluppo integrato locale (IDE) per funzionalità di produttività come l'evidenziazione della sintassi, il completamento intelligente del codice, il linting del codice, nonché il test e il debug. È quindi possibile passare immediatamente all'area di lavoro ed eseguire il codice aggiornato.
È possibile usare dbx sync
autonomamente, con processi automatizzatio con un IDE.
flussi di lavoro di sviluppo dbx sync
Esistono due flussi di lavoro di sviluppo per dbx sync
, uno con DBFS e un altro con le cartelle Git di Databricks.
Il flusso di lavoro di sviluppo tipico con dbx sync
e DBFS è:
- Identificare una directory locale contenente i file da sincronizzare con DBFS.
- Identificare il percorso in DBFS con cui si vuole sincronizzare la directory locale, oppure consentire a
dbx sync
di creare automaticamente un percorso DBFS predefinito. - Eseguire
dbx sync dbfs
per sincronizzare la directory locale con il percorso DBFS.dbx sync
inizia a osservare la directory locale per eventuali modifiche apportate ai file. - Apportare modifiche ai file nella directory locale in base alle esigenze.
dbx sync
applica tali modifiche ai file corrispondenti nel percorso DBFS in tempo reale.
Il flusso di lavoro di sviluppo tipico con le cartelle Git di dbx sync
e Databricks è:
- Creare un repository con un provider Git che supporta le cartelle Git di Databricks, se non si dispone già di un repository.
- Clona il tuo repository nell'area di lavoro di Azure Databricks.
- Clona il repository nel tuo computer di sviluppo locale.
- Esegui
dbx sync repo
per associare il tuo repository clonato locale al repository clonato di area di lavoro.dbx sync
inizia a osservare la directory locale per eventuali modifiche apportate ai file. - Apportare modifiche ai file nel repository clonato locale in base alle esigenze.
dbx sync
applica tali modifiche ai file corrispondenti nelle cartelle Git di Databricks in tempo reale. - Effettuare periodicamente il push dei file aggiornati dal repository clonato nell'area di lavoro al provider Git, in modo che il repository rimanga aggiornato con il provider Git.
Importante
dbx sync
esegue solo una sincronizzazione in tempo reale delle modifiche dei file dal computer di sviluppo locale all'area di lavoro remota. Di conseguenza, Databricks non consiglia di effettuare modifiche nell'area di lavoro di Azure Databricks ai file monitorati da dbx sync
. Se è necessario apportare tali modifiche al file avviato dall'area di lavoro, è necessario eseguire anche le operazioni seguenti:
- Per le modifiche ai file in DBFS, apportare manualmente le modifiche corrispondenti ai file locali.
- Per le modifiche ai file nelle cartelle Git di Databricks, effettua il push delle modifiche dei file dal tuo workspace al tuo provider Git. Quindi, nel computer di sviluppo locale, effettuare il pull di tali modifiche ai file dal provider Git.
Requisiti
Se si vuole usare dbx sync
con le cartelle Git di Databricks, l'area di lavoro di Azure Databricks deve soddisfare i requisiti seguenti:
- Si suggerisce una clonazione del tuo repository con il tuo provider Git, anche se non è necessaria.
Nel computer di sviluppo locale è necessario avere installato quanto segue:
Python versione 3.8 o successiva. Per verificare se Python è installato e controllare la versione di Python installata, eseguire
python --version
nel terminale o in PowerShell.python --version
Nota
Alcune installazioni di
python
potrebbero richiedere l'uso dipython3
anziché dipython
. In tal caso, sostituirepython
conpython3
in questo articolo.pip. Per verificare se
pip
è installato e controllare la versionepip
installata, eseguirepip --version
opython -m pip --version
.pip --version # Or... python -m pip --version
Nota
Alcune installazioni di
pip
potrebbero richiedere l'uso dipip3
anziché dipip
. In tal caso, sostituirepip
conpip3
in questo articolo.dbx versione 0.8.0 o superiore. Per verificare se
dbx
è installato e controllare la versione didbx
installata, eseguiredbx --version
. Per installaredbx
da Python Package Index (PyPI), eseguirepip install dbx
opython -m pip install dbx
. (dbx
include dbx sync.)# Check whether dbx is installed, and check its version. dbx --version # Install dbx. pip install dbx # Or... python -m pip install dbx
Nota
Per altre informazioni su
dbx
, vedere dbx by Databricks Labs e la documentazione dbx.L'interfaccia della riga di comando di Databricks versione 0.18 o successiva, configurata con autenticazione. L'interfaccia legacy CLI di Databricks (versione 0.17) viene installata automaticamente quando si installa
dbx
. Questa autenticazione può essere configurata nel computer di sviluppo locale in una o entrambe le posizioni seguenti:- All'interno delle variabili di ambiente
DATABRICKS_HOST
eDATABRICKS_TOKEN
(a partire dalla versione 0.8.0 dell'interfaccia a riga di comando di Databricks). - In un profilo di configurazione di Azure Databricks all'interno del file di
.databrickscfg
.
dbx
cerca rispettivamente le credenziali di autenticazione in queste due posizioni.dbx
usa solo il primo set di credenziali corrispondenti trovate.Nota
Se usi un file
.databrickscfg
,dbx sync
cercherà in quel file un profilo di configurazione denominatoDEFAULT
per impostazione predefinita. Per specificare un profilo diverso, usare l'opzione--profile
quando si esegue il comandodbx sync
, più avanti in questo articolo.non supporta l'uso di un file .netrc per l'autenticazione. - All'interno delle variabili di ambiente
Se si vuole usare
dbx sync
con le cartelle Git di Databricks, è consigliabile usare un clone locale del repository con il provider Git, anche se non necessario. Per eseguire un clone locale, consultare la documentazione del provider Git.
Usare DBFS con dbx sync
Dal terminale o da PowerShell sul computer di sviluppo locale, passare alla directory che contiene i file da sincronizzare con DBFS nell'area di lavoro di Azure Databricks.
Esegui il comando dbx sync per sincronizzare la tua directory locale con DBFS nell'area di lavoro, come segue. (Non dimenticare il punto (
.
) alla fine, che rappresenta la directory corrente.)dbx sync dbfs --source .
Mancia
Per specificare una directory di origine diversa, sostituire il punto (
.
) con un percorso diverso.Nota
Se viene visualizzato l'errore
Error: No such command 'sync'
, è probabile che l'installazione didbx
non sia aggiornata. Per risolvere questo problema, eseguirepip install --upgrade dbx==<version>
opython -m pip install --upgrade dbx==version
, dove<version>
è la versione più recente didbx
. Questo numero di versione è disponibile nella pagina Web pyPI per dbx.pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
dbx sync
inizia la sincronizzazione dei file nella directory locale corrente con i file nel seguente percorso DBFS nell'area di lavoro.dbx sync
conferma questa operazione stampandoTarget base path
seguito dal percorso DBFS, ad esempio:/tmp/users/<your-Databricks-username>/<local-directory-name>
Mancia
Per specificare un nome utente o un percorso DBFS diverso, specificare rispettivamente le opzioni
--user
e--dest
quando si eseguedbx sync
.Apportare modifiche ai file locali in base alle esigenze.
Importante
Per continuare la sincronizzazione, è necessario mantenere aperto il terminale o PowerShell per
dbx sync
. Se si chiude il terminale o PowerShell,dbx sync
smette di controllare le modifiche apportate ai file e interrompe la sincronizzazione. Per riprendere la sincronizzazione delle modifiche dei file, ripetere questa procedura dall'inizio.Se necessario, verifica le modifiche apportate ai file nel percorso precedente all'interno di DBFS nella tua area di lavoro.
Usare le cartelle Git di Databricks con dbx sync
Dal terminale o da PowerShell sul computer locale di sviluppo, passare alla directory radice che contiene il clone del repository con il provider Git.
Nell'area di lavoro di Azure Databricks, identifica il nome della cartella Git di Databricks per sincronizzarla con il repository locale clonato. È possibile trovare questo nome di repository facendo clic su cartelle Git nella barra laterale dell'area di lavoro.
Sul computer di sviluppo locale, eseguire il comando dbx sync per sincronizzare il repository clonato locale con le cartelle Git di Databricks nell'area di lavoro, sostituendo
<your-repo-name>
con il nome del tuo repository nelle cartelle Git di Databricks. (Non dimenticare il punto (.
) alla fine, che rappresenta la directory corrente.)dbx sync repo -d <your-repo-name> --source .
Mancia
Per specificare una directory di origine diversa, sostituire il punto (
.
) con un percorso diverso.Nota
Se viene visualizzato l'errore
Error: No such command 'sync'
, è probabile che l'installazione didbx
non sia aggiornata. Per risolvere questo problema, eseguirepip install --upgrade dbx==<version>
opython -m pip install --upgrade dbx==version
, dove<version>
è la versione più recente didbx
. Questo numero di versione è disponibile nella pagina Web pyPI per dbx.pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
dbx sync
inizia la sincronizzazione dei file nel repository clonato locale con i file nelle cartelle Git di Databricks nell'area di lavoro.dbx sync
conferma questo stampandoTarget base path
seguito dal percorso delle cartelle Git di Databricks, ad esempio:/Repos/<your-Databricks-username>/<your-repo-name>
Mancia
Per specificare un nome utente o un repository diverso, specificare rispettivamente le opzioni
--user
e--dest-repo
quando si eseguedbx sync
.Apportare modifiche ai file locali in base alle esigenze.
Importante
Per continuare la sincronizzazione, è necessario mantenere aperto il terminale o PowerShell per
dbx sync
. Se si chiude il terminale o PowerShell,dbx sync
smette di controllare le modifiche apportate ai file e interrompe la sincronizzazione. Per riprendere la sincronizzazione delle modifiche dei file, ripetere questa procedura dall'inizio.Se necessario, verificare le modifiche apportate ai file nelle cartelle Git di Databricks nell'area di lavoro.