Przyjęcie zadania na platformie Apache Spark dla usługi Microsoft Fabric
Dotyczy:✅ inżynierowie danych i Nauka o danych w usłudze Microsoft Fabric
Platforma Apache Spark for Fabric wykorzystuje optymistyczną technikę przyjmowania zadań w celu określenia minimalnego wymagania podstawowego dla zadań platformy Spark. Ten proces ma zastosowanie do zadań interakcyjnych lub wsadowych z notesów, lakehouses lub definicji zadań platformy Spark. Opiera się na minimalnym ustawieniu węzła wybranej puli Spark w ustawieniach obszaru roboczego lub dołączonym środowisku. Jeśli dostępne rdzenie znajdują się w pojemności sieci szkieletowej połączonej z obszarem roboczym, zadanie zostanie zaakceptowane i rozpocznie wykonywanie. Zadania inicjują się przy użyciu minimalnego ustawienia węzła i mogą skalować w górę w ramach maksymalnych limitów węzłów zgodnie z etapami zadania. Jeśli łączna liczba rdzeni używanych przez uruchamianie zadań korzystających z pojemności sieci szkieletowej jest niższa od przypisanych maksymalnej liczby rdzeni, warstwa wpływu i ograniczania przydziału zadania na platformie Spark umożliwia skalowanie zadania w górę.
Aby uzyskać więcej informacji, zobacz Limity współbieżności i kolejkowanie na platformie Microsoft Fabric Spark.
Jak działa optymistyczny wstęp do pracy?
W sieci szkieletowej pule początkowe są dostarczane z domyślnym minimum jednego węzła, a pule niestandardowe umożliwiają ustawianie minimalnych węzłów na podstawie potrzeb związanych z obciążeniem. Skalowanie automatyczne dostosowuje wymagania obliczeniowe dla zadań platformy Spark podczas etapów wykonywania w skonfigurowanych węzłach minimalnych i maksymalnych. Optymistyczne przyjęcie zadania ocenia przesyłanie zadań na podstawie dostępnych rdzeni i wykonuje je z minimalnymi rdzeniami. Zadania próbują rosnąć w oparciu o maksymalnie przydzielone węzły podczas wykonywania. Żądania skalowania w górę są zatwierdzane, jeśli łączna liczba użytych rdzeni platformy Spark mieści się w ramach przydzielonych limitów pojemności.
Uwaga
Jeśli użycie osiągnie maksymalny limit, a wszystkie rdzenie w ramach całkowitej pojemności sieci Szkieletowej będą używane, wszelkie żądania skalowania w górę zostaną odrzucone. Aktywne zadania muszą zostać zakończone lub anulowane, aby zwolnić rdzenie.
Jak to wpływa na współbieżność zadań?
Minimalne wymaganie podstawowe dla każdego zadania określa, czy zadanie można zaakceptować. Jeśli pojemność jest w pełni wykorzystywana i nie ma rdzeni do spełnienia minimalnych potrzeb rdzeni zadania, zadanie zostanie odrzucone. Zadania notesu interaktywnego lub operacje usługi Lakehouse zostaną zablokowane z komunikatem o błędzie Nie można przesłać tego żądania, ponieważ obecnie jest używana cała dostępna pojemność. Anuluj aktualnie uruchomione zadanie, zwiększ dostępną pojemność lub spróbuj ponownie później. Zadania usługi Batch są kolejkowane i wykonywane po udostępnieniu rdzeni.
Rozważmy na przykład scenariusz z użytkownikiem korzystającym z jednostki SKU pojemności F32 sieci szkieletowej. Zakładając, że wszystkie zadania używają domyślnej konfiguracji puli startowej bez optymistycznego przyjęcia zadania, pojemność będzie obsługiwać maksymalną współbieżność trzech zadań. Maksymalna liczba rdzeni na zadanie jest przydzielana zgodnie z konfiguracją maksymalnej liczby węzłów.
W przypadku optymistycznego przyjęcia zadania o takiej samej pojemności jak powyżej można przyznać i wykonać 24 zadania przy użyciu minimalnej konfiguracji węzła podczas maksymalnego scenariusza współbieżności. Ponieważ każde zadanie wymaga 8 rdzeni wirtualnych platformy Spark, w których jedna minimalna konfiguracja węzła ma średni rozmiar.
Skalowanie zadań za pomocą skalowania automatycznego platformy Spark
Po włączeniu automatycznego skalowania dla pul platformy Spark zadania są wykonywane z minimalną konfiguracją węzła. W czasie wykonywania może wystąpić skalowanie. Te żądania przechodzą przez kontrolę nad przyjęciem zadania. Zatwierdzone żądania są skalowane w górę do maksymalnych limitów na podstawie łącznej liczby dostępnych rdzeni. Odrzucone żądania nie wpływają na aktywne zadania; będą nadal działać z bieżącą konfiguracją, dopóki rdzenie nie staną się dostępne.
Uwaga
Aby zapewnić maksymalną alokację rdzeni dla zadania zgodnie z konfiguracją maksymalnej liczby węzłów, wyłącz skalowanie automatyczne i ustaw maksymalne węzły w ramach jednostki SKU pojemności sieci szkieletowej. W takim przypadku, ponieważ zadanie nie ma minimalnego wymagania podstawowego, zostanie uruchomione po udostępnieniu bezpłatnych rdzeni, skalowanie w górę do skonfigurowanej sumy. Jeśli pojemność jest w pełni używana, interaktywne zadania notesu mogą spowalniać lub kolejkowane. Zadania w kolejce są automatycznie ponawiane, gdy rdzenie staną się dostępne.
Powiązana zawartość
- Rozpocznij pracę z ustawieniami administrowania obszarem roboczym platformy Spark w usłudze Microsoft Fabric.
- Dowiedz się więcej o obliczeniach platformy Spark na potrzeby inżynierii danych i nauki o danych w sieci szkieletowej .
- Dowiedz się więcej o limitach współbieżności i kolejkowania dla platformy Spark sieci szkieletowej.