Azure Databricks 작업을 실행하여 데이터 변환
Microsoft Fabric용 데이터 팩터리의 Azure Databricks 작업을 사용하면 다음 Azure Databricks 작업을 오케스트레이션할 수 있습니다.
- Notebook
- Jar
- Python
이 문서에서는 데이터 팩터리 인터페이스를 사용하여 Azure Databricks 작업을 만드는 방법을 설명하는 단계별 자세한 설명을 제공합니다.
필수 조건
시작하려면 다음 필수 조건을 완료해야 합니다.
- 활성 구독이 있는 테넌트 계정. 체험 계정을 만듭니다.
- 작업 영역이 만들어집니다.
Azure Databricks 작업 구성
파이프라인에서 Azure Databricks 작업을 사용하려면 다음 단계를 완료합니다.
연결 구성
작업 영역에서 새 파이프라인을 만듭니다.
파이프라인 작업 추가를 클릭하고 Azure Databricks를 검색합니다.
또는 파이프라인 작업 창에서 Azure Databricks를 검색하고 이를 선택하여 파이프라인 캔버스에 추가할 수 있습니다.
아직 선택되지 않은 경우 캔버스에서 새 Azure Databricks 작업을 선택합니다.
일반 설정 탭을 구성하려면 일반 설정 지침을 참조하세요.
클러스터 구성
클러스터 탭을 선택합니다. 그런 다음 기존 항목을 선택하거나 새 Azure Databricks 연결을 만든 다음 새 작업 클러스터, 기존 대화형 클러스터 또는 기존 인스턴스 풀을 선택할 수 있습니다.
클러스터에 대해 선택한 항목에 따라 표시된 대로 해당 필드를 채웁니다.
- 새 작업 클러스터 및 기존 인스턴스 풀에서 작업자 수를 구성하고 스폿 인스턴스를 사용하도록 설정할 수도 있습니다.
연결하려는 클러스터에 필요한 경우 클러스터 정책, Spark 구성, Spark 환경 변수 및 사용자 지정 태그와 같은 추가 클러스터 설정을 지정할 수도 있습니다. Databricks init 스크립트 및 클러스터 로그 대상 경로도 추가 클러스터 설정 아래에 추가할 수 있습니다.
참고 항목
Azure Data Factory Azure Databricks 연결된 서비스에서 지원되는 모든 고급 클러스터 속성 및 동적 식은 이제 UI의 '추가 클러스터 구성' 섹션에 있는 Microsoft Fabric의 Azure Databricks 작업에서도 지원됩니다. 이제 이러한 속성이 작업 UI에 포함되기 때문에 Azure Data Factory Azure Databricks 연결된 서비스에서 고급 JSON 사양이 없이도 식(동적 콘텐츠)과 함께 쉽게 사용할 수 있습니다.
이제 Azure Databricks 작업은 클러스터 정책 및 Unity 카탈로그 지원도 지원합니다.
- 고급 설정에서는 허용되는 클러스터 구성을 지정할 수 있도록 클러스터 정책을 선택할 수 있는 옵션이 제공됩니다.
- 또한 고급 설정에 보안을 강화하도록 Unity 카탈로그 액세스 모드를 구성하는 옵션이 제공됩니다. 사용 가능한 액세스 모드 유형은 다음과 같습니다.
- 단일 사용자 액세스 모드 이 모드는 각 클러스터를 단일 사용자가 사용하는 시나리오를 위해 설계되었습니다. 이를 통해 클러스터 내의 데이터 액세스가 해당 사용자로만 제한됩니다. 이 모드는 격리 및 개별 데이터 처리가 필요한 작업에 유용합니다.
- 공유 액세스 모드 이 모드에서는 여러 사용자가 동일한 클러스터에 액세스할 수 있습니다. Unity 카탈로그의 데이터 거버넌스와 레거시 테이블 ACL(액세스 제어 목록)을 결합합니다. 이 모드에서는 거버넌스 및 보안 프로토콜을 유지하면서 공동 작업 데이터 액세스가 가능합니다. 그러나 Databricks Runtime ML, Spark 제출 작업, 특정 Spark API 및 UDF를 지원하지 않는 등 몇 가지 제한 사항이 있습니다.
- 액세스 불가 모드 이 모드는 Unity 카탈로그와의 상호 작용을 사용하지 않도록 설정합니다. 즉, 클러스터는 Unity 카탈로그에서 관리하는 데이터에 액세스할 수 없습니다. 이 모드는 Unity 카탈로그의 거버넌스 기능이 필요하지 않은 워크로드에 유용합니다.
설정 구성
설정 탭을 선택하면 오케스트레이션하려는 Azure Databricks 형식의 3가지 옵션 중에서 선택할 수 있습니다.
Azure Databricks 작업에서 Notebook 형식 오케스트레이션:
설정 탭에서 Notebook 라디오 단추를 선택하여 Notebook을 실행할 수 있습니다. Azure Databricks에서 실행할 Notebook 경로, Notebook에 전달할 선택적 기본 매개 변수 및 작업을 실행하기 위해 클러스터에 설치할 추가 라이브러리를 지정해야 합니다.
Azure Databricks 작업에서 Jar 형식 오케스트레이션:
설정 탭에서 Jar 라디오 단추를 선택하여 Jar를 실행할 수 있습니다. Azure Databricks에서 실행할 클래스 이름, Jar에 전달할 선택적 기본 매개 변수 및 작업을 실행하기 위해 클러스터에 설치할 추가 라이브러리를 지정해야 합니다.
Azure Databricks 작업에서 Python 형식 오케스트레이션:
설정 탭에서 Python 라디오 단추를 선택하여 Python 파일을 실행할 수 있습니다. 실행할 Python 파일의 Azure Databricks 내 경로, 전달할 선택적 기본 매개 변수, 작업을 실행하기 위해 클러스터에 설치할 추가 라이브러리를 지정해야 합니다.
Azure Databricks 작업에 지원되는 라이브러리
위의 Databricks 작업 정의에서 jar, egg, whl, maven, pypi, cran 라이브러리 유형을 지정합니다.
자세한 내용은 라이브러리 유형에 대한 Databricks 설명서를 참조하세요.
Azure Databricks 작업과 파이프라인 간의 매개 변수 전달
Databricks 작업의 baseParameters 속성을 사용하여 Notebook에 매개 변수를 전달할 수 있습니다.
경우에 따라 Notebook에서 서비스로 특정 값을 다시 전달해야 할 수 있습니다. 이 값은 서비스에서 제어 흐름(조건부 검사)에 사용되거나 다운스트림 작업에서 사용될 수 있습니다(크기 제한은 2MB).
예를 들어 Notebook에서 dbutils.notebook.exit(“returnValue”)를 호출하면 해당하는 “returnValue”가 서비스에 반환됩니다.
@{activity('databricks activity name').output.runOutput}
과 같은 식을 사용하여 서비스에서 출력을 사용할 수 있습니다.
파이프라인 저장 및 실행 또는 예약
파이프라인에 필요한 다른 작업을 구성한 후 파이프라인 편집기 맨 위에 있는 홈 탭으로 전환하고 저장 버튼을 선택하여 파이프라인을 저장합니다. 실행을 선택하여 직접 실행하거나 예약을 선택해 일정을 잡습니다. 여기에서 실행 기록을 보거나 다른 설정을 구성할 수도 있습니다.