Ismerd meg a Fabric kapacitáskorlátozási szabályzatát

Korlátozás lép fel, amikor a műveletek több kapacitásegység-másodpercet (CU-s) használnak fel, mint amennyit a kapacitás-SKU lehetővé tesz. A kapacitásegységek mérik az egyes SKU számítási kapacitását. A túl sok korlátozás csökkentett végfelhasználói élményt eredményezhet. A Microsoft Fabric-bérlő több kapacitást is létrehozhat, és munkaterületeket rendelhet hozzá egy adott kapacitáshoz számlázási és méretezési célokra.

Fabric a kapacitás szintjén alkalmazza a throttlinget. Míg egy kapacitás vagy munkaterületek készlete csökkenhet a túlterhelés miatt, más kapacitások normálisan működhetnek. Amikor egy kapacitás olyan funkciókat generál, mint a OneLake termékek, míg egy másik kapacitás elfogyasztja azokat, a fogyasztói kapacitás korlátozó állapota határozza meg, hogy korlátozza-e a hívásokat az eszközre.

Hogyan egyensúlyozza a Fabric a teljesítmény és a megbízhatóság között

A Fabric gyors teljesítményt nyújt ügyfeleinek. A más platformokon több percet is igénybe vehető feladatok csak másodpercek alatt fejeződhetnek be a Fabricen. A nagy műveletek bármely napszakban működhetnek gondos ütemezés nélkül, mert a Fabric hosszabb időre osztja el a számítási adatokat, anélkül, hogy lelassítaná a folyamatot. A Fabric ezt a viselkedést beépített bursting és simítás segítségével teszi lehetővé. Ezek a funkciók lehetővé teszik a kapacitások önkezelését és javítását, amikor az átmeneti használati hullámok más rendszerek meghibásodnását vagy lassulását okoznák.

Bursting: Több számítási kapacitást használjunk, mint amennyit a SKU biztosít

A gyors teljesítmény érdekében a Fabric burstinget használ, hogy a műveleteket a lehető leggyorsabban végezze. Bursting esetén a műveletek átmenetileg több számítási kapacitást használhatnak, mint amennyi az adott kapacitás-SKU-hoz ki van építve. A burst miatt várakozás nélkül is kapsz eredményt. Egy kisebb kapacitás is képes a bursting használatával nagyobb műveletek végrehajtására, amelyekhez általában drágább kapacitásra lenne szükség.

Simítás: Oszd el a CU-használatot a következő időpontok között

Annak érdekében, hogy ne érjen hátrány, amikor a műveletek előnyt kovácsolnak az időszakos terhelési csúcsokból, a Fabric kisimítja, vagyis hosszabb időtávon átlagolja egy művelet CU-használatát. Ez a működés biztosítja, hogy folyamatosan gyors teljesítményt élvezhess teljesítménykorlátozás nélkül.

A simítás elosztja a CU-felhasználást a jövőbeli időpontokban. A Fabric környezetben lévő időpontok 30 másodperc hosszúak. A következő 24 órában 2 880 időpontot foglal magában. A Fabric automatikusan kezeli az összes elfogyasztott CU-t minden időpontban.

Az akció kihasználási típusa határozza meg, hány időpontot használ a Fabric a simításhoz. Tudnivalók a Fabric-műveletekről.

  • A Fabric legalább öt perc alatt simítja az interaktív műveleteket, és akár 64 percig is, attól függően, mennyi CU-használatot fogyasztanak.
  • A Fabric 24 órán át simítja a háttérműveleteket, mivel ezek általában hosszú futásidővel és nagy CU-fogyasztással rendelkeznek.

A simítás miatt egy művelet CU-használatának csak egy része vonatkozik minden egyes időpontra, ami összességében csökkenti a korlátozást. A simított CU-használat a műveletek futása közben halmozódik fel. A jövőbeli kapacitás, vagyis a jövőbeli időpontokban elérhető CU-k, fedezi a kisimított használatot, mivel a kapacitás folyamatosan működik.

A szétbontás és a simítás együttműködik, hogy megkönnyítse a munkavégzést. Például általában időt töltesz a munkák ütemezésével és a nap szétosztásával is. A simítással a Fabric 24 órára osztja el a háttérfeladatok számítási költségét. Ennek eredményeként az ütemezett feladatok egyszerre futhatnak anélkül, hogy bármilyen kiugrást okoznának, amelyek egyébként blokkolnák a feladatok elindítását. Ugyanakkor élvezheted a folyamatos gyors teljesítményt anélkül, hogy várnod kellene a lassú munkák befejezésére, vagy időt pazarolnál a munkamenetek kezelésében.

Feljegyzés

A Fabric nem támogatja a burstinget és a smoothingot, ha egy kapacitásadminisztrátor engedélyezi az autoscale-számlázást a Sparkhoz. Ebben a helyzetben a Spark használata fizet-a-be módban működik, és a bursting és a simítás fogalmai nem érvényesek.

A fojtószelep-triggerek és a szabályozás fázisai

Annak ellenére, hogy a kapacitások beépített simítással rendelkeznek, amely csökkenti a kihasználtság csúcsainak hatását, túl sok művelet futtatásával továbbra is túlterhelhető a kapacitás.

A kapacitás automatikusan korlátozza az új műveleteket, ha túlterhelt. A szabályozás fokozatos lépésekben történik, így minimalizálható a fontos feladatokra, például az adatfrissítésekre gyakorolt hatás.

Még ha egy kapacitás 100% kihasználtság felett is működik, a Fabric nem alkalmazza azonnal a szabályozást. Ehelyett a kapacitás túllépés elleni védelmet biztosít, amely lehetővé teszi, hogy a jövőbeli kapacitás 10 percét felhasználd teljesítménykorlátozás nélkül. Ez a viselkedés korlátozott beépített védelmet nyújt a túlterhelésekkel szemben, miközben a felhasználóknak következetesen gyors teljesítményt nyújt megszakítások nélkül.

A szabályozás akkor kezdődik, amikor egy kapacitás a következő 10 percre felhasználja az összes CU-erőforrását. A korlátozás első fázisa 20 másodperces késleltetést vezet be az új interaktív műveleteknél. A korlátozás második fázisa elutasítja az új interaktív műveleteket, ha egy kapacitás kimeríti az elkövetkező egy órára rendelkezésre álló összes CU-erőforrását. Ebben a fázisban háttérműveletek elindulhatnak és futhatnak. A korlátozás harmadik fázisa minden új kérést – az interaktív és a háttérben futó kéréseket egyaránt – elutasít, amikor a kapacitás a következő 24 órára rendelkezésre álló összes CU-erőforrást felhasználja. A kapacitás továbbra is korlátozza a kéréseket, amíg ki nem fizeted a felhasznált CU-kat.

Feljegyzés

A Microsoft igyekszik javítani az ügyfelek rugalmasságát a szolgáltatás használatában, miközben kiegyensúlyozza az ügyfélkapacitás-használat kezelésének szükségességét. Emiatt előfordulhat, hogy a Microsoft módosítja vagy frissíti a Fabric szabályozási szabályzatát.

Az alábbi táblázat összefoglalja a throttling trigger-eket és szakaszokat.

Használat Szabályzatkorlát Tapasztalati hatás
Használat <= 10 perc Túlhasználat elleni védelem A feladatok 10 percnyi jövőbeli kapacitáshasználatot használhatnak fel szabályozás nélkül.
10 perc < használat <= 60 perc Interaktív késés Fabric 20 másodperccel késlelteti a felhasználók által kért interaktív feladatokat a beküldéskor.
60 perc < használat <= 24 óra Interaktív elutasítás Fabric elutasítja a felhasználók által kért interaktív feladatokat.
Használat > 24 óra Háttér elutasítása Fabric minden kérést elutasít.

Példa: Hogyan csökkenti a simítás a faggadozást egy háttérműveletnél

Íme egy szemléltető példa arra, hogyan működik a simítás egy háttérműveletnél, amely 1 CU órát fogyasztott (a használata 1 CU-val egyenértékű volt 1 órára). A Fabric 24 órán át simítja a háttérműveleteket. Egy háttérművelet hozzájárulása egy adott időpontban a művelet CU-óráinak és a SKU CU-óráinak a simítási időszakra vetített hányadosa. Egy F2 2 CU-t biztosít, vagyis napi 48 CU órát (2 CU-t 24 órával szorozva). Ez a feladat minden időponthoz 1 CU-óra / 48 CU-óra = ~2,1%-kal járul hozzá. A 10 perces és 60 perces korlátozási határértékekre gyakorolt hatás szintén ~2,1%.

A példát alátámasztó részletek:

1 CU óra = 3 600 CU másodperc (1 CU szorozva 60 perc/órával és 60 másodperccel percenként).

Minden időpont 30 másodperces. 24 óra alatt 2880 időpont van (24 óra * 60 perc * 2 időpont percenként).

Mivel a simítás 24 órára osztja el a 3 600 CU másodpercet, a munka minden 30 másodperces időponthoz 3 600 CU másodpercet / 2 880 időpontot ad hozzá. Tehát 1,25 CU másodpercet ad hozzá időpontonként.

A 10 perces szabályozási százalék a következő 10 percnyi kapacitás-üzemidő alatt elérhető összes CU alapján kerül meghatározásra.

Egy F2 kapacitás 2 CU-t biztosít. Minden időpillanatban egy F2 2 CU-val rendelkezik, ami 30 másodperccel szorozva 60 CU-másodpercnyi számítási kapacitást jelent.

A háttérfeladat hozzájárulása bármely egyes időponthoz 1,25 CU másodperc / 60 CU másodperc = ~2,1% az egyes időpontból.

10 perc alatt az F2 2 CU-val rendelkezik, ami 600 másodperccel megszorozva 1 200 CU-másodpercnyi számítási kapacitást jelent.

A háttérben futó feladatnak az a része, amelyet a simítás a kapacitás következő 10 percére oszt el, 1,25 CU másodperc szorozva 20 időpontra = 25 CU másodperc.

Tehát a 10 perces korlátozási százalék 25 CU-másodperc / 1 200 CU-másodperc = ~2,1%.

Hasonlóképpen a háttérfeladat 60 perces szabályozás százalékos hatása is ~2,1%.

Bár a háttérművelet több CU-t fogyasztott, mint amennyi a következő 10 perces időszakban rendelkezésre áll (a rendelkezésre álló mennyiség hatszorosát fogyasztotta), az F2-kapacitás nem kerül korlátozásra, mert a smoothing 24 órán keresztül osztja el az összes CU-t. Simítás miatt a felhasznált számítási egységek csak kis része vonatkozik az egyes időpontokra.

Többlet, átvitel és leépítés

Ha a műveletek egyetlen időponton több kapacitást használnak, mint amennyit a SKU támogat, a rendszer túlterhelést számít ki. A rendszer a túlterheléseket kiszámítás után simítja ki. Ha túlterhelések meghaladják a megengedett 10 perces korlátozási ablakot, akkor azok előrehaladó CU-vá válnak.

A túlhasználat elleni védelem biztosítja, hogy a kapacitás korlátozása csak akkor lépjen érvénybe, amikor a 10 perces szabályozási időablak megtelt. Csökkenti az interaktív késések gyakoriságát, amelyeket az ideiglenes kihasználtsági ugrások okoznak.

A Fabric minden következő időpontra alkalmazza a carryforward CU-kat. Ha egy időpont nincs teljesen kihasználva, a fel nem használt CU-k csökkentik az átvitt CU-k számát. Ezt a csökkenést burndownnak nevezik.

A korlátozás alkalmazása mindaddig folytatódik, amíg a nem használt kapacitás meg nem fizeti az összes átvitt kapacitásegységet.

Szabályozási kapacitások monitorozása

A kapacitás adminisztrátorok e-mailes értesítéseket állíthatnak be kapacitásküszöbértékekre a Kapacitás Áttekintési Események segítségével. A rendszergazdák a kapacitásmetrika alkalmazással is áttekinthetik a kapacitásuk szabályozási szintjeit.

Kapacitás jobb méretezése és optimalizálása

A folyamatosan magas szabályozási szintek azt jelzik, hogy több kapacitás terheléselosztására van szükség, vagy növelni kell a kapacitás termékváltozatának méretét. F SKU-knál a kapacitást is lehet skálázni. Az F256 és F512 határának ellentétes oldalán lévő SKU-k közötti skálázás lassabb élményt eredményezhet.

Annak jelzése, hogy a kapacitásszabályozás folyamatban van

Amikor egy kapacitás elutasítja a kéréseket, konkrét hibakódokat és hibaszöveget látunk:

  • Állapotkód CapacityLimitExceeded
  • Hibaüzenet: Your organization's Fabric compute capacity has exceeded its limits. Try again later.
  • Hibaüzenet: Cannot load model due to reaching capacity limits

Feljegyzés

A lassú teljesítmény gyakran egy tárgy tervezésének köszönhető. A kapacitásszabályozás miatt csak néha lassú a teljesítmény.

Ha egy kapacitás túlterhelt, a kapacitás adminisztrátor a Fabric kapacitásmetrikák alkalmazásával megerősítheti a korlátozás tényét.

  • A Rendszeresemények tábla a Számítás lapon a szabályozási események előzményeit mutatja be.
  • A Számítási lapon látható szabályozási diagramok azt mutatják, hogy a simított használat túllépi az egyik szabályozási korlátot.

A teljesítmény korlátozásának megszüntetése, amikor ez bekövetkezik

A kapacitások öngyógyítóak, így mindig megvárhatja, amíg a túlterhelési állapot véget ér, mielőtt új kéréseket küld.

Azonban a gyorsabb gáz megállításához a következő stratégiákat használhatod.

Az F SKU kapacitások használata esetén a teljesítménykorlátozás leállítása:

  • Ideiglenesen növelje a termékváltozatot. Az SKU növelésével gyorsabban csökken a feldolgozandó teher, mivel minden időpontban több kihasználatlan kapacitás áll rendelkezésre.
  • Szüneteltesd, majd indítsd újra a kapacitást. A kapacitás szüneteltetése számlázási eseményt eredményez a halmozott jövőbeli kapacitáshasználathoz. Amikor egy kapacitás elindul vagy újraindul, a kapacitás jövőbeli kihasználtsága nulla, így azonnal elfogadhatja az új műveleteket. A kapacitás szüneteltetése elérhetetlenné teheti a kapacitáshoz rendelt tartalmat, ezért először győződjön meg arról, hogy a kapacitás nincs használatban.
  • A kapacitástúllépési díjszámlázás megakadályozhatja a korlátozás érvénybe lépését is; azonban a normál kapacitásdíj háromszorosába kerül. További információért lásd: Kapacitástúllépés engedélyezése.

P termékváltozat-kapacitások használata esetén a szabályozás leállítása:

A repülés közbeni műveletek nincsenek korlátozva

A szabályozás csak a kapacitás szabályozásának megkezdése után kért műveleteket érinti. Minden művelet, beleértve a korlátozás kezdete előtt elküldött, hosszú ideig futó műveleteket is, végigfuthat. Ez biztosítja, hogy a műveletek még a CU-használat megugrásakor is befejeződjenek.

Összetett terhelés korlátozás elleni védelem

A Hálóban az egyik művelet gyakran más elemeket vagy számítási feladatokat aktivál a befejezéshez. Számos példa létezik, de általában egy jelentés megtekintése. A jelentés minden vizualizációja lekérdezést futtat egy mögöttes szemantikai modellen. A szemantikai modell az OneLake-ből is olvashat adatokat, hogy megadja a lekérdezés eredményét. Mindegyik kérés láncot alkot.

Ha a hívások láncba kapcsolódnak, fennáll a halmozott szabályozás kockázata, ami akkor fordul elő, ha a Fabric ugyanarra a kérelemre egynél többször alkalmaz szabályozást. A Fabric beépített védelemmel rendelkezik az összetett korlátozással szemben, amely csökkenti az összetett korlátozás valószínűségét. A munkaterhelések is bekapcsolódhatnak erre a védelemre.

Amikor a munkaterhelések támogatják a komplex throttling védelmet, a Fabric csak egyszer korlátozza a kérést minden olyan kapacitásra, amely részt vesz a láncban. A terhelés-korlátozási döntés akkor történik, amikor a kérelem megkezdésekor és a lánc összes műveletére vonatkozik.

Ha egy lánc egynél több kapacitásra támaszkodik, akkor mindegyik kapacitás egyszer alkalmazza a szabályozását az általa a láncban elsőként fogadott kérés esetén.

A következő számítási feladatok támogatják az összetett korlátozást:

  • Szemantikai modellek, amelyek más szemantikai modellekhez kapcsolódnak a DirectQuery használatával.
  • DAX-lekérdezések lapszámozott jelentésekből szemantikai modellekbe.

A korlátozás viselkedése a Fabric számítási feladataira jellemző

Bár a legtöbb Fabric-termék követi a korábban említett korlátozási szabályokat, léteznek kivételek.

Például a Fabric eseményfolyamainak sok művelete van, amelyek évekig működhetnek a kezdetük után. Az új eseményfolyam-műveletek korlátozása nem lenne értelmes, ezért a Fabric inkább csökkenti az adatfolyam nyitva tartására lefoglalt CU-erőforrások mennyiségét, amíg a kapacitás ismét megfelelő állapotba nem kerül.

Egy másik kivétel a Real-Time Intelligencia, amely nem lenne valós időben, ha 20 másodperccel késleltetné a műveleteket. Ennek eredményeképpen a Real-Time Intelligence nem alkalmazza a korlátozás első szakaszát, amely 20 másodperces késleltetéseket tartalmaz a jövőbeli kapacitás 10 perces időintervallumainál. A Real-Time Intelligence megvárja az elutasítási fázist, amely 60 perc jövőbeli kapacitásnál kezdődik, hogy megkezdje a szabályozást. Ez a viselkedés biztosítja, hogy továbbra is élvezhesd a valós idejű teljesítményt még nagy kereslet idején is.

Hasonlóképpen, a Fabric szinte minden műveletet a Raktár kategóriában háttérként sorol be, hogy kihasználja a tevékenység 24 órás kiegyenlítését, és lehetővé tegye a legrugalmasabb használati mintákat. Az összes adattárház „háttérként” való besorolása megakadályozza, hogy a CU használat csúcsértékei túl gyorsan kiváltsák a korlátozást. Néhány kérés olyan műveleti láncot indíthat el, amelyet a Fabric másképp korlátoz. Amikor egy interaktív művelet egy láncot indít, amely háttérműveletet is tartalmaz, a Fabric képes korlátozni a háttérműveletet interaktív műveletként.

Interaktív és háttérbesorolások szabályozáshoz és simításhoz

Előfordulhat, hogy észreveszed: a Fabric időnként interaktívnak minősít bizonyos műveleteket, és háttérfolyamatként kezeli őket, vagy éppen fordítva. Ez a különbségtétel azért van, mert a Fabric korlátozást kezelő rendszereinek a korlátozási szabályokat még a kérés feldolgozásának megkezdése előtt kell alkalmazniuk.

A szabályozási rendszer a beküldéskor megpróbálja pontosan kategorizálni a műveleteket. Néha, amikor egy művelet elkezd futni, részletesebb információk válnak elérhetővé, amelyek megváltoztatják a kategorizálást. Kétértelmű esetekben a fojtási rendszer alapértelmezetten háttérműveletként sorolja be a műveleteket, ami az Ön szempontjából előnyösebb.

Túlhasználatok és elutasított műveletek nyomon követése

Ha szeretnéd megnézni, túlterhelt-e a kapacitásod, nézd meg a Microsoft Fabric Capacity Metrics alkalmazásban található Kihasználtsági táblázatot. A vonal fölötti csúcs túlhasználatot jelez. A túllépés további vizsgálatához fúrjon le az időpont oldalára. Ezután nézd át mind az interaktív, mind a háttérben lévő műveleteket, hogy lásd, mely okozták a túlterhelést.

Mivel a 100% feletti kihasználtság nem jelenti automatikusan a korlátozást, használd a Throttling táblázatot a túlterhelések értékelésekor. Innen nyisson meg egy táblázatot, amely a leégésig hátralévő perceket mutatja, valamint egy diagramot a hozzáadásról, a leégésről és a kumulatív százalékról, és még sok minden másról. A leégés percek alatt megbecsüli, hogy mennyi ideig tart a leégés, ha nem történik több művelet a kapacitásban.

A kijelölt időpont részletezési beállítását bemutató animáció.

A kapacitás túlhasználatának vizuális történetének megtekintéséhez, beleértve a felhasználási adatok átvitelét, összesítését és égetését, látogass el az Overages fülre. Változtasd meg a túlterhelési vizuális skálát, hogy 10 percet, 60 percet és 24 órát mutass.

Animáció, amely keresztszűrést mutat a többmetrikus szalagdiagram és a CU százalékos időbeli diagram között.

A Microsoft Fabric Capacity Metrics alkalmazás részletező nézete megmutatja a Fabric által egy fojtási esemény során elutasított műveleteket. Korlátozott információ van ezekről a műveletekről, mert soha nem indultak el. Láthatod a terméket, a felhasználót, az üzemeltetési azonosítót és a kérés időpontját. Amikor a Fabric elutasít egy kérést, a végfelhasználók egy hibaüzenetet kapnak, amely arra kéri őket, hogy később próbálják újra.

Számlázható és nem számlázható számítási kapacitás a korlátozási számításokban

A kapacitásmetrikák alkalmazás kapacitáshasználatának áttekintésekor egyes műveletek számlázhatók, míg mások nem számlázhatók. A szabályozási számítások csak a számlázható műveleteket veszik figyelembe. Néhány előnézeti képesség nem számlázható műveleteket generálhat. Használj nem számlázható műveleteket, hogy előre tervezz, hogy megfelelően méretezz a kapacitásodat arra az időre, amikor ezek az előzetes funkciók számlázhatóvá válnak.