다음을 통해 공유


Databricks Git 폴더 제한 및 참조

다음 섹션에서는 Databricks Git 폴더 및 Git 통합에 대한 제한을 지정합니다. 일반적인 내용은 리소스 제한을 참조하세요.

바로 이동:

Git 폴더에서 지원되는 Databricks 자산 유형에 대한 자세한 내용은 Git 폴더에서 지원되는 자산 유형을 참조하세요.

파일 및 리포지토리 제한

Azure Databricks는 리포지토리 크기에 제한을 적용하지 않습니다. 단,

  • 작업 분기는 1 GB로 제한됩니다.
  • Azure Databricks UI에서는 10MB보다 큰 파일을 볼 수 없습니다.
  • 개별 작업 영역 파일에는 별도의 크기 제한이 있습니다. 제한 사항을 참조하세요.
  • 로컬 분기는 원격 분기가 삭제된 후 최대 30일 동안 연결된 Git 폴더에 남아 있을 수 있습니다. 로컬 분기를 완전히 제거하려면 리포지토리를 삭제합니다.

Databricks는 총 작업 영역 자산 및 파일 수를 20,000 미만으로 유지하는 것이 좋습니다.

각 Git 작업은 2GB의 메모리와 4GB의 디스크 쓰기로 제한됩니다. 작업당 제한이 적용되므로 5GB 리포지토리 복제는 실패하지만 3GB 리포지토리를 복제하고 나중에 2GB를 추가하는 데 성공합니다.

리포지토리가 이러한 제한을 초과하는 경우 복제하는 동안 오류 또는 시간 초과가 발생할 수 있지만 백그라운드에서 작업이 여전히 완료될 수 있습니다.

더 큰 리포지토리를 사용하려면 스파스 체크 아웃 또는 Git CLI 명령을 사용해 보세요.

클러스터 종료 후 유지되지 않는 임시 파일을 작성하려면 .를 사용합니다 $TEMPDIR. 이렇게 하면 분기 크기 제한을 초과하지 않으며 작업 영역 파일 시스템의 CWD(작업 디렉터리)에 쓰는 것보다 더 나은 성능을 제공합니다. Azure Databricks에서 임시 파일을 어디에 작성해야 하나요?를 참조하세요.

삭제된 파일 복구

파일 복구 가능성은 작업에 따라 다릅니다. 일부 작업은 휴지통 폴더를 통해 복구할 수 있지만 다른 작업은 복구할 수 없습니다. 원격 분기로 이전에 커밋되고 푸시된 파일은 원격 리포지토리의 Git 커밋 기록을 사용하여 복원할 수 있습니다.

행동 파일을 복구할 수 있나요?
작업 영역 브라우저를 사용하여 파일 삭제 예, \휴지통 폴더에서\
Git 폴더 대화 상자를 사용하여 새 파일 삭제 예, \휴지통 폴더에서\
Git 폴더 대화 상자를 사용하여 수정된 파일 삭제 아니요, 파일이 사라졌습니다.
reset (하드) 커밋되지 않은 파일 수정 아니요, 파일 수정이 사라졌습니다.
reset 커밋되지 않은 새로 만든 파일에 대한 (하드) 아니요, 파일 수정이 사라졌습니다.
Git 폴더 대화 상자를 사용하여 분기 전환 예, 원격 Git 리포지토리에서
Git 폴더 대화 상자의 커밋 또는 푸시와 같은 기타 Git 작업 예, 원격 Git 리포지토리에서
PATCH Repos API에서 /repos/id를 업데이트하는 작업 예, 원격 Git 리포지토리에서

모노레포 지원

Databricks는 여러 프로젝트에서 수천 개의 파일이 있는 대규모 단일 조직 Git 리포지토리인 monorepos로 지원되는 Git 폴더를 만들지 않도록 권장합니다.

구성

이 섹션에서는 Git 폴더 스토리지, 서버 지원 및 일반 설정 질문에 대해 설명합니다.

리포지토리 콘텐츠 스토리지

Azure Databricks는 리포지토리 콘텐츠를 컨트롤 플레인의 디스크에 일시적으로 복제합니다. 컨트롤 플레인 데이터베이스는 주 작업 영역에 있는 것과 같은 Notebook 파일을 저장합니다. Notebook이 아닌 파일은 최대 30일 동안 디스크에 저장됩니다.

온-프레미스 및 자체 호스팅 Git 서버

Databricks Git 폴더는 서버에 인터넷에 액세스할 수 있는 경우 GitHub Enterprise, Bitbucket Server, Azure DevOps Server 및 GitLab 자체 관리형을 지원합니다. 온프레미스 통합을 위해 Git 폴더용 Git 프록시 서버를 참조하세요.

인터넷에 액세스할 수 없는 Bitbucket Server, GitHub Enterprise Server 또는 GitLab 자체 관리형 인스턴스와 통합하려면 Azure Databricks 계정 팀에 문의하세요.

지원되는 자산 유형

지원되는 아티팩트 형식에 대한 자세한 내용은 Git 폴더에서 지원되는 자산 유형을 참조하세요.

Git 폴더는 .gitignore 파일을 지원합니까?

예. Git이 파일을 추적하지 못하도록 하려면 파일 이름(확장명 포함)을 .gitignore 파일에 추가합니다. 하나를 만들거나 원격 리포지토리에서 복제된 기존 파일을 사용합니다.

.gitignore 는 추적되지 않은 파일에 대해서만 작동합니다. 이미 추적된 파일을 .gitignore에 추가해도 Git에서 추적을 중단하지 않습니다.

Git 하위 코드 지원

표준 Git 폴더는 Git 하위 모듈을 지원하지 않지만 Git CLI 액세스 권한이 있는 Git 폴더는 이를 사용할 수 있습니다. Git CLI 명령 사용(베타)을 참조하세요.

ADF(Azure Data Factory)가 Git 폴더를 지원하나요?

예.

원본 관리

이 섹션에서는 분기, 병합 및 Git 폴더가 Notebook 및 종속성을 처리하는 방법을 설명합니다.

노트북 대시보드 및 브랜치 변경

Azure Databricks 원본 형식의 노트북은 대시보드 정보를 저장하지 않습니다.

대시보드를 유지하려면 기본적으로 대시보드 및 시각화 정의를 지원하는 Notebook 형식 .ipynb 을 (Jupyter 형식)으로 변경합니다. 시각화 데이터를 보존하려면 출력을 포함하여 노트북을 커밋합니다.

IPYNB Notebook 출력 커밋 관리를 참조하세요.

Git 폴더는 분기 병합을 지원합니까?

예. Git 공급자를 통해 끌어오기 요청도 만들고 병합할 수도 있습니다.

브랜치 삭제

브랜치를 삭제하려면 Git 공급자에서 작업해야 합니다.

Python 종속성 우선 순위

Git 폴더의 Python 라이브러리가 다른 곳에 저장된 라이브러리보다 우선합니다. 예를 들어 Databricks 컴퓨팅에 라이브러리가 설치되고 이름이 같은 라이브러리가 Git 폴더에 있는 경우 Git 폴더 라이브러리를 가져옵니다. Python 라이브러리 우선 순위를 참조 하세요.

보안, 인증 및 토큰

이 섹션에서는 Git 공급자의 암호화, 토큰 스토리지 및 인증 문제에 대해 설명합니다.

Microsoft Entra ID에 대한 CAP(조건부 액세스 정책) 문제

다음과 같은 경우 리포지토리를 복제할 때 "액세스 거부" 오류가 발생할 수 있습니다.

  • Azure Databricks 작업 영역에서는 Microsoft Entra ID 인증을 통해 Azure DevOps를 사용합니다.
  • Azure DevOps에서 조건부 액세스 정책 및 Microsoft Entra ID 조건부 액세스 정책을 사용하도록 설정했습니다.

이 문제를 해결하려면 Azure Databricks IP 주소 또는 사용자의 CAP(조건부 액세스 정책)에 제외를 추가합니다.

자세한 내용은 조건부 액세스 정책을 참조하세요.

Microsoft Entra ID 토큰을 사용하는 허용 목록

Azure DevOps 인증에 Microsoft Entra ID를 사용하는 경우 기본 허용 목록은 Git URL을 다음으로 제한합니다.

  • dev.azure.com
  • visualstudio.com

자세한 내용은 허용 목록으로 원격 리포지토리 사용 제한을 참조하세요.

Git 폴더 암호화

Azure Databricks는 기본 키를 사용하여 Git 폴더 콘텐츠를 암호화합니다. 고객 관리형 키는 Git 자격 증명 암호화에만 지원됩니다.

GitHub 토큰 스토리지 및 액세스

  • Azure Databricks 컨트롤 플레인은 인증 토큰을 저장합니다. 직원은 감사된 임시 자격 증명을 통해서만 액세스할 수 있습니다.
  • Azure Databricks는 토큰 생성 및 삭제를 기록하지만 사용량은 기록하지 않습니다. Git 작업 로깅을 사용하면 Azure Databricks 애플리케이션의 토큰 사용량을 감사할 수 있습니다.
  • GitHub Enterprise는 토큰 사용량을 감사합니다. 다른 Git 서비스는 서버 감사를 제공할 수도 있습니다.

Git 폴더는 커밋의 GPG 서명을 지원합니까?

아니요.

Git 폴더는 SSH를 지원합니까?

아니요. Git 폴더는 HTTPS만 지원합니다.

Azure DevOps 테넌트 간 오류

별도의 테넌트에서 DevOps에 연결할 때 Unable to parse credentials from Azure Active Directory account이(가) 표시될 수 있습니다. Azure DevOps 프로젝트가 Azure Databricks와 다른 Microsoft Entra ID 테넌트인 경우 Azure DevOps 액세스 토큰을 사용합니다. 토큰을 사용하여 Azure DevOps 리포지토리에 연결을 참조하세요.

CI/CD 및 MLOps

이 섹션에서는 Git 작업이 Notebook 상태, MLflow 실험 및 작업 실행에 미치는 영향을 설명합니다.

수신 변경 사항이 노트 상태를 초기화합니다.

Git 작업으로 Notebook 소스 코드가 변경되면, 셀 출력, 주석, 버전 기록, 위젯을 포함한 Notebook 상태가 손실됩니다. 예를 들어, git pull는 Notebook 소스 코드를 변경하여 Databricks Git 폴더가 기존 Notebook을 덮어쓰게끔 해야 합니다. 또는 새 분기 만들기와 같은 git commitpush작업은 소스 코드에 영향을 주지 않으며 Notebook 상태를 유지합니다.

중요합니다

Databricks Runtime 14.x 이하 버전을 사용하는 Git 폴더에서는 MLflow 실험이 작동하지 않습니다.

Git 폴더의 MLflow 실험

MLflow 실험에는 작업 영역Notebook의 두 가지 유형이 있습니다. MLflow 실험을 사용하여 학습 실행 구성을 참조하세요.

  • 작업 영역 실험: Git 폴더에서 작업 영역 MLflow 실험을 만들 수 없습니다. MLflow 실행을 일반 작업 공간 폴더에서 만든 실험에 기록합니다. 다중 사용자 공동 작업의 경우 공유 작업 영역 폴더를 사용합니다.

  • Notebook 실험: Databricks Git 폴더에서 Notebook 실험을 만들 수 있습니다. 노트북을 소스 제어에 .ipynb 파일로 등록하면, MLflow는 자동으로 생성된 실험에 로그를 기록합니다. 소스 제어는 실험 또는 해당 실행을 체크 인하지 않습니다. Notebook 실험 만들기를 참조하세요.

MLflow 실험에서 데이터 손실 방지

원격 리포지토리의 소스 코드를 사용하여 Lakeflow Jobs를 통해 생성된 Notebook MLflow 실험은 임시 스토리지에 저장됩니다. 이러한 실험은 워크플로 실행 후 초기에 유지되지만 예약된 정리 중에는 삭제될 위험이 있습니다. Databricks에서는 작업 및 원격 Git 소스와 함께 작업 공간의 MLflow 실험을 사용하는 것을 권장합니다.

경고

노트북을 포함하지 않는 분기로 변경하면 관련된 MLflow 실험 데이터가 손실될 위험이 있습니다. 30일 이내에 이전 브랜치에 액세스하지 않으면 이 손실이 영구적이 됩니다.

30일 만료 전에 누락된 실험 데이터를 복구하려면 원래 전자 필기장 이름을 복원하고 전자 필기장을 열고 오른쪽 창에서 실험 아이콘 을 클릭합니다. 이렇게 하면 mlflow.get_experiment_by_name()가 트리거되어 실험을 복구하고 실행합니다. 30일 후에 Azure Databricks는 GDPR 준수를 위해 분리된 MLflow 실험을 제거합니다.

데이터 손실을 방지하려면 리포지토리에서 Notebook의 이름을 바꾸지 마세요. 전자 필기장 이름을 바꾸면 오른쪽 창에서 실험 아이콘을 즉시 클릭합니다.

Git 작업 중 작업 실행

Git 작업 중에 일부 Notebook은 업데이트될 수 있지만 다른 Notebook은 아직 업데이트되지 않아 예측할 수 없는 동작이 발생할 수 있습니다.

예를 들어, notebook Anotebook Z%run로 호출하고 있을 때 Git 작업 중에 작업이 시작되면, 해당 작업은 최신 notebook A와 함께 이전 notebook Z을 실행할 수 있습니다. 작업이 실패하거나 다른 커밋의 Notebook을 실행할 수 있습니다.

이를 방지하려면 작업 영역 경로 대신 Git 공급자를 원본으로 사용하도록 작업 작업을 구성합니다. 작업에서 Git 사용을 참조하세요.

리소스

Databricks 작업 영역 파일에 대한 세부 정보는 작업 영역 파일이란?을 참조하세요.