dbx를 사용하여 로컬 파일을 원격 작업 영역과 실시간으로 동기화
중요하다
이 설명서는 사용 중지되었으며 업데이트되지 않을 수 있습니다.
Databricks는 dbx sync
대신 명령을 통해 dbx sync
유사한 기능을 포함하는 databricks sync
사용하는 것이 좋습니다.
Visual Studio Code /Users
) 파일 및 Databricks Git 폴더(/Repos
)에만 동기화하도록 지원합니다.
메모
이 문서에서는 Databricks Labs의 dbx
에 대해 설명하며, 이는 as-is 제공되지만 Databricks의 고객 기술 지원 채널을 통해 지원되지 않습니다. 질문 및 기능 요청은 GitHub의 databrickslabs/dbx 리포지토리의 문제 페이지를 통해 전달될 수 있습니다.
Azure Databricks 작업 영역의 해당 파일과 로컬 개발 머신의 파일 변경 사항을 실시간으로 동기화하려면 Databricks Labs의 dbx를 사용할 수 있습니다. 이러한 작업 영역 파일은
dbx
(dbx sync
라고도 함)와의 실시간 파일 동기화는 신속한 코드 개발 시나리오에서 유용합니다. 예를 들어 구문 강조 표시, 스마트 코드 완성, 코드 린팅, 테스트 및 디버깅과 같은 생산성 기능에 로컬 IDE(통합 개발 환경)를 사용할 수 있습니다. 그런 다음 작업 영역으로 즉시 이동하여 업데이트된 코드를 실행할 수 있습니다.
dbx sync
개발 워크플로
dbx sync
대한 두 가지 개발 워크플로가 있습니다. 하나는 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 프로바이더로 업데이트된 파일을 주기적으로 푸시하세요.
중요하다
dbx sync
로컬 개발 컴퓨터에서 원격 작업 영역으로 파일 변경 내용의 단방향 실시간 동기화만 수행합니다. 따라서 Databricks는 여러분의 Azure Databricks 작업 영역에서 dbx sync
에 의해 모니터링되는 파일에 대한 변경을 시작하지 않기를 권장합니다. 이러한 작업 영역 시작 파일을 변경해야 하는 경우 다음을 수행해야 합니다.
- 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
실행합니다.dbx
을(를) Python 패키지 인덱스(PyPI)에서 설치하려면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
메모
에 대한 자세한 내용은 Databricks Labs의 dbx와 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
는 인증 자격 증명을 각각 이 두 위치에서 찾습니다.dbx
찾은 일치하는 자격 증명의 첫 번째 집합만 사용합니다.메모
.databrickscfg
파일을 사용하는 경우,dbx sync
은 기본적으로 이 파일에서DEFAULT
라는 이름의 구성 프로필을 찾습니다. 다른 프로필을 지정하려면 이 문서의 뒷부분에 있는--profile
명령을 실행할 때dbx sync
옵션을 사용합니다.dbx
인증에 .netrc 파일의 사용을 지원하지 않습니다.-
Databricks Git 폴더에서
dbx sync
사용하려는 경우 필수는 아니지만 Git 공급자와 함께 리포지토리의 로컬 복제본을 사용하는 것이 좋습니다. 로컬 클론을 수행하려면 Git 공급자의 설명서를 참조하세요.
dbx sync
을(를) 활용해서 DBFS를 사용하세요.
로컬 개발 머신의 터미널 또는 PowerShell에서 Azure Databricks 작업 영역의 DBFS에 동기화하려는 파일이 포함된 디렉터리로 변경합니다.
다음과 같이 dbx 동기화 명령을 실행하여 로컬 디렉터리를 작업 영역의 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 웹 페이지에서 찾을 수 있습니다. pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
dbx sync
현재 로컬 디렉터리의 파일을 작업 영역의 다음 DBFS 경로에 있는 파일과 동기화하기 시작합니다.dbx sync
Target base path
인쇄한 다음 DBFS 경로를 인쇄하여 이를 확인합니다. 예를 들면 다음과 같습니다./tmp/users/<your-Databricks-username>/<local-directory-name>
팁
다른 사용자 이름 또는 DBFS 경로를 지정하려면
--user
실행할 때 각각--dest
및dbx sync
옵션을 지정합니다.필요에 따라 로컬 파일을 변경합니다.
중요하다
동기화를 계속하려면
dbx sync
터미널 또는 PowerShell을 열어 두어야 합니다. 터미널 또는 PowerShell을 닫으면dbx sync
파일 변경에 대한 감시를 중지하고 동기화를 중지합니다. 파일 변경 동기화를 다시 시작하려면 처음부터 이 절차를 반복합니다.필요에 따라 워크스페이스의 DBFS에서 앞의 경로에서 파일 변경 사항을 확인합니다.
Databricks Git 폴더를 dbx sync
와 함께 사용
로컬 개발 컴퓨터의 터미널 또는 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 웹 페이지에서 찾을 수 있습니다. pip install --upgrade dbx==<version> # Or... python -m pip install --upgrade dbx==version
dbx sync
로컬 복제된 리포지토리의 파일을 작업 영역의 Databricks Git 폴더에 있는 파일과 동기화하기 시작합니다.dbx sync
은Target base path
을 인쇄한 후 Databricks Git 폴더 경로를 출력하여 이를 확인합니다. 예를 들어:/Repos/<your-Databricks-username>/<your-repo-name>
팁
다른 사용자 이름 또는 리포지토리 이름을 지정하려면
--user
실행할 때 각각--dest-repo
및dbx sync
옵션을 지정합니다.필요에 따라 로컬 파일을 변경합니다.
중요하다
동기화를 계속하려면
dbx sync
터미널 또는 PowerShell을 열어 두어야 합니다. 터미널 또는 PowerShell을 닫으면dbx sync
파일 변경에 대한 감시를 중지하고 동기화를 중지합니다. 파일 변경 동기화를 다시 시작하려면 처음부터 이 절차를 반복합니다.필요에 따라 작업 영역의 Databricks Git 폴더에서 파일 변경 내용을 확인합니다.
추가 리소스
- dbx 설명서
- dbx 동기화 설명서
- GitHub에서 databrickslabs/dbx 리포지토리
- dbx 제한 사항