Apache Spark 애플리케이션 세부 모니터링

Microsoft Fabric을 사용하면 Apache Spark를 사용하여 작업 영역에서 Notebook, 작업 및 기타 종류의 애플리케이션을 실행할 수 있습니다. 이 문서에서는 Apache Spark 애플리케이션을 모니터링하여 작업의 최근 실행 상태, 문제 및 진행 상황을 감시할 수 있도록 하는 방법을 설명합니다.

Apache Spark 애플리케이션 보기

Spark 작업 정의에서 모든 Apache Spark 애플리케이션을 볼 수 있습니다. 또는 Notebook 항목 상황에 맞는 메뉴에 최근 실행 옵션인> 최근 실행 표시됩니다.

Screenshot showing Recent runs list and details.

애플리케이션 목록에서 보려는 애플리케이션의 이름을 선택할 수 있습니다. 애플리케이션 세부 정보 페이지에서 애플리케이션 세부 정보를 볼 수 있습니다.

Apache Spark 애플리케이션 상태 모니터링

Notebook 또는 Spark 작업 정의의 최근 실행 페이지를 열고 Apache 애플리케이션의 상태 볼 수 있습니다.

  • Success

Screenshot showing where Succeeded status appears.

  • 대기 중

Screenshot showing where Queued status appears.

  • 중지됨

Screenshot showing Stopped status.

  • Canceled

Screenshot showing where the canceled status is displayed.

  • 실패

Screenshot showing where the Failed status appears.

작업

Spark 작업 정의 또는 Notebook 항목 상황에 맞는 메뉴에서 Apache Spark 애플리케이션 작업을 열면 최근 실행 옵션 ->최근 실행 -> 최근 실행 페이지에서 작업 선택 옵션이 표시됩니다.

Apache Spark 애플리케이션 모니터링 세부 정보 페이지에서 작업 실행 목록이 작업 탭에 표시됩니다. 여기에서 작업 ID, 설명, 상태, 단계, 작업, 기간, 처리됨, 데이터 읽기, 데이터 작성코드 조각을 비롯한 각 작업의 세부 정보를 볼 수 있습니다.

  • 작업 ID를 클릭하면 작업을 확장/축소할 수 있습니다.
  • 작업 설명을 클릭하면 spark UI에서 작업 또는 스테이지 페이지로 이동할 수 있습니다.
  • 작업 코드 조각을 클릭하면 이 작업과 관련된 코드를 검사 복사할 수 있습니다.

Screenshot showing the jobs.

리소스(미리 보기)

실행기 사용 그래프는 Spark 작업 실행기 및 리소스 사용량의 할당을 시각적으로 표시합니다. 현재 spark 3.4 이상의 런타임 정보만 이 기능을 표시합니다. 리소스(미리 보기)를 선택한 다음 실행기 사용량에 대한 네 가지 형식 곡선이 초안으로 작성됩니다(실행, 유휴, 할당됨, 최대 인스턴스 포함).

Screenshot showing the monitoring resource usage.

  • Allocated의 경우 Spark 애플리케이션을 실행하는 동안 할당되는 핵심 상황을 나타냅니다.

  • 최대 인스턴스의 경우 Spark 애플리케이션에 할당된 최대 코어 수를 나타냅니다.

  • 실행의 경우 Spark 애플리케이션이 실행 중일 때 사용하는 실제 코어 수를 나타냅니다. Spark 애플리케이션이 실행되는 동안 특정 시점을 클릭합니다. 그래프 아래쪽에서 실행 중인 실행기 코어 할당 세부 정보를 볼 수 있습니다.

    Screenshot showing the running executor core allocation details.

  • 유휴 상태의 경우 Spark 애플리케이션이 실행되는 동안 사용되지 않는 코어의 수입니다.

경우에 따라 태스크 수가 실행기 코어의 용량을 초과할 수 있는 경우도 있습니다(예: 태스크 번호 > 총 실행기 코어 수 / spark.task.cpus). 실행 중인 것으로 표시된 작업과 실행기 코어에서 실제로 실행 중인 작업 간에 시간 차이가 있기 때문에 이는 예상대로입니다. 따라서 일부 작업은 실행 중으로 표시될 수 있지만 코어에서는 실행되지 않습니다.

색 아이콘을 선택하여 모든 그래프에서 해당 콘텐츠를 선택하거나 선택 취소합니다.

Screenshot showing the graph select chart

요약 패널

Apache Spark 애플리케이션 모니터링 페이지에서 [속성] 단추를 클릭하여 요약 패널을 열거나 축소합니다. 세부 정보에서 이 애플리케이션에 대한 세부 정보를 볼 수 있습니다.

  • 이 Spark 애플리케이션의 상태입니다.
  • 이 Spark 애플리케이션의 ID입니다.
  • 총 기간입니다.
  • 이 Spark 애플리케이션에 대한 실행 기간입니다.
  • 이 Spark 애플리케이션에 대한 대기 기간입니다.
  • Livy ID
  • 이 Spark 애플리케이션에 대한 제출자입니다.
  • 이 Spark 애플리케이션에 대한 시간을 제출합니다.
  • 실행기 수입니다.

Screenshot showing the summary for spark application.

로그

로그 탭의 경우 왼쪽 패널에서 다른 옵션이 선택된 Livy, Prelaunch, 드라이버 로그의 전체 로그를 볼 수 있습니다. 또한 키워드(keyword) 검색하여 필요한 로그 정보를 직접 검색하고 로그 상태 필터링하여 로그를 볼 수 있습니다. 로그 다운로드를 클릭하여 로그 정보를 로컬로 다운로드합니다.

작업의 상태 큐에 대기하고 클러스터를 만들지 못하는 등의 로그를 사용할 수 없는 경우가 있습니다.

라이브 로그는 앱 제출에 실패한 경우에만 사용할 수 있으며 드라이버 로그도 제공됩니다.

Screenshot showing the logs for spark application.

데이터

데이터 탭의 경우 클립보드에서 데이터 목록을 복사하고, 데이터 목록과 단일 데이터를 다운로드하고, 각 데이터에 대한 속성을 검사 수 있습니다.

  • 왼쪽 패널을 확장하거나 축소할 수 있습니다.
  • 입력 및 출력 파일의 이름, 읽기 형식, 크기, 원본 및 경로가 이 목록에 표시됩니다.
  • 입력 및 출력의 파일을 다운로드하고, 경로를 복사하고, 속성을 볼 수 있습니다.

Screenshot showing the data for spark application.

관련 항목 탭을 사용하면 Notebook, Spark 작업 정의 및/또는 파이프라인을 포함하여 Apache Spark 애플리케이션과 연결된 항목을 찾아 볼 수 있습니다. 관련 항목 페이지에는 Notebook을 실행할 때 코드 및 매개 변수 값의 스냅샷 표시됩니다. 또한 Spark 작업 정의 제출 시 모든 설정 및 매개 변수의 스냅샷 보여 줍니다. Apache Spark 애플리케이션이 파이프라인과 연결된 경우 관련 항목 페이지에는 해당 파이프라인 및 Spark 작업도 표시됩니다.

관련 항목 화면에서 다음을 수행할 수 있습니다.

  • 계층 트리에서 관련 항목을 찾아 탐색합니다.
  • 각 항목이 다른 작업을 수행하려면 '추가 작업 목록' 줄임표 아이콘을 클릭합니다.
  • 스냅샷 항목을 클릭하여 콘텐츠를 봅니다.
  • 이동 경로 탐색을 확인하여 선택한 항목에서 루트로의 경로를 확인합니다.

Screenshot showing the related items for spark application.

진단

진단 패널은 사용자에게 실시간 권장 사항 및 오류 분석을 제공하며, 이는 사용자의 코드 분석을 통해 Spark Advisor에 의해 생성됩니다. 기본 제공 패턴을 사용하면 Apache Spark Advisor를 사용하면 사용자가 일반적인 실수를 방지하고 오류를 분석하여 근본 원인을 식별할 수 있습니다.

Screenshot showing the diagnostics for spark application.

Apache Spark 애플리케이션의 세부 정보를 확인한 다음 단계는 Notebook 셀 아래에서 Spark 작업 진행률을 보는 것입니다. 다음을 참조할 수 있습니다.