다음을 통해 공유


Microsoft Fabric용 Apache Spark의 동시성 제한 및 큐

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

Microsoft Fabric은 용량을 통해 컴퓨팅 단위를 할당할 수 있습니다. 이는 지정된 시간에 사용할 수 있는 전용 리소스 집합입니다. 용량은 작업을 수행하거나 출력을 생성하기 위한 리소스의 기능을 정의합니다. 다양한 항목이 특정 시간에 서로 다른 용량을 사용합니다. Microsoft Fabric은 Fabric SKU 및 평가판을 통해 용량을 제공합니다. 자세한 내용은 용량이란?을 참조하세요.

사용자가 Azure에서 Microsoft Fabric 용량을 만들 때 분석 워크로드 크기에 따라 용량 크기를 선택합니다. Apache Spark에서 사용자는 SKU의 일부로 예약하는 모든 용량 단위에 대해 두 개의 Apache Spark VCore를 받습니다.

하나의 용량 단위 = 2개의 Spark VCore

용량을 구매하면 관리자는 Microsoft Fabric의 용량 내에서 작업 영역을 만들 수 있습니다. 용량과 연결된 Spark VCore는 Notebook, Apache Spark 작업 정의 및 이러한 작업 영역에서 만든 Lakehouse와 같은 모든 Apache Spark 기반 항목 간에 공유됩니다.

동시성 제한 및 큐

Spark for Fabric은 사용자가 구매한 Fabric 용량 SKU에 따라 작업을 제출할 수 있는 코어 기반 제한 및 큐 메커니즘을 적용합니다. 큐 메커니즘은 사용 가능한 작업 슬롯을 확인하고 용량을 사용할 수 있게 되면 자동으로 작업을 다시 시도하는 간단한 FIFO 기반 큐입니다. 사용자가 구매한 Fabric 용량 SKU에 사용할 수 있는 모든 Spark Vcore를 사용하는 동시 실행 작업으로 인해 용량이 최대 사용률인 경우 테이블로 로드와 같은 Notebook 또는 Lakehouse 작업을 제출하면 메시지로 제한됩니다.

HTTP 응답 코드 430: Spark 컴퓨팅 또는 API 속도 제한에 도달했기 때문에 이 Spark 작업을 실행할 수 없습니다. 이 Spark 작업을 실행하려면 모니터링 허브를 통해 활성 Spark 작업을 취소하거나 더 큰 용량 SKU를 선택하거나 나중에 다시 시도합니다.

큐를 사용하도록 설정하면 파이프라인에서 트리거된 Notebook 작업과 작업 스케줄러 및 Spark 작업 정의가 큐에 추가되고 용량이 해제되면 자동으로 다시 시도됩니다. 큐 만료는 작업 제출 시간으로부터 24시간으로 설정됩니다. 이 기간이 지나면 작업을 다시 제출해야 합니다.

Fabric 용량은 워크로드 실행 속도를 높이기 위해 구입한 것 이상으로 추가 컴퓨팅 코어를 사용할 수 있는 버스팅을 사용하도록 설정됩니다. Apache Spark 워크로드 버스팅의 경우 사용자는 총 3배의 Spark VCore를 구매한 작업을 제출할 수 있습니다.

참고 항목

버스팅 인수는 동시성을 돕기 위해 총 Spark VCore 수만 증가하지만 작업당 최대 코어는 증가하지 않습니다. 사용자는 Fabric 용량이 제공하는 것보다 더 많은 코어가 필요한 작업을 제출할 수 없습니다.

다음 섹션에서는 Microsoft Fabric 용량 SKU를 기반으로 하는 Spark 워크로드에 대한 다양한 코어 기반 제한을 나열합니다.

Fabric SKU 용량 동등한 Power BI SKU Spark VCore 버스트 요소가 있는 최대 Spark VCore 큐 제한
F2 - 4 20 4
F4 - 8 24 4
F8 - 16 48 8
F16 - 32 96 16
F32 - 64 192 32
F64 P1 128 384 64
F128 P2 256 768 128
F256 P3 512 1536 256
F512 P4 1024 3072 512
F1024 - 2048 6144 1024
F2048 - 4096 12288 2048
평가판 용량 P1 128 128 해당 없음

계산 예: F64 SKU128개의 Spark VCore를 제공합니다. F64 SKU에 적용되는 버스트 비율은 3이며 총 384개의 Spark Vcore를 제공합니다. 버스트 계수는 동시성을 돕기 위해서만 적용되며 단일 Spark 작업에 사용할 수 있는 최대 코어를 증가시키지 않습니다. 즉, 단일 Notebook 또는 Spark 작업 정의 또는 lakehouse 작업은 최대 128개 vCore의 풀 구성을 사용할 수 있으며 동일한 구성을 가진 3개의 작업을 동시에 실행할 수 있습니다. Notebook이 더 작은 컴퓨팅 구성을 사용하는 경우 최대 사용률이 384 SparkVcore 제한에 도달할 때까지 동시에 실행할 수 있습니다.

참고 항목

작업에는 24시간의 큐 만료 기간이 있으며, 그 후에는 작업이 취소되고 사용자는 작업 실행을 위해 다시 제출해야 합니다.

Fabric용 Spark 제한은 임의 작업 기반 제한을 적용하지 않으며, 제한은 구매한 Fabric 용량 SKU에 허용되는 코어 수를 기반으로 합니다. 기본적으로 작업 허용은 최소 코어 요구 사항에 따라 작업이 인정되는 낙관적 허용 제어입니다. 낙관적인 작업 허용에 대해 자세히 알아보기 작업 허용 및 관리 작업 공간에 대해 기본 풀(스타터 풀) 옵션을 선택한 경우 다음 표에 최대 동시 작업 제한이 나와 있습니다.

Fabric 용량 SKU 시작 풀 구성을 기반으로 하는 기본 시작 풀 구성에 대해 자세히 알아봅니다.

작업 수준 버스팅

관리자는 전체 용량에 사용할 수 있는 버스트 인수를 사용하여 최대 Spark 코어를 활용하도록 Apache Spark 풀을 구성할 수 있습니다. 예를 들어 F64 Fabric 용량에 작업 영역을 연결한 작업 영역 관리자는 이제 Spark 풀(시작 풀 또는 사용자 지정 풀)을 384 Spark VCore로 구성할 수 있습니다. 여기서 시작 풀의 최대 노드를 48로 설정하거나 관리자는 최대 노드가 6개인 XX 라지 노드 크기 풀을 설정할 수 있습니다.