Verstehen Sie die Fabric-Kapazitäts-Drosselungspolitik

Drosselung tritt auf, wenn Operationen mehr Kapazitätseinheitssekunden (CU) benötigen, als die Kapazitäts-SKU zulässt. Kapazitätseinheiten messen die für jede SKU verfügbare Rechenleistung. Eine zu starke Drosselung kann zu einer beeinträchtigten Endbenutzererfahrung führen. Ein Microsoft Fabric-Mandant kann mehrere Kapazitäten erstellen und Arbeitsbereiche einer bestimmten Kapazität für Abrechnung und Größenbestimmung zuweisen.

Fabric wendet Drosselung auf Kapazitätsebene an. Während eine Kapazität oder eine Reihe von Arbeitsplätzen durch Überlastung eine verminderte Leistung erfahren kann, laufen andere Kapazitäten möglicherweise weiterhin normal. Wenn eine Kapazität Elemente wie OneLake-Elemente bereitstellt und eine andere Kapazität diese nutzt, bestimmt der Drosselungszustand der nutzenden Kapazität, ob sie Aufrufe an das Element drosselt.

Wie Fabric Leistung und Zuverlässigkeit ausbalanciert

Fabric liefert seinen Kunden schnelle Leistung. Aufgaben, die auf anderen Plattformen mehrere Minuten dauern können, können in nur wenigen Sekunden auf Fabric abgeschlossen werden. Große Operationen können zu jeder Tageszeit ausgeführt werden, ohne dass eine sorgfältige Planung nötig ist, da Fabric den Rechenaufwand für diese Operationen über einen längeren Zeitraum verteilt, ohne den Betrieb zu verlangsamen. Fabric ermöglicht dieses Verhalten durch integriertes Bursting und Smoothing. Diese Funktionen ermöglichen es den Kapazitäten, sich selbst zu verwalten und zu heilen, wenn vorübergehende Auslastungsspitzen andere Systeme zum Ausfall oder Verlangsamen bringen würden.

Bursting: Verwenden Sie mehr Rechenkraft als die von der SKU bereitgestellte Kapazität

Um eine hohe Performance zu gewährleisten, verwendet Fabric Bursting, um Operationen so schnell wie möglich auszuführen. Mit Bursting können Operationen vorübergehend mehr Rechenleistung verbrauchen als die bereitgestellte Rechenleistung für die Kapazitäts-SKU. Durch das Platzen bekommst du Ergebnisse, ohne zu warten. Eine kleinere Kapazität kann auch Bursting nutzen, um größere Workloads auszuführen, für die normalerweise eine teurere Kapazität erforderlich wäre.

Glättung: Verteilung der CU-Nutzung über künftige Zeitpunkte hinweg

Um zu vermeiden, dass Sie benachteiligt werden, wenn Vorgänge von Bursting profitieren, glättet, bzw. mittelt, Fabric die CU-Auslastung eines Vorgangs über einen längeren Zeitraum. Dieses Verhalten sorgt dafür, dass Sie konstant schnelle Leistung ohne Throttling genießen können.

Das Glätten verteilt die verbrauchte CU-Nutzung über zukünftige Zeitpunkte. Zeiteinheiten in Fabric sind jeweils 30 Sekunden lang. Die nächsten 24 Stunden enthalten 2.880 Zeitpunkte. Fabric verwaltet automatisch die Menge der verbrauchten CUs an jedem Zeitpunkt.

Der Nutzungstyp einer Operation bestimmt die Anzahl der Zeitpunkte, die Fabric für die Glättung verwendet. Erfahren Sie mehr über Fabric-Vorgänge.

  • Fabric glättet interaktive Vorgänge über einen Zeitraum von mindestens fünf und bis zu 64 Minuten, abhängig davon, wie viele CUs sie verbrauchen.
  • Fabric glättet Hintergrundvorgänge über 24 Stunden, da diese typischerweise lange Laufzeiten und einen hohen CU-Verbrauch aufweisen.

Aufgrund der Glättung entfällt nur ein Teil des CU-Verbrauchs für einen Vorgang auf jeden einzelnen Zeitpunkt, was die Drosselung insgesamt reduziert. Der geglättete CU-Verbrauch kumuliert sich, wenn Vorgänge ausgeführt werden. Die zukünftige Kapazität, also die in zukünftigen Zeitpunkten verfügbaren CUs, finanziert eine reibungslose Auslastung, da die Kapazität kontinuierlich betrieben wird.

Bursting und Smoothing arbeiten zusammen, damit du leichter arbeiten kannst. Zum Beispiel verbringst du typischerweise Zeit damit, Aufträge zu planen und sie über den Tag zu verteilen. Durch die Glättung verteilt Fabric die Rechenkosten für Hintergrundaufträge über 24 Stunden. Dadurch können alle geplanten Jobs gleichzeitig ausgeführt werden, ohne Lastspitzen zu verursachen, die sonst den Start von Jobs verhindern würden. Gleichzeitig können Sie konstant schnelle Leistungen genießen, ohne auf langsame Aufträge zu warten oder Zeit mit der Verwaltung von Arbeitszeiten zu verschwenden.

Hinweis

Fabric unterstützt kein Bursting und Smoothing, wenn ein Kapazitätsadministrator Autoscale Billing für Spark aktiviert. In diesem Szenario läuft die Nutzung von Spark im Pay-as-you-go-Modus, und die Konzepte von Bursting und Smoothing gelten nicht.

Drosselungsauslöser und Drosselungsstufen

Obwohl Kapazitäten integrierte Glättungen aufweisen, die die Auswirkungen von Spitzen in der Nutzung reduzieren, ist es dennoch möglich, eine Kapazität zu überlasten , indem zu viele Vorgänge ausgeführt werden.

Die Kapazität drosselt automatisch neue Operationen, wenn sie überlastet ist. Drosselung erfolgt in progressiven Schritten, um die Auswirkungen auf wichtige Aufgaben wie Datenaktualisierungen zu minimieren.

Selbst wenn eine Kapazität über 100 % Auslastung läuft, wendet Fabric die Drosselung nicht sofort an. Stattdessen bietet die Kapazität einen Überlastungsschutz, der es Ihnen ermöglicht, 10 Minuten künftiger Kapazität ohne Drosselung zu nutzen. Dieses Verhalten bietet begrenzten eingebauten Schutz vor Überspannungen und bietet den Nutzern durchgehend eine schnelle Leistung ohne Unterbrechungen.

Die Drosselung beginnt, wenn eine Kapazität alle CU-Ressourcen für die nächsten 10 Minuten aufbraucht. Die erste Phase der Drosselung verursacht bei neuen interaktiven Operationen Verzögerungen von 20 Sekunden. Die zweite Phase der Drosselung lehnt neue interaktive Operationen ab, wenn eine Kapazität für die nächste Stunde alle CU-Ressourcen verbraucht. Während dieser Phase können Hintergrundoperationen beginnen und laufen. Die dritte Phase der Drosselung lehnt alle neuen Anfragen ab, sowohl interaktive als auch Hintergrundanfragen, wenn die Kapazität alle verfügbaren CU-Ressourcen für die nächsten 24 Stunden ausgeschöpft hat. Die Kapazität drosselt weiterhin Anfragen, bis du die verbrauchten CUs abbezahlt hast.

Hinweis

Microsoft versucht, die Flexibilität der Kund*innen bei der Nutzung des Diensts zu verbessern und gleichzeitig die Notwendigkeit auszugleichen, die Kapazitätsauslastung der Kund*innen zu verwalten. Aus diesem Grund kann Microsoft die Fabric-Einschränkungsrichtlinie ändern oder aktualisieren.

Die folgende Tabelle fasst die Drosselungsauslöser und -stufen zusammen.

Verwendung Richtliniengrenzwert Auswirkung auf das Nutzererlebnis
Verbrauch <= 10 Minuten Überschreitungsschutz Aufträge können 10 Minuten zukünftigen Kapazitätseinsatz ohne Drosselung verbrauchen.
10 Minuten < Verbrauch <= 60 Minuten Interaktive Verzögerung Fabric verzögert benutzerdefinierte interaktive Jobs um 20 Sekunden bei der Abgabe.
60 Minuten < Verbrauch <= 24 Stunden Interaktive Ablehnung Fabric lehnt von Nutzern angeforderte interaktive Jobs ab.
Nutzung > 24 Stunden Hintergrundablehnung Fabric lehnt alle Anfragen ab.

Beispiel: Wie Glättung das Drosseln bei einer Hintergrundoperation reduziert

Hier ist ein anschauliches Beispiel dafür, wie die Glättung bei einem Hintergrundvorgang funktioniert, der 1 CU‑Stunde verbraucht hat (sein Verbrauch entsprach 1 CU über 1 Stunde). Fabric glättet Hintergrundvorgänge über einen Zeitraum von 24 Stunden. Der Beitrag eines Hintergrundvorgangs zu jedem Zeitpunkt ist die Anzahl der CU-Stunden des Vorgangs, geteilt durch die CU-Stunden der SKU über den Glättungszeitraum. Ein F2 liefert 2 CUs, also 48 CU-Stunden pro Tag (2 CUs multipliziert mit 24 Stunden). Auf diesen Job entfallen 1 CU-Stunde / 48 CU-Stunden = ~2,1 % pro Zeitpunkt. Der Einfluss auf die 10- und 60-Minuten-Drosselbegrenzungen beträgt ebenfalls ~2,1%.

Hier sehen Sie die Details, die das Beispiel unterstützen:

1 CU-Stunde = 3.600 CU-Sekunden (1 CU multipliziert mit 60 Minuten pro Stunde und 60 Sekunden pro Minute).

Jeder Zeitpunkt ist 30 Sekunden lang. In 24 Stunden gibt es 2.880 Zeitpunkte (24 Stunden * 60 Minuten * 2 Zeitpunkte pro Minute).

Da die Glättung die 3.600 CU-Sekunden über 24 Stunden verteilt, trägt der Job 3.600 CU-Sekunden / 2.880 Zeitpunkte zu jedem 30-Sekunden-Zeitpunkt bei. Es trägt also 1,25 CU-Sekunden pro Zeitpunkt bei.

Der 10-Minuten-Drosselungsprozentsatz wird auf Grundlage der insgesamt verfügbaren CUs während der nächsten 10 Minuten Kapazitätsverfügbarkeit berechnet.

Eine F2-Kapazität bietet 2 CUs. Zu jedem Zeitpunkt verfügt ein F2 über 2 CUs, multipliziert mit 30 Sekunden = 60 CU-Sekunden Rechenleistung.

Der Beitrag des Hintergrundjobs zu einem einzelnen Zeitpunkt beträgt 1,25 CU-Sekunden / 60 CU-Sekunden = ~2,1% eines einzelnen Zeitpunkts.

In 10 Minuten verfügt F2 über 2 CUs mal 600 Sekunden = 1.200 CU-Sekunden Rechenkapazität.

Der Teil des Hintergrundauftrags, bei dem sich die Glättung auf die nächsten 10 Minuten Kapazität verteilt, beträgt 1,25 CU-Sekunden multipliziert mit 20 Zeitpunkten = 25 CU-Sekunden.

Der 10-Minuten-Drosselungsprozentsatz beträgt also 25 CU-Sekunden / 1.200 CU-Sekunden = ~2,1%.

Ebenso beträgt der Prozentsatz der 60-minütige Drosselungsauswirkung des Hintergrundauftrags auch ca. 2,1 %.

Obwohl der Hintergrundbetrieb in den nächsten 10 Minuten mehr CUs verbrauchte, als verfügbar sind (er verbrauchte sechsmal so viel), wird die F2-Kapazität nicht gedrosselt, da das Glätten die Gesamtzahl der CUs über 24 Stunden verteilt. Aufgrund der Glättung entfällt nur ein kleiner Teil der verbrauchten CUs auf jeden einzelnen Zeitpunkt.

Überschreitung, Vortragen und Burndown

Wenn Operationen mehr Kapazität verbrauchen, als die SKU an einem einzigen Zeitpunkt unterstützt, berechnet das System eine Überschreitung. Das System berechnet Überschüsse nach der Glättung. Wenn Überziehungen das zulässige 10-minütige Throttlingfenster überschreiten, werden sie zu carryforward-CUs.

Der Überschreitungsschutz stellt sicher, dass die Kapazität erst gedrosselt wird, wenn das Drosselungsfenster von 10 Minuten voll ist. Es reduziert die Häufigkeit interaktiver Verzögerungen, die vorübergehende Auslastungsspitzen verursachen.

Fabric wendet die carryforward-CUs auf jeden nachfolgenden Zeitpunkt an. Wenn ein Zeitfenster nicht vollständig ausgelastet ist, verringern die ungenutzten CUs die Anzahl der Carryforward-CUs. Diese Reduzierung ist Burndown.

Die Einschränkungserzwingung wird fortgesetzt, bis die nicht genutzte Kapazität alle Vortragen-CUs abbezahlt.

Überwachung der Kapazitäten auf Drosselung

Kapazitätsadministratoren können E-Mail-Benachrichtigungen für Kapazitätsschwellenwerte einrichten , indem sie Capacity Overview Events verwenden. Administratoren können auch die Kapazitätsmetriken-Anwendung verwenden, um die Drosselungsstufen ihrer Kapazitäten zu überprüfen.

Richtige Größenanpassung und Optimierung einer Kapazität

Konstant hohe Drosselungsebenen deuten darauf hin, dass ein Lastenausgleich über mehrere Kapazitäten hinweg oder eine Erhöhung der SKU-Größe der Kapazität erforderlich ist. Für F-SKUs kann man die Kapazität skalieren. Das Skalieren zwischen SKUs auf gegenüberliegenden Seiten der F256- und F512-Grenze könnte zu einer langsameren Erfahrung führen.

Woran Sie erkennen, dass Kapazitätsdrosselung erfolgt

Wenn eine Kapazität Anfragen ablehnt, sieht man spezifische Fehlercodes und Fehlertext:

  • Statuscode CapacityLimitExceeded
  • Fehlermeldung Your organization's Fabric compute capacity has exceeded its limits. Try again later.
  • Fehlermeldung: Cannot load model due to reaching capacity limits

Hinweis

Langsame Leistung ist oft auf das Design eines Artikels zurückzuführen. Manchmal ist die langsame Leistung nur auf die Kapazitätsdrosselung zurückzuführen.

Wenn eine Kapazität überlastet ist, kann ein Kapazitätsadministrator die Fabric-Kapazitätsmetriken-App verwenden, um die Drosselung zu bestätigen.

  • Die Tabelle "Systemereignisse " auf der Seite "Compute " zeigt den Verlauf von Drosselungsereignissen an.
  • Die Drosselungsdiagramme auf der Compute-Seite zeigen an, wenn die geglättete Nutzung einen der Drosselungsgrenzwerte überschreitet.

So beenden Sie die Drosselung, wenn sie auftritt

Kapazitäten sind selbstheilend, sodass Sie immer warten können, bis der Überladenzustand beendet ist, bevor neue Anforderungen übermittelt werden.

Um die Drosselung jedoch schneller zu beenden, können Sie die folgenden Strategien anwenden.

So stoppen Sie die Drosselung bei Verwendung von F-SKU-Kapazitäten:

  • Erhöhen Sie die SKU vorübergehend. Indem Sie Ihre SKU erhöhen, beschleunigen Sie den Burndown des Vortragens, da jeder Zeitpunkt mehr Leerlaufkapazität hat.
  • Halten Sie inne und setzen Sie dann Ihre Kapazität fort. Das Anhalten einer Kapazität führt zu einem Abrechnungsereignis für den kumulierten zukünftigen Kapazitätsverbrauch. Wenn eine Kapazität gestartet oder fortgesetzt wird, hat sie keine zukünftige Kapazitätsauslastung, sodass neue Vorgänge sofort akzeptiert werden können. Das Anhalten kann dazu führen, dass der Kapazität zugeordnete Inhalte nicht mehr verfügbar sind. Stelle daher zunächst sicher, dass die Kapazität nicht verwendet wird.
  • Die Abrechnung von Kapazitätsüberschreitungen kann ebenfalls verhindern, dass es zu einer Drosselung kommt; sie kostet jedoch das Dreifache des normalen Kapazitätssatzes. Weitere Informationen finden Sie unter Kapazitätsüberschreitung aktivieren.

So stoppen Sie die Drosselung bei Verwendung von P-SKU-Kapazitäten:

In-Flight-Vorgänge werden nicht gedrosselt

Die Drosselung wirkt sich nur auf Vorgänge aus, die nach dem Start der Kapazitätsdrosselung angefordert werden. Alle Operationen, einschließlich lang andauernder Operationen, die Sie eingereicht haben, bevor die Drosselung begann, können vollständig abgeschlossen werden. Dieses Verhalten stellt sicher, dass Vorgänge auch bei Spitzen in der CU-Auslastung abgeschlossen werden.

Verbunddrosselungsschutz

In Fabric löst ein Vorgang häufig andere Elemente oder Workloads aus, um den Vorgang abzuschließen. Es gibt viele Beispiele, aber ein typisches ist das Betrachten eines Berichts. Jedes visuelle Element im Bericht führt eine Abfrage für ein zugrunde liegendes Semantikmodell aus. Das semantische Modell könnte auch Daten aus OneLake lesen, um das Abfrageergebnis bereitzustellen. Jede dieser Anforderungen bildet eine Kette.

Bei einer Kette von Calls besteht das Risiko von Compound Throttling, das auftritt, wenn Fabric mehrmals auf dieselbe Anfrage Throttling anwendet. Fabric verfügt über einen integrierten Schutz vor Compound-Throttling, der die Wahrscheinlichkeit von Compound-Throttling reduziert. Workloads können sich für diesen Schutz entscheiden.

Wenn Workloads den Schutz vor mehrfacher Drosselung unterstützen, drosselt Fabric eine Anforderung für jede Kapazität, die Teil dieser Kette ist, nur einmal. Die Drosselungsentscheidung wird getroffen, sobald die Anforderung beginnt und gilt für alle Vorgänge in der Kette.

Wenn eine Kette mehr als eine Kapazität nutzt, wendet jede Kapazität ihre Drosselung genau einmal auf die erste Anfrage an, die sie in der Kette erhält.

Die folgenden Workloaderfahrungen unterstützen eine Verbunddrosselung:

  • Semantische Modelle, die sich mit anderen semantischen Modellen über DirectQuery verbinden.
  • DAX-Abfragen von paginierten Berichten zu semantischen Modellen.

Das Drosselungsverhalten ist spezifisch für Fabric-Workloads

Obwohl die meisten Fabric-Produkte den zuvor erwähnten Regeln zur Drosselung folgen, gibt es einige Ausnahmen.

Zum Beispiel haben Fabric-Eventstreams viele Operationen, die jahrelang nach Beginn laufen können. Neue Eventstream-Operationen zu drosseln, würde keinen Sinn machen, daher reduziert Fabric stattdessen die Menge an CU-Ressourcen, die für die Offenhaltung des Streams bereitgestellt werden, bis die Kapazität wieder in gutem Zustand ist.

Eine weitere Ausnahme ist Real-Time Intelligence, das nicht in Echtzeit verfügbar wäre, wenn es die Operationen um 20 Sekunden verzögert. Daher wendet Real-Time Intelligence nicht die erste Drosselungsstufe mit 20-sekündigen Verzögerungen bei einer zukünftig verfügbaren Kapazität von 10 Minuten an. Echtzeitintelligenz wartet, bis die Ablehnungsphase bei 60 Minuten zukünftiger Kapazität liegt, um mit der Drosselung zu beginnen. Dieses Verhalten sorgt dafür, dass Sie auch in Zeiten hoher Nachfrage weiterhin in Echtzeit auftreten können.

Ebenso meldet Fabric fast alle Abläufe in der Kategorie Lagerhaus als Hintergrund, um die 24-Stunden-Glättung der Aktivitäten zu nutzen und die flexibelsten Nutzungsmuster zu ermöglichen. Das Klassifizieren aller Data Warehouses als Hintergrund verhindert, dass Spitzen in der CU-Auslastung zu schnell Drosselungen auslösen. Manche Anfragen können eine Kette von Operationen auslösen, die von Fabric anders gedrosselt wird. Wenn eine interaktive Operation eine Kette auslöst, die eine Hintergrundoperation enthält, kann Fabric die Hintergrundoperation wie eine interaktive Operation drosseln.

Interaktive und Hintergrundklassifizierungen für Drosselung und Glättung

Vielleicht fällt dir auf, dass Fabric Operationen manchmal als interaktiv klassifiziert und sie als Hintergrund glättet, oder umgekehrt. Diese Unterscheidung entsteht, weil die Drosselungssysteme von Fabric die Drosselungsregeln anwenden müssen, bevor eine Anfrage ausgeführt wird.

Das Drosselungssystem versucht, Vorgänge bei der Übermittlung genau zu kategorisieren. Wenn ein Vorgang mit der Ausführung beginnt, werden detailliertere Informationen verfügbar, die die Kategorisierung ändern. In unklaren Fällen stuft das Throttling-System Vorgänge als Hintergrundvorgänge ein, was in deinem Interesse liegt.

Nachverfolgen von Überschreitungen und abgelehnten Operationen

Um zu sehen, ob Ihre Kapazität überlastet ist, sehen Sie sich das Nutzungsdiagramm in der Microsoft Fabric Capacity Metrics App an. Eine Spitze, die über die Linie geht, zeigt eine Überlastung an. Um die Überschreitung weiter zu untersuchen, führen Sie einen Drilldown zur Zeitpunktseite durch. Dann überprüfen Sie sowohl Ihre interaktiven als auch Ihre Hintergrundoperationen, um herauszufinden, welche die Überschläge verursacht haben.

Da eine Auslastung über 100% nicht automatisch Drosselung bedeutet, verwenden Sie die Drosselungstabelle , wenn Sie Überschläge bewerten. Öffne dann eine Tabelle, die Minuten bis zum Burndown anzeigt, eine Grafik mit Add, Burndown und kumulativem Prozentsatz und mehr. „Minuten zum Burndown“ schätzt, wie lange Burndown dauern würde, wenn keine weiteren Vorgänge in der Kapazität auftreten.

Animation, die die Drillthrough-Option für einen ausgewählten Zeitpunkt anzeigt.

Um einen visuellen Verlauf von Kapazitätsüberlastungen, einschließlich Übertrags-, kumulativer und Burndown-Daten zur Auslastung, anzuzeigen, wechseln Sie zur Registerkarte Overages. Ändern Sie die Anzeigeskala der Überziehungsansicht auf 10 Minuten, 60 Minuten bzw. 24 Stunden.

Animation, die die Crossfilterung zwischen dem Ribbondiagramm mit mehreren Metriken und dem Diagramm zum CU-Prozentsatz im Zeitverlauf zeigt.

Der Microsoft Fabric Capacity Metrics App-Drilldown zeigt Operationen, die Fabric während eines Drosselungsereignisses abgelehnt hat. Es gibt nur begrenzte Informationen über diese Operationen, weil sie nie begonnen haben. Sie können das Produkt, den Benutzer, die Operations-ID und die Uhrzeit der Anfrage sehen. Wenn Fabric eine Anfrage ablehnt, erhalten Endnutzer eine Fehlermeldung, die sie auffordert, es später erneut zu versuchen.

Abrechenbare und nicht abrechenbare Rechenressourcen bei der Berechnung der Drosselung

Wenn Sie die Kapazitätsauslastung in der Kapazitätsmetriken-App überprüfen, können einige Vorgänge abgerechnet werden, und andere sind nicht abrechnend. Berechnungen zur Drosselung umfassen nur abrechenbare Vorgänge. Einige Vorschaufunktionen können nicht abrechenbare Operationen erzeugen. Nutzen Sie nicht abrechenbare Operationen, um frühzeitig zu planen und Ihre Kapazität richtig zu dimensionieren, für den Zeitpunkt, zu dem diese Vorschaufunktionen abrechenbar werden.