다음을 통해 공유


파이프라인 구성

이 문서에서는 작업 영역 UI를 사용하는 파이프라인에 대한 기본 구성을 설명합니다.

Databricks는 서버리스를 사용하여 새 파이프라인을 개발하는 것이 좋습니다. 서버리스 파이프라인에 대한 구성 지침은 서버리스 파이프라인 구성을 참조하세요.

이 문서의 구성 지침에서는 Unity 카탈로그를 사용합니다. 레거시 Hive 메타스토어를 사용하여 파이프라인을 구성하는 방법에 대한 지침은 레거시 Hive 메타스토어와 함께 Lakeflow Spark 선언적 파이프라인 사용을 참조하세요.

이 문서에서는 파이프라인의 현재 기본 게시 모드에 대한 기능을 설명합니다. 2025년 2월 5일 이전에 만든 파이프라인은 레거시 게시 모드 및 LIVE 가상 스키마를 사용할 수 있습니다. LIVE 스키마(레거시)를 참조하세요.

비고

UI에는 JSON에서 설정을 표시하고 편집하는 옵션이 있습니다. 대부분의 설정은 UI 또는 JSON 사양으로 구성할 수 있습니다. 일부 고급 옵션은 JSON 구성을 통해서만 사용할 수 있습니다.

JSON 구성 파일은 새 환경에 파이프라인을 배포하거나 CLI 또는 REST API사용할 때도 유용합니다.

파이프라인 JSON 구성 설정에 대한 전체 참조는 파이프라인 구성을 참조하세요.

새 파이프라인 구성

새 파이프라인을 구성하려면 다음을 수행합니다.

  1. 사이드바 위쪽에서 더하기 아이콘을 클릭합니다.새로 만들기를 선택한 다음 파이프라인 아이콘을 선택합니다.ETL 파이프라인.

  2. 맨 위에서 파이프라인에 고유한 이름을 지정합니다.

  3. 이름 아래에서 선택한 기본 카탈로그 및 스키마를 볼 수 있습니다. 파이프라인에 다른 기본값을 제공하도록 변경합니다.

    기본 카탈로그 및 기본 스키마는 코드에서 카탈로그 또는 스키마 를 사용하여 데이터 세트를 한정하지 않을 때 데이터 세트를 읽거나 쓰는 위치입니다. 자세한 내용은 Azure Databricks의 데이터베이스 개체 를 참조하세요.

  4. 원하는 옵션을 선택하여 파이프라인을 만듭니다.

    • SQL에서 샘플 코드로 시작하여 SQL의 샘플 코드를 포함하여 새 파이프라인 및 폴더 구조를 만듭니다.
    • Python에서 샘플 코드로 시작하여 Python의 샘플 코드를 포함하여 새 파이프라인 및 폴더 구조를 만듭니다.
    • 단일 변환으로 시작하여 새 빈 코드 파일을 사용하여 새 파이프라인 및 폴더 구조를 만듭니다.
    • 기존 자산을 추가하여 작업 영역의 기존 코드 파일과 연결할 수 있는 파이프라인을 만듭니다.
    • 원본 제어 프로젝트를 만들어 새 Databricks 자산 번들 프로젝트를 사용하여 파이프라인을 만들거나 기존 번들에 파이프라인을 추가합니다.

    ETL 파이프라인에 SQL 및 Python 소스 코드 파일을 둘 다 사용할 수 있습니다. 새 파이프라인을 만들고 샘플 코드에 대한 언어를 선택할 때 언어는 기본적으로 파이프라인에 포함된 샘플 코드에만 해당합니다.

  5. 선택하면 새로 만든 파이프라인으로 리디렉션됩니다.

    ETL 파이프라인은 다음과 같은 기본 설정으로 만들어집니다.

    • Unity 카탈로그
    • 현재 채널
    • 서버리스 컴퓨팅
    • 개발 모드 해제. 이 설정은 파이프라인의 예약된 실행에만 영향을 줍니다. 편집기에서 파이프라인을 실행하는 것은 항상 개발 모드를 사용하는 기본값입니다.

    이 구성은 개발 및 테스트를 비롯한 많은 사용 사례에 권장되며 일정에 따라 실행되어야 하는 프로덕션 워크로드에 적합합니다. 파이프라인 예약에 대한 자세한 내용은 작업을 위한 파이프라인 작업을 참조하세요.

    파이프라인 도구 모음에서 이러한 설정을 조정할 수 있습니다.

또는 작업 영역 브라우저에서 ETL 파이프라인을 만들 수 있습니다.

  1. 왼쪽 패널에서 작업 영역을 클릭합니다.
  2. Git 폴더를 포함하여 모든 폴더를 선택합니다.
  3. 오른쪽 위 모서리에서 만들기 를 클릭하고 ETL 파이프라인을 클릭합니다.

작업 및 파이프라인 페이지에서 ETL 파이프라인을 만들 수도 있습니다.

  1. 작업 영역에서 워크플로 아이콘을 클릭합니다.사이드바의 작업 및 파이프라인입니다.
  2. 새로 만들기에서 ETL 파이프라인을 클릭합니다.

컴퓨팅 구성 옵션

Databricks는 항상 고급 자동 크기 조정사용하는 것이 좋습니다. 다른 컴퓨팅 구성의 기본값은 많은 파이프라인에서 잘 작동합니다.

서버리스 파이프라인은 컴퓨팅 구성 옵션을 제거합니다. 서버리스 파이프라인에 대한 구성 지침은 서버리스 파이프라인 구성을 참조하세요.

다음 설정을 사용하여 컴퓨팅 구성을 사용자 지정합니다.

  • 클러스터 태그를 사용하여 파이프라인과 관련된 비용을 모니터링할 수 있습니다. 컴퓨팅 태그 구성을 참조하세요.
  • 인스턴스 유형 구성하여 파이프라인을 실행하는 데 사용되는 가상 머신의 유형을 지정합니다. 파이프라인 을 실행하려면 인스턴스 유형을 선택,을 참조하세요.
    • 파이프라인에 구성된 워크로드에 최적화된 작업자 유형 선택합니다.
    • 선택적으로 작업자 유형과 다른 드라이버 유형 선택할 수 있습니다. 이는 대규모 작업자 유형 및 낮은 드라이버 컴퓨팅 사용률이 있는 파이프라인의 비용을 줄이거나 많은 소규모 작업자가 있는 워크로드에서 메모리 부족 문제를 방지하기 위해 더 큰 드라이버 유형을 선택하는 데 유용할 수 있습니다.

실행 사용자 설정

실행 사용자를 사용하면 파이프라인이 실행하는 데 사용하는 ID와 파이프라인이 만들거나 업데이트하는 테이블의 소유권을 변경할 수 있습니다. 이는 파이프라인을 만든 원래 사용자가 비활성화된 경우(예: 회사를 떠난 경우) 경우에 유용합니다. 이러한 경우 파이프라인이 작동을 중지할 수 있으며 게시된 테이블에 다른 사용자가 액세스할 수 없게 될 수 있습니다. 서비스 주체와 같은 다른 ID로 실행되도록 파이프라인을 업데이트하고 게시된 테이블의 소유권을 다시 할당하면 액세스를 복원하고 파이프라인이 계속 작동하도록 할 수 있습니다. 파이프라인을 서비스 주체로 실행하는 것은 개별 사용자에 연결되지 않으므로 자동화된 워크로드에 대해 더 안전하고 안정적이며 신뢰할 수 있기 때문에 모범 사례로 간주됩니다.

필요한 권한

변경한 사용자의 경우:

  • 파이프라인에 대한 권한 CAN_MANAGE
  • 서비스 주체에 대한 역할 CAN_USE(서비스 주체로 실행을 설정하는 경우)

실행 사용자 또는 서비스 주체의 경우:

  • 작업 영역 액세스:

    • 작업 영역 내에서 작동할 작업 영역 액세스 권한
    • 파이프라인에서 사용하는 클러스터 정책에 대한 사용 권한을 사용할 수 있습니다.
    • 작업 영역의 컴퓨팅 만들기 권한
  • 소스 코드 액세스:

    • 파이프라인 소스 코드에 포함된 모든 Notebook에 대한 읽기 권한
    • 파이프라인에서 사용하는 경우 작업 영역 파일에 대한 권한을 읽을 수 있습니다.
  • Unity 카탈로그 사용 권한(Unity 카탈로그를 사용하는 파이프라인의 경우):

    • USE CATALOG 대상 카탈로그에서
    • USE SCHEMA 대상 CREATE TABLE 스키마에서
    • MODIFY 파이프라인이 업데이트하는 기존 테이블에 대한 사용 권한
    • CREATE SCHEMA 파이프라인이 새 스키마를 만드는 경우 사용 권한
  • 레거시 Hive 메타스토어 권한(Hive metastore 를 사용하는 파이프라인의 경우):

    • SELECT 대상 데이터베이스 및 MODIFY 테이블에 대한 사용 권한
  • 추가 클라우드 스토리지 액세스 (해당하는 경우):

    • 원본 스토리지 위치에서 읽을 수 있는 권한
    • 대상 스토리지 위치에 쓸 수 있는 권한

실행 사용자를 설정하는 방법

파이프라인 모니터링 페이지 또는 파이프라인 편집기의 파이프라인 설정을 통해 run-as 사용자를 설정할 수 있습니다. 파이프라인 모니터링 페이지에서 사용자를 변경하려면 다음을 수행합니다.

  1. 작업 및 파이프라인을 클릭하여 파이프라인 목록을 열고 편집할 파이프라인의 이름을 선택합니다.
  2. pipline 모니터링 페이지에서 설정을 클릭합니다.
  3. 파이프라인 설정 사이드바에서 연필 아이콘을 클릭합니다. 실행 옆에 편집합니다.
  4. 편집 위젯에서 다음 옵션 중 하나를 선택합니다.
    • 사용자 고유의 사용자 계정
    • CAN_USE 권한이 있는 서비스 주체
  5. 저장을 클릭하여 변경 내용을 적용합니다.

실행 사용자를 성공적으로 업데이트하는 경우:

  • 파이프라인 ID는 향후 모든 실행에 새 사용자 또는 서비스 주체를 사용하도록 변경됩니다.
  • Unity 카탈로그 파이프라인에서 파이프라인에서 게시한 테이블의 소유자가 새 실행 ID와 일치하도록 업데이트됩니다.
  • 향후 파이프라인 업데이트는 새 실행 ID의 권한 및 자격 증명을 사용합니다.
  • 연속 파이프라인은 새 ID를 사용하여 자동으로 다시 시작됩니다. 트리거된 파이프라인은 자동으로 다시 시작되지 않으며 실행 변경으로 인해 활성 업데이트가 중단될 수 있습니다.

비고

실행 업데이트가 실패하면 실패 이유를 설명하는 오류 메시지가 표시됩니다. 일반적인 문제에는 서비스 주체에 대한 권한 부족이 포함됩니다.

기타 구성 고려 사항

파이프라인에도 다음 구성 옵션을 사용할 수 있습니다.

제품 버전 선택

파이프라인 요구 사항에 가장 적합한 기능을 갖춘 Lakeflow Spark 선언적 파이프라인 제품 버전을 선택합니다. 다음 제품 버전을 사용할 수 있습니다.

  • Core 스트리밍 수집 워크로드를 실행하는 데 사용. 파이프라인에 Core CDC(변경 데이터 캡처) 또는 Lakeflow Spark 선언적 파이프라인 예상과 같은 고급 기능이 필요하지 않은 경우 버전을 선택합니다.
  • Pro에서 스트리밍 수집 및 CDC 워크로드를 실행합니다. Pro 제품 버전은 모든 Core 기능과 원본 데이터의 변경 내용에 따라 테이블을 업데이트해야 하는 워크로드를 지원합니다.
  • Advanced에서 스트리밍 수집 워크로드, CDC 워크로드 및 성능 기준이 요구되는 워크로드를 실행합니다. Advanced 제품 버전은 CorePro 버전의 기능을 지원하며 Lakeflow Spark 선언형 파이프라인 기대치에 따라 데이터 품질 제약 조건을 포함합니다.

파이프라인을 만들거나 편집할 때 제품 버전을 선택할 수 있습니다. 각 파이프라인에 대해 다른 버전을 선택할 수 있습니다. Lakeflow Spark 선언적 파이프라인 제품 페이지를 참조하세요.

참고: 파이프라인에 선택한 제품 버전에서 지원되지 않는 기능(예: 예상)이 포함된 경우 오류 이유를 설명하는 오류 메시지가 표시됩니다. 그런 다음 파이프라인을 편집하여 적절한 버전을 선택할 수 있습니다.

소스 코드 구성

Lakeflow 파이프라인 편집기에서 자산 브라우저를 사용하여 파이프라인을 정의하는 소스 코드를 구성할 수 있습니다. 파이프라인 소스 코드는 작업 영역 파일에 저장된 SQL 또는 Python 스크립트에 정의됩니다. 파이프라인을 만들거나 편집할 때 하나 이상의 파일을 추가할 수 있습니다. 기본적으로 파이프라인 소스 코드는 파이프라인의 루트 폴더에 있는 폴더에 있습니다 transformations .

Lakeflow Spark 선언적 파이프라인은 데이터 세트 종속성을 자동으로 분석하여 파이프라인에 대한 처리 그래프를 생성하므로 어떤 순서로든 소스 코드 자산을 추가할 수 있습니다.

Lakeflow 파이프라인 편집기 사용에 대한 자세한 내용은 Lakeflow 파이프라인 편집기를 사용하여 ETL 파이프라인 개발 및 디버그를 참조하세요.

Python을 사용하는 파이프라인에 대한 외부 종속성 관리

파이프라인은 Python 패키지 및 라이브러리와 같은 파이프라인에서 외부 종속성 사용을 지원합니다. 종속성 사용에 대한 옵션 및 권장 사항에 대해 알아보려면 파이프라인에 대한 Python 종속성 관리를 참조하세요.

Azure Databricks 작업 영역에 저장된 Python 모듈 사용

파이프라인 소스 코드 파일에서 Python 코드를 구현하는 것 외에도 Databricks Git 폴더 또는 작업 영역 파일을 사용하여 코드를 Python 모듈로 저장할 수 있습니다. 코드를 Python 모듈로 저장하는 것은 동일한 파이프라인의 여러 파이프라인 또는 Notebook에서 사용하려는 일반적인 기능이 있는 경우에 특히 유용합니다. 파이프라인에서 Python 모듈을 사용하는 방법을 알아보려면 Git 폴더 또는 작업 영역 파일에서 Python 모듈 가져오기참조하세요.