Správa úloh

Platí pro:✅ SQL analytický bod a datový sklad v Microsoft Fabric

Tento článek popisuje architekturu a správu úloh v datovém skladu Fabric.

Zpracování dat

Koncový bod služby Warehouse a SQL Analytics sdílí stejnou základní architekturu zpracování. Při načítání nebo ingestování dat systém Fabric využívá distribuovaný motor, který zpracovává jak malé, tak velké datové a výpočetní funkce.

Systém zpracování je bezserverový, protože výpočetní kapacita backendu se automaticky přizpůsobuje nahoru i dolů, aby splnila požadavky pracovního zatížení.

Diagram modulu SQL

Když se odešle dotaz, front-end SQL (FE) provede optimalizaci dotazů a určí nejlepší plán na základě velikosti a složitosti dat. Po vygenerování plánu se předá modulu DQP (Distributed Query Processing). DQP orchestruje distribuované spouštění dotazu rozdělením dotazu na menší dotazy, které se spouští na back-endových výpočetních uzlech. Každý malý dotaz je úkol a představuje distribuovanou jednotku spouštění. Čte soubory z OneLake, spojuje výsledky z jiných úkolů, seskupuje nebo třídí data načtená z jiných úkolů. Pro úlohy příjmu dat také zapisuje data do správných cílových tabulek.

Při zpracování dat se výsledky vrátí do front-endu SQL pro poskytování služeb uživateli nebo volající aplikaci.

Elasticita a odolnost

Kapacita výpočtu na back-endu těží z výhod architektury rychlého nasazení. I když pro přiřazení zdrojů neexistuje žádná smlouva SLA, obvykle se do několika sekund získávají nové uzly. Jak roste poptávka po prostředcích, nové úlohy využívají škálovanou kapacitu. Škálování je online operace a zpracování dotazů je nepřerušované.

Diagram znázorňující rychlé zřizování prostředků

Systém je odolný proti chybám a pokud uzel není v pořádku, operace spuštěné na uzlu se znovu distribuují do uzlů, které jsou v pořádku pro dokončení.

Koncový bod analýzy Warehouse a SQL poskytují elasticitu kapacity, která umožňuje úlohám využívat více prostředků pro lepší výkon, a prostřednictvím optimalizace pomáhají zákazníkům, kteří během špičky vytvářejí náhlé zvýšení, a v jiných obdobích mají nevyužitou kapacitu. Vyhlazování zjednodušuje správu kapacity rozložením vyhodnocení výpočetních prostředků, aby se zajistilo bezproblémové a efektivní spouštění úloh zákazníků.

Plánování a zajištění zdrojů

Plánovač distribuovaného zpracování dotazů funguje na úrovni úlohy . Dotazy jsou reprezentovány plánovači jako směrovaný acyklický graf úkolů (DAG). Tento koncept je pro uživatele Sparku známý. DAG umožňuje paralelismus a souběžnost, protože úkoly, které na sobě nezávisí, je možné provádět současně nebo v libovolném pořadí.

Při příchodu dotazů se jejich úkoly plánují na základě principů FIFO (first-in-first-out). Pokud je nečinná kapacita, plánovač může k optimalizaci souběžnosti použít přístup, který nejlépe vyhovuje.

Když plánovač identifikuje tlak na zdroje, vyvolá operaci škálování. Škálování se spravuje samostatně a s rostoucí souběžností roste back-endová topologie. Vzhledem k tomu, že získání uzlů trvá několik sekund, systém není optimalizovaný pro konzistentní podsekundový výkon dotazů, které vyžadují distribuované zpracování.

Když zatížení klesá, back-endová topologie se zmenší a uvolní prostředky zpět do regionu.

Izolace výpočetního poolu

Platí pro:✅ Sklad v Microsoft Fabric

Přiřazená kapacita SKU k pracovnímu prostoru určuje celkový výpočetní výkon dostupný pro jeho koncový bod SQL Analytics. Tento výpočetní objekt se rovnoměrně rozdělí (50/50) do dvou izolovaných fondů zdrojů, aby bylo možné využít dotazy uživatelů:

  • SELECT Pool – zpracovává všechny SELECT dotazy.
  • Fond bez příkazu SELECT – zpracovává všechny dotazySELECT , jako jsou operace ETL nebo příjmu dat.

Každý fond se škáluje nezávisle na vyžádání dotazů, ale nikdy nepřekročí 50% celkového výpočetního výkonu koncového bodu analýzy SQL. Toto oddělení zabraňuje kolizím prostředků a zajišťuje, aby úlohy příjmu dat běžely na vyhrazených výpočetních prostředcích optimalizovaných pro ETL, aniž by to mělo vliv na dotazy pro čtení. Výsledkem je vyšší výkon a spolehlivost obou typů dotazů.

Diagram znázorňující izolaci činností příjmu dat

Poznámka:

Izolace fondu pomocí SELECT a ne-SELECT je výchozí autonomní řízení zátěže použité pro každý pracovní prostor. Správci pracovního prostoru to ale můžou přizpůsobit pomocí vlastních fondů SQL.

Přednášky

Koncový bod Warehouse a SQL Analytics má limit uživatelských relací 2048 na pracovní prostor. Po dosažení tohoto limitu se vrátí chyba: The user session limit for the workspace is 2048 and has been reached.

Poznámka:

Vzhledem k tomu, že Microsoft Fabric je platforma SaaS, existuje mnoho systémových připojení, která běží, aby se prostředí průběžně optimalizovalo. DMVs zobrazují jak systémové, tak uživatelské relace. Další informace najdete v tématu Monitorování připojení, relací a požadavků pomocí zobrazení dynamické správy.

Osvědčené postupy

Pracovní prostor Microsoft Fabric poskytuje hranici přirozené izolace distribuovaného výpočetního systému. Úlohy můžou tuto hranici využít ke správě nákladů i výkonu.

Klávesové zkratky OneLake je možné použít k vytvoření replik tabulek jen pro čtení v jiných pracovních prostorech k distribuci zatížení napříč několika moduly SQL a vytvořením hranice izolace. To může efektivně zvýšit maximální počet relací provádějících dotazy určené pouze pro čtení.

Diagram znázorňující izolaci dvou pracovních prostorů, například pracovní prostor Finance a Marketing