다음을 통해 공유


Livy API를 사용하여 Spark 작업 제출 및 실행

참고 항목

패브릭 데이터 엔지니어 Livy API는 미리 보기로 제공됩니다.

적용 대상:✅ Microsoft Fabric의 데이터 엔지니어링 및 데이터 과학

Lakehouse를 만들고, Microsoft Entra 앱 토큰으로 인증하고, 원격 클라이언트에서 Fabric Spark 컴퓨팅으로 일괄 처리 또는 세션 작업을 제출하여 Livy API for Fabric 데이터 엔지니어 시작합니다. Livy API 엔드포인트를 발견하고 작업을 제출한 후 결과를 모니터링합니다.

필수 조건

REST API 클라이언트 선택

다양한 프로그래밍 언어 또는 GUI 클라이언트를 사용하여 REST API 엔드포인트와 상호 작용할 수 있습니다. 이 글에서는 Visual Studio Code사용합니다. Python용 Jupyter Notebook, PySparkMSAL(Microsoft 인증 라이브러리)을 사용하여 Visual Studio Code를 구성해야 합니다.

Livy API 요청에 권한을 부여하는 방법

Livy API를 포함한 패브릭 API를 사용하려면 먼저 Microsoft Entra 애플리케이션을 만들고 토큰을 가져와야 합니다. Fabric에 대한 API 호출을 수행하려면 애플리케이션을 등록하고 적절하게 구성해야 합니다. 자세한 내용은 Microsoft ID 플랫폼을 사용하여 애플리케이션 등록을 참조하세요.

Livy 작업을 실행하는 데 필요한 많은 Microsoft Entra 범위 권한이 있습니다. 이 예제에서는 간단한 Spark 코드 + 스토리지 액세스 + SQL을 사용합니다.

  • Code.AccessAzureDataExplorer.All
  • Code.AccessAzureDataLake.All
  • Code.AccessAzureKeyvault.All
  • Code.AccessFabric.All
  • Code.AccessStorage.All
  • Item.ReadWrite.All
  • Lakehouse.Execute.All
  • Lakehouse.Read.All
  • Workspace.ReadWrite.All

Microsoft Entra 관리 센터의 Livy API 권한을 보여 주는 스크린샷

참고 항목

공개 미리 보기 중에 몇 가지 세부적인 범위를 추가할 예정이며, 이 방법을 사용하는 경우 이러한 추가 범위를 추가하면 Livy 앱이 중단됩니다. 이 목록은 추가 범위로 업데이트되므로 확인하세요.

일부 고객은 이전 목록보다 더 세부적인 권한을 원합니다. Item.ReadWrite.All을 제거하고 이러한 보다 세부적인 범위 권한으로 바꿀 수 있습니다.

  • Code.AccessAzureDataExplorer.All
  • Code.AccessAzureDataLake.All
  • Code.AccessAzureKeyvault.All
  • Code.AccessFabric.All
  • Code.AccessStorage.All
  • Lakehouse.Execute.All
  • Lakehouse.ReadWrite.All
  • Workspace.ReadWrite.All
  • Notebook.ReadWrite.All
  • SparkJobDefinition.ReadWrite.All
  • MLModel.ReadWrite.All
  • MLExperiment.ReadWrite.All
  • Dataset.ReadWrite.All

애플리케이션을 등록한 경우 애플리케이션(클라이언트) ID와 디렉터리(테넌트) ID가 모두 필요합니다.

Microsoft Entra 관리 센터의 Livy API 앱 개요를 보여 주는 스크린샷

Livy API를 호출하는 인증된 사용자는 API 및 데이터 원본 항목이 참가자 역할과 함께 있는 작업 영역 멤버여야 합니다. 자세한 내용은 사용자에게 작업 영역에 대한 액세스 권한 부여를 참조하세요.

Fabric Livy API 엔드포인트를 검색하는 방법

Livy 엔드포인트에 액세스하려면 Lakehouse 아티팩트가 필요합니다. Lakehouse가 만들어지면 설정 패널 내에 Livy API 엔드포인트를 배치할 수 있습니다.

Lakehouse 설정의 Livy API 엔드포인트를 보여 주는 스크린샷

Livy API의 엔드포인트는 다음 패턴을 따릅니다.

https://api.fabric.microsoft.com/v1/workspaces/ < >ws_id/레이크하우스/<lakehouse_id>/리비야피/버전/2023-12-01/

URL은 선택한 항목에 따라 세션< 또는 >일괄 처리<와 함께 >추가됩니다.

패브릭 환경과 통합

각 패브릭 작업 영역에 대해 기본 시작 풀이 프로비전되고, 모든 Spark 코드의 실행은 기본적으로 이 시작 풀을 사용합니다. 패브릭 환경을 사용하여 Livy API Spark 작업을 사용자 지정할 수 있습니다.

Livy API Swagger 파일 다운로드

Livy API의 전체 swagger 파일은 여기에서 확인할 수 있습니다.

Livy API 작업 제출

이제 Livy API 설정이 완료되었으므로 일괄 처리 또는 세션 작업을 제출하도록 선택할 수 있습니다.

요청 기록을 모니터링하는 방법

모니터링 허브를 사용하여 이전 Livy API 제출을 확인하고 제출 오류를 디버그할 수 있습니다.

모니터링 허브의 이전 Livy API 제출을 보여 주는 화면 캡처