Von Bedeutung
このドキュメントは廃止され、更新されない可能性があります。
Databricks では、dbx syncの代わりに Databricks CLI バージョン 0.205 以降を使用することをお勧めします。これには、dbx sync コマンドを使用したdatabricks syncのような機能が含まれています。
Visual Studio Code 用の Databricks 拡張機能には、Visual Studio Code IDE に統合dbx syncのような機能も含まれています。
dbx syncは、ローカル開発マシンから、Azure Databricks ワークスペース内の DBFS、ワークスペースの場所、および Databricks Git フォルダーにファイルの変更を同期できることに注意してください。 Visual Studio Code 用の Databricks 拡張機能では、ワークスペース ユーザー (/Users) ファイルと Databricks Git フォルダー (/Repos) へのファイル変更の同期のみがサポートされています。
注
この記事で説明する Databricks Labs による dbx は、現状のまま提供されており、カスタマー テクニカル サポート チャネルを通じて Databricks によってサポートされているわけではありません。 ご質問や機能のリクエストは、GitHub の databrickslabs/dbx リポジトリの Issue ページを通じてご連絡いただけます。
ローカル開発マシン上のファイルに対する変更を、Databricks Labs の dbx を使用して、Azure Databricks ワークスペース内の対応するファイルとリアルタイムで同期できます。 これらのワークスペース ファイルは 、DBFS または Databricks Git フォルダーにあります。
dbx (dbx sync とも呼ばれます) とのリアルタイムのファイル同期は、迅速なコード開発シナリオで役立ちます。 たとえば、ローカル統合開発環境 (IDE) を使用して、構文の強調表示、スマート コード補完、コード リンティング、テストとデバッグなどの生産性機能を使用できます。 その後、すぐにワークスペースに移動し、更新されたコードを実行できます。
dbx syncは、単独で、自動化されたジョブ、または IDE で使用できます。
dbx sync 開発ワークフロー
dbx syncには 2 つの開発ワークフローがあり、1 つは DBFS と Databricks Git フォルダーがあります。
dbx syncと DBFS を使用した一般的な開発ワークフローは次のとおりです。
- DBFS に同期するファイルを含むローカル ディレクトリを特定します。
- ローカルディレクトリと同期するための DBFS のパスを選択するか、
dbx syncを使用して既定の DBFS パスを作成させます。 -
dbx sync dbfsを実行して、ローカル ディレクトリを DBFS パスに同期します。dbx syncは、ファイルの変更に関するローカル ディレクトリの監視を開始します。 - 必要に応じて、ローカル ディレクトリ内のファイルに変更を加えます。
dbx syncは、これらの変更を DBFS パス内の対応するファイルにリアルタイムで適用します。
dbx syncと Databricks Git フォルダーを含む一般的な開発ワークフローは次のとおりです。
- 使用可能なリポジトリがまだない場合は、Databricks Git フォルダーがサポートする Git プロバイダー を使用してリポジトリを作成します。
- リポジトリを Azure Databricks ワークスペースに複製します。
- リポジトリをローカル開発マシンに複製します。
-
dbx sync repoを実行して、ローカルの複製されたリポジトリをワークスペースの複製されたリポジトリに関連付けます。dbx syncは、ファイルの変更に関するローカル ディレクトリの監視を開始します。 - 必要に応じて、ローカルの複製されたリポジトリ内のファイルに変更を加えます。
dbx syncは、これらの変更を Databricks Git フォルダー内の対応するファイルにリアルタイムで適用します。 - ワークスペース内の複製されたリポジトリから Git プロバイダーに更新されたファイルを定期的にプッシュし、リポジトリが Git プロバイダーで最新の状態に保たることができるようにします。
Von Bedeutung
dbx sync は、ローカル開発マシンからリモート ワークスペースへのファイル変更の一方向のリアルタイム同期のみを実行します。 そのため、Databricks では、 dbx syncによって監視されているファイルへの変更を Azure Databricks ワークスペースで開始することはお勧めしません。 このようなワークスペースによって開始されるファイルを変更する必要がある場合は、次の操作も行う必要があります。
- DBFS でファイルを変更する場合は、ローカル ファイルに対応する変更を手動で行います。
- Databricks Git フォルダーでファイルを変更する場合は、ワークスペースから Git プロバイダーにファイルの変更をプッシュします。 次に、ローカル開発マシンで、Git プロバイダーからこれらのファイルの変更をプルします。
要求事項
Databricks Git フォルダーで dbx sync を使用する場合は、Azure Databricks ワークスペースが次の要件を満たしている必要があります。
- Git プロバイダーを使用してリポジトリの 複製 を作成することは必須ではありませんが、推奨されます。
ローカル開発用コンピューターには、次のものがインストールされている必要があります。
Python バージョン 3.8 以降。 Python がインストールされているかどうかを確認し、インストールされている Python のバージョンを確認するには、ターミナルまたは PowerShell で
python --versionを実行します。python --version注
pythonの一部のインストールでは、python3ではなくpythonを使用する必要があります。 その場合は、この記事全体でpythonをpython3に置き換える必要があります。pip。
pipがインストールされているかどうかを確認し、インストールされているpipバージョンを確認するには、pip --versionまたはpython -m pip --versionを実行します。pip --version # Or... python -m pip --version注
pipの一部のインストールでは、pip3ではなくpipを使用する必要があります。 その場合は、この記事全体でpipをpip3に置き換える必要があります。dbx バージョン 0.8.0 以上。
dbxがインストールされているかどうかを確認し、インストールされているdbxバージョンを確認するには、dbx --version実行します。 Python パッケージ インデックス (PyPI) からdbxをインストールするには、pip install dbxまたはpython -m pip install dbxを実行します。 (dbxにはdbx同期が含まれています)。# Check whether dbx is installed, and check its version. dbx --version # Install dbx. pip install dbx # Or... python -m pip install dbx注
dbxの詳細については、dbx by Databricks Labs と dbx のドキュメントを参照してください。Databricks CLI バージョン 0.18 以下では、認証を使用して設定します。
dbxをインストールすると、レガシ Databricks CLI (Databricks CLI バージョン 0.17) が自動的にインストールされます。 この認証は、次の場所のいずれかまたは両方のローカル開発マシンで設定できます。-
DATABRICKS_HOSTとDATABRICKS_TOKENの環境変数内 (レガシ Databricks CLI バージョン 0.8.0 以降)。 -
ファイル内の Azure Databricks
.databrickscfg。
dbxによって、これら 2 つの場所でそれぞれ認証資格情報が検索されます。dbxでは、検出された一致する資格情報の最初のセットのみが使用されます。注
.databrickscfgファイルを使用する場合、dbx syncは既定でこのファイル内にあるDEFAULTという名前の構成プロファイルを検索します。 別のプロファイルを指定するには、この記事で後述する--profileコマンドを実行するときに、dbx syncオプションを使用します。dbxでは、認証に .netrc ファイルを使用することはできません。-
Databricks Git フォルダーで
dbx syncを使用する場合は、Git プロバイダーを含むリポジトリのローカル クローンが推奨されますが、必須ではありません。 ローカル クローンを実行するには、Git プロバイダーのドキュメントを参照してください。
DBFS をdbx syncと共に使用する
ローカル開発マシンのターミナルまたは PowerShell から、Azure Databricks ワークスペース内の DBFS に同期するファイルが含まれているディレクトリに移動します。
次のように 、dbx sync コマンドを実行して、ローカル ディレクトリをワークスペース内の DBFS に同期します。 (現在のディレクトリを表す最後のドット (
.) を忘れないでください)。dbx sync dbfs --source .ヒント
別のソース ディレクトリを指定するには、ドット (
.) を別のパスに置き換えます。注
エラー
Error: No such command 'sync'が表示された場合は、dbxのインストールが古くなっている可能性があります。 これを解決するには、pip install --upgrade dbx==<version>またはpython -m pip install --upgrade dbx==versionを実行します。<version>は最新バージョンのdbxです。 このバージョン番号は、 dbx の PyPI Web ページにあります。pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==versiondbx syncは、現在のローカル ディレクトリ内のファイルと、ワークスペース内の次の DBFS パス内のファイルの同期を開始します。dbx syncは、Target base pathを印刷し、その後に DBFS パスを続けることでこれを確認します。次に例を示します。/tmp/users/<your-Databricks-username>/<local-directory-name>ヒント
別のユーザー名または DBFS パスを指定するには、
--userを実行するときに、それぞれ--destオプションとdbx syncオプションを指定します。必要に応じて、ローカル ファイルに変更を加えます。
Von Bedeutung
dbx syncの同期を続行するには、ターミナルまたは PowerShell を開いたままにする必要があります。 ターミナルまたは PowerShell を閉じると、dbx syncはファイルの変更の監視を停止し、同期を停止します。 ファイル変更の同期を再開するには、最初からこの手順を繰り返します。必要に応じて、ワークスペース内の DBFS の前のパスでファイルが変更されていることを確認します。
dbx sync と Databricks Git フォルダーを使用する
ローカル開発マシンのターミナルまたは PowerShell から、Git プロバイダーとのリポジトリの複製を含むルート ディレクトリに変更します。
Azure Databricks ワークスペースで、ローカルの複製されたリポジトリを同期する Databricks Git フォルダーの名前を指定します。 このリポジトリ名を見つけるには、ワークスペースのサイドバーで Git フォルダー をクリックします。
ローカル開発マシンで dbx 同期 コマンドを実行して、次のようにローカルの複製されたリポジトリをワークスペース内の Databricks Git フォルダーに同期し、
<your-repo-name>を Databricks Git フォルダー内のリポジトリの名前に置き換えます。 (現在のディレクトリを表す最後のドット (.) を忘れないでください)。dbx sync repo -d <your-repo-name> --source .ヒント
別のソース ディレクトリを指定するには、ドット (
.) を別のパスに置き換えます。注
エラー
Error: No such command 'sync'が表示された場合は、dbxのインストールが古くなっている可能性があります。 これを解決するには、pip install --upgrade dbx==<version>またはpython -m pip install --upgrade dbx==versionを実行します。<version>は最新バージョンのdbxです。 このバージョン番号は、 dbx の PyPI Web ページにあります。pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==versiondbx syncは、ローカルの複製されたリポジトリ内のファイルと、ワークスペース内の Databricks Git フォルダー内のファイルの同期を開始します。dbx syncこれを確認するには、Target base pathを印刷し、その後に Databricks Git フォルダーのパスを続けます。次に例を示します。/Repos/<your-Databricks-username>/<your-repo-name>ヒント
別のユーザー名またはリポジトリ名を指定するには、
--userを実行するときに、それぞれ--dest-repoオプションとdbx syncオプションを指定します。必要に応じて、ローカル ファイルに変更を加えます。
Von Bedeutung
dbx syncの同期を続行するには、ターミナルまたは PowerShell を開いたままにする必要があります。 ターミナルまたは PowerShell を閉じると、dbx syncはファイルの変更の監視を停止し、同期を停止します。 ファイル変更の同期を再開するには、最初からこの手順を繰り返します。必要に応じて、ワークスペースの Databricks Git フォルダーでファイルの変更を確認します。
その他のリソース
- dbx のドキュメント
- dbx 同期に関するドキュメント
- GitHub の databrickslabs/dbx リポジトリ
- dbx の制限事項