Udostępnij za pośrednictwem


Limity współbieżności i kolejkowanie na platformie Apache Spark dla usługi Microsoft Fabric

Dotyczy: inżynierowie danych i Nauka o danych w usłudze Microsoft Fabric

Usługa Microsoft Fabric umożliwia przydzielanie jednostek obliczeniowych za pośrednictwem pojemności, czyli dedykowanego zestawu zasobów, które są dostępne w danym momencie. Pojemność definiuje zdolność zasobu do wykonywania działania lub generowania danych wyjściowych. Różne elementy zużywają w określonym czasie inną pojemność. Usługa Microsoft Fabric oferuje pojemność za pośrednictwem jednostek SKU sieci szkieletowej i wersji próbnych. Aby uzyskać więcej informacji, zobacz Co to jest pojemność?.

Gdy użytkownicy tworzą pojemność usługi Microsoft Fabric na platformie Azure, wybierają rozmiar pojemności na podstawie rozmiaru obciążenia analitycznego. Na platformie Apache Spark użytkownicy otrzymują dwa rdzenie wirtualne platformy Apache Spark dla każdej jednostki pojemności, którą rezerwują w ramach jednostki SKU.

Jedna jednostka pojemności = dwa rdzenie wirtualne platformy Spark

Po zakupie pojemności administratorzy mogą tworzyć obszary robocze w ramach pojemności w usłudze Microsoft Fabric. Rdzenie wirtualne platformy Spark skojarzone z pojemnością są współużytkowane przez wszystkie elementy oparte na platformie Apache Spark, takie jak notesy, definicje zadań platformy Apache Spark i magazyny typu lakehouse utworzone w tych obszarach roboczych.

Ograniczanie współbieżności i kolejkowanie

Platforma Spark for Fabric wymusza mechanizm ograniczania i kolejkowania oparty na rdzeniach, w którym użytkownicy mogą przesyłać zadania na podstawie zakupionych jednostek SKU pojemności sieci szkieletowej. Mechanizm kolejkowania to prosta kolejka oparta na standardzie FIFO, która sprawdza dostępne miejsca zadań i automatycznie ponawia próby zadań po udostępnieniu pojemności. Gdy użytkownicy przesyłają zadania notesu lub lakehouse, takie jak Ładowanie do tabeli, gdy ich pojemność jest w maksymalnym wykorzystaniu ze względu na współbieżne uruchomione zadania przy użyciu wszystkich rdzeni wirtualnych platformy Spark dostępnych dla zakupionej jednostki SKU pojemności sieci szkieletowej, są ograniczane z komunikatem

Kod odpowiedzi HTTP 430: nie można uruchomić tego zadania platformy Spark, ponieważ przekroczono limit szybkości obliczeń platformy Spark lub interfejsu API. Aby uruchomić to zadanie platformy Spark, anuluj aktywne zadanie platformy Spark za pośrednictwem centrum monitorowania lub wybierz większą jednostkę SKU pojemności lub spróbuj ponownie później.

Po włączeniu kolejkowania zadania notesu wyzwalane z potoków i harmonogramu zadań oraz definicji zadań platformy Spark są dodawane do kolejki i automatycznie ponawiane po zwolnieniu pojemności. Wygaśnięcie kolejki jest ustawione na 24 godziny od czasu przesłania zadania. Po upływie tego okresu zadania będą musiały zostać ponownie zwrócone.

Pojemności sieci szkieletowej są włączane ze wzrostem szybkości, co umożliwia korzystanie z dodatkowych rdzeni obliczeniowych poza zakupionymi elementami, aby przyspieszyć wykonywanie obciążenia. W przypadku obciążeń platformy Apache Spark skalowanie umożliwia użytkownikom przesyłanie zadań z łącznie 3X zakupionymi rdzeniami wirtualnymi platformy Spark.

Uwaga

Współczynnik zwiększania szybkości zwiększa tylko łączną liczbę rdzeni wirtualnych platformy Spark, aby ułatwić współbieżność, ale nie zwiększa maksymalnej liczby rdzeni na zadanie. Użytkownicy nie mogą przesyłać zadania wymagającego większej liczby rdzeni niż to, co oferuje ich pojemność sieci szkieletowej.

W poniższej sekcji wymieniono różne limity oparte na rdzeniach dla obciążeń platformy Spark na podstawie jednostek SKU pojemności usługi Microsoft Fabric:

Jednostka SKU pojemności sieci szkieletowej Równoważna jednostka SKU usługi Power BI Rdzenie wirtualne platformy Spark Maksymalna liczba rdzeni wirtualnych platformy Spark ze współczynnikiem serii Limit kolejki
F2 - 100 20 100
F4 - 8 24 100
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
Pojemność wersji próbnej P1 128 128 NA

Przykładowe obliczenie: jednostka SKU F64 oferuje 128 rdzeni wirtualnych platformy Spark. Współczynnik serii stosowany dla jednostki SKU F64 wynosi 3, co daje łącznie 384 rdzenie wirtualne platformy Spark. Współczynnik zwiększania wydajności jest stosowany tylko w celu ułatwienia współbieżności i nie zwiększa maksymalnej liczby rdzeni dostępnych dla pojedynczego zadania platformy Spark. Oznacza to, że pojedyncza definicja zadania notesu lub zadania platformy Spark lub zadanie lakehouse mogą używać konfiguracji puli z maksymalnie 128 rdzeniami wirtualnymi i 3 zadaniami z tą samą konfiguracją można uruchamiać współbieżnie. Jeśli notesy korzystają z mniejszej konfiguracji obliczeniowej, mogą być uruchamiane współbieżnie, dopóki maksymalne wykorzystanie osiągnie limit 384 rdzeni SparkVcore.

Uwaga

Zadania mają okres wygaśnięcia kolejki 24 godziny, po którym zostaną anulowane, a użytkownicy muszą ponownie przesłać je do wykonania zadania.

Ograniczanie przepustowości platformy Spark dla sieci szkieletowej nie wymusza dowolnych limitów opartych na zadaniach, a ograniczanie jest oparte tylko na liczbie rdzeni dozwolonych dla zakupionej jednostki SKU pojemności sieci szkieletowej. Wstęp do pracy domyślnie będzie optymistyczną kontrolą przyjęć, gdzie miejsca pracy są dopuszczone na podstawie ich minimalnych wymagań podstawowych. Dowiedz się więcej na temat optymistycznego przyjęcia zadania przydziału zadania i zarządzania Jeśli dla obszaru roboczego jest wybrana opcja domyślna pula (pula początkowa), w poniższej tabeli wymieniono maksymalne limity zadań współbieżności.

Dowiedz się więcej o domyślnych konfiguracjach puli początkowej na podstawie jednostki SKU pojemności szkieletowej Konfigurowanie pul startowych.

Skalowanie na poziomie zadania

Administratorzy mogą skonfigurować pule platformy Apache Spark, aby korzystać z maksymalnej liczby rdzeni platformy Spark z współczynnikiem zwiększenia wydajności dostępnym dla całej pojemności. Na przykład administrator obszaru roboczego, którego obszar roboczy jest dołączony do pojemności sieci szkieletowej F64, może teraz skonfigurować pulę platformy Spark (pulę startową lub pulę niestandardową) do 384 rdzeni wirtualnych platformy Spark, gdzie można ustawić maksymalną liczbę węzłów 48 lub administratorzy mogą skonfigurować pulę XX Duży rozmiar węzła z 6 maksymalnymi węzłami.