Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Im Modus für hohe Parallelität können kompatible Spark-Workloads eine aktive Spark-Sitzung gemeinsam nutzen, anstatt für jede Workload eine separate Sitzung zu starten. Dieser Modus wird häufig für Notizbuch- und Pipelineszenarien in Fabric verwendet.
Dieser Artikel hilft Ihnen zu verstehen:
- Was hohen Parallelitätsmodus bedeutet und wann man ihn verwenden sollte.
- Anforderungen für die Sitzungsteilung.
- Wie die Abrechnung für freigegebene Sitzungen funktioniert.
Im Standardmodus startet jede Notizbuch- oder Pipelineaktivität eine eigene Spark-Sitzung. Im hochgradigem Parallelitätsmodus hostet eine Spark-Anwendung mehrere Workloads, indem jedem Workload ein eigener REPL-Kern (Read-eval-print loop) zugewiesen wird. Jeder REPL-Kern isoliert den Ausführungszustand, sodass lokale Variablen in einer Workload keine Variablen in einer anderen Workload überschreiben.
Da die freigegebene Sitzung bereits ausgeführt wird, können nachfolgende Workloads viel schneller gestartet werden.
Hinweis
Bei benutzerdefinierten Pools mit hohem Parallelitätsmodus kann der Sitzungsstart bis zu 36x schneller sein als eine standardmäßige Spark-Sitzung.
Wichtige Funktionen
Das Diagramm zeigt drei Kernmerkmale des Modus für hohe Parallelität:
- Sicherheit: Die Sitzungsfreigabe bleibt innerhalb einer Einbenutzergrenze.
- Multitasking: Sie können zwischen Notizbüchern wechseln und die Arbeit fortsetzen, ohne darauf zu warten, dass eine neue Spark-Sitzung erstellt oder initialisiert wird.
- Kosteneffizienz: Gemeinsam genutzte Sitzungen verbessern die Ressourcenauslastung und reduzieren die Berechnungskosten für Datentechnik- und Data Science-Workloads.
Anforderungen für das Teilen von Sitzungen
Die Sitzungsfreigabe gilt, wenn diese Bedingungen erfüllt sind:
- Sitzungen sind auf eine einzelne Benutzergrenze beschränkt.
- Sitzungen verwenden dieselbe Standardkonfiguration in Lakehouse.
- Sitzungen verwenden dieselben Spark Compute-Einstellungen.
Wenn sich eine Anforderung unterscheidet, startet Fabric eine separate Spark-Sitzung.
Während der Sitzungsinitialisierung erstellt Fabric einen REPL-Kern. Wenn neue Workloads an der freigegebenen Sitzung teilnehmen, werden Executoren mithilfe der FAIR-Planung über diese REPL-Kerne hinweg zugewiesen, um das Starvation-Risiko zu reduzieren.
Abrechnungsverhalten
Wenn Sie den Modus für hohe Parallelität verwenden, wird nur die initiierende Notizbuch- oder Pipelineaktivität, die die freigegebene Spark-Anwendung startet, abgerechnet. Nachfolgende Sitzungen, die dieselbe Spark-Sitzung gemeinsam nutzen, verursachen keine separate Abrechnung.
Example
- Ein Benutzer startet Notizbuch 1, wodurch eine Spark-Sitzung im Modus für hohe Parallelität initiiert wird.
- Die gleiche Sitzung wird dann von Notizbuch 2, Notizbuch 3, Notizbuch 4 und Notizbuch 5 geteilt.
- In diesem Fall wird nur Notebook 1 für Spark-Computing abgerechnet.
- Freigegebene Notizbücher (2 bis 5) werden nicht einzeln abgerechnet.
Dieses Verhalten spiegelt sich auch in Kapazitätsmetriken wider, bei denen die Nutzung im Hinblick auf das initiierende Notizbuch berichtet wird.
Hinweis
Das gleiche Abrechnungsverhalten gilt für Pipelineaktivitäten. Nur das Notizbuch oder die Aktivität, die die Spark-Sitzung initiiert, wird in Rechnung gestellt.
Grenzwert für dynamische Sitzungsfreigabe
Standardmäßig unterstützt eine Sitzung mit hoher Parallelität bis zu fünf Notizbücher, die dieselbe Spark-Sitzung verwenden. Bei Workloads, die eine höhere Notizbuchdichte erfordern ( z. B. umfangreiche parallele Pipelines oder Unternehmensanalysen bei Spitzenlast), können Sie diesen Grenzwert auf bis zu 50 Notizbücher pro Sitzung erhöhen.
Hinweis
Dieses Update ändert nicht den Standardgrenzwert von fünf. Sie müssen spark.highConcurrency.max explizit festlegen, um es zu erhöhen.
Die Begrenzung für die Sitzungsfreigabe konfigurieren
Legen Sie im Umgebungselement, das von Ihren Notizbüchern oder von Pipeline-ausgelösten Notizbüchern verwendet wird, den Grenzwert für die Sitzungsfreigabe fest.
Wechseln Sie zu Ihrem Arbeitsbereich, und öffnen Sie "Umgebungen".
Wählen Sie die Umgebung aus, die mit Ihrem Notizbuch oder Ihrer Pipeline verbunden ist.
Öffnen Sie Spark-Eigenschaften.
Fügen Sie die folgende Eigenschaft hinzu, und legen Sie einen Wert zwischen 2 und 50 fest:
spark.highConcurrency.max = <value>So können Sie beispielsweise bis zu 20 Notizbücher pro Sitzung zulassen:
spark.highConcurrency.max = 20Speichern und veröffentlichen Sie die Umgebung.
Alle Notizbücher und Pipelineaktivitäten, die diese Umgebung verwenden, erben automatisch den aktualisierten Grenzwert.
Wann sollte der Grenzwert für die Sitzungsfreigabe erhöht werden?
| Szenario | Empfohlene Maßnahme |
|---|---|
| Umfangreiche parallele Pipelines mit vielen Notebook-Aktivitäten | Erhöhen Sie spark.highConcurrency.max, um die Sitzungsfragmentierung zu reduzieren. |
| Interaktive Spitzenlast-Arbeitslasten mit vielen gleichzeitigen Benutzern | Erhöhen des Grenzwerts zur Verbesserung der Sitzungserfassungszeiten |
| Kostenempfindliche Workloads, bei denen dichtes Packen die Rechenkosten reduziert | Stimmen Sie den Grenzwert auf Ihre Parallelitätsanforderungen ab |
| Workloads mit strengen Isolationsanforderungen | Beibehalten des Standardgrenzwerts von 5 oder niedriger |
Das Erhöhen des Sitzungsfreigabelimits ermöglicht Folgendes:
- Schnellere Sitzungserfassung während der Spitzenlast durch Reduzierung der Wartezeit für eine neue Sitzung.
- Höhere Notebook-Dichte ohne Aufteilung in viele separate Sitzungen.
- Dynamische Optimierung, die auf die Intensität der Workloads sowie auf Kosten und Preis-Leistungs-Ziele ausgerichtet ist.
- Bessere Preis-Leistungseffizienz bei gleichzeitiger Wahrung der Isolation und Fairness in allen Arbeitsplätzen.
Zugehöriger Inhalt
- Apache Spark compute in Microsoft Fabric
- Informationen zu den ersten Schritten mit dem Modus für hohe Parallelität in Notebooks finden Sie unter Konfigurieren des Modus für hohe Parallelität für Fabric-Notebooks.
- Informationen zum Lade- und Vorschauverhalten von Lakehouse finden Sie unter Hochfrequenzmodus für Lakehouse-Vorgänge in Microsoft Fabric.