Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Fabric Runtime je platforma integrovaná do Azure založená na Apache Sparku, ktorá umožňuje vykonávanie a správu dátového inžinierstva a dátovej vedy. Kombinuje kľúčové komponenty z interných aj open-source zdrojov, čím zákazníkom poskytuje komplexné riešenie. Pre jednoduchosť označte Fabric Runtime poháňaný Apache Spark ako Fabric Runtime.
Hlavné súčasti CLR služby Fabric:
Apache Spark – výkonná knižnica distribuovanej computingu typu open-source, ktorá umožňuje rozsiahle úlohy v oblasti spracovania údajov a analýzy. Apache Spark poskytuje všestrannú a vysokovýkonnú platformu na prácu s dátovým inžinierom a dátovými vedami.
Delta Lake – open-source ukladací priestor, ktorý prináša transakcie ACID a ďalšie funkcie spoľahlivosti údajov do Apache Spark. Delta Lake integrovaná do služby Fabric Runtime zlepšuje možnosti spracovania údajov a zabezpečuje konzistentnosť údajov v rámci viacerých súbežných operácií.
Native Execution Engine – transformačné vylepšenie pre pracovné záťaže Apache Spark, ktoré prináša výrazné zlepšenie výkonu priamym vykonávaním Spark dotazov na infraštruktúre lakehouse. Integrovaná bez problémov, nevyžaduje žiadne zmeny kódu a zabraňuje viazaniu na dodávateľa. Podporuje formáty Parquet aj Delta naprieč Apache Spark API v Runtime 1.3 (Spark 3.5) a Runtime 2.0 (Spark 4.1).
Podporovaní operátori sú presúvaní zo Spark založeného na JVM na vektorizovanú C++ vykonávaciu cestu cez Apache Gluten a Velox, čím poskytujú stĺpcové, SIMD-akcelerované spracovanie s natívnou podporou pre formáty Parquet a Delta. Keď operátor nie je podporovaný, vykonávanie automaticky prejde späť na JVM založený Spark. V reprezentatívnych benchmarkoch (TPC-DS pri škálovacom faktore 1000 pomocou Delty) engine dosiahol až šesťkrát vyšší výkon v porovnaní s open-source Sparkom, čo znamenalo približne 83% úspory výpočtových nákladov na pevne veľkom Fabric klastri.
Natívna cesta zachováva optimalizácie dotazov Fabric Spark, vrátane adaptívneho vykonávania dotazov, prepisov na základe nákladov, orezávania stĺpcov a pushdownu predikátov. Môžete prepínať natívne vykonávanie pre každú aplikáciu pomocou tejto konfigurácie
spark.native.enabled. Počas vykonávania notebookovej bunky Fabric Spark Advisor zobrazuje upozornenia v reálnom čase, keď sa spustenie vráti k JVM-based Sparku, čo vám pomáha diagnostikovať, kedy nie je aplikované natívne offloadovanie.Balíky predvolenej úrovne pre balíky Java/Scala, Python a R – balíky, ktoré podporujú rozličné programovacie jazyky a prostredia. Tieto balíky sa automaticky inštalujú a konfigurujú, takže vývojári môžu aplikovať svoje preferované programovacie jazyky na úlohy spracovania dát.
Fabric Runtime je postavený na robustnom open-source operačnom systéme, ktorý zabezpečuje kompatibilitu s rôznymi hardvérovými konfiguráciami a systémovými požiadavkami.
V nasledujúcej tabuľke nájdete komplexné porovnanie kľúčových komponentov, vrátane verzií Apache Spark, podporovaných operačných systémov, Java, Scala, Python, Delta Lake a R, pre runtime založené na Apache Spark v rámci platformy Fabric.
Prepitné
Vždy používajte najnovšiu, všeobecne dostupnú (GA) runtime verziu pre vašu produkčnú záťaž, ktorou je momentálne Runtime 2.0.
| Súčasť | Runtime 1.3 | Runtime 2.0 |
|---|---|---|
| fáza vydania |
GA | GA |
| Verzia Apache Spark | 3.5.5 | 4.1 |
| Operačný systém | Mariner 2.0 | Mariner 3.0 |
| Java verzia | 11 | 21 |
| Scala verzia | 2.12.17 | 2.13.16 |
| Python verzia | 3.11 | 3.13 |
| Verzia Delta Lake | 3,2 | 4.2 |
Navštívte Runtime 1.3 alebo Runtime 2.0 a preskúmajte detaily, nové funkcie, vylepšenia a scenáre migrácie pre konkrétnu runtime verziu.
Optimalizácie tkaniny
V Fabric implementácie zahŕňajú implementácie Spark aj Delta Lake optimalizácie a funkcie špecifické pre platformu. Tieto funkcie využívajú natívne integrácie v rámci platformy. Všetky tieto funkcie môžete vypnúť, aby ste dosiahli štandardnú funkcionalitu Spark a Delta Lake. Služba Fabric Runtimes pre Apache Spark zahŕňa:
- Kompletná open-source verzia Apache Spark.
- Kolekcia takmer 100 vstavaných jedinečných vylepšení výkonu dotazov. Tieto vylepšenia zahŕňajú funkcie, ako je ukladanie do vyrovnávacej pamäte na oblasti (povolenie vyrovnávacej pamäte oblasti FileSystem na zníženie volaní metastore) a Krížové pripojenie k projekcii skalárneho poddotazu.
- Vstavaná inteligentná vyrovnávacia pamäť.
V rámci Fabric Runtime pre Apache Spark a Delta Lake slúžia natívne schopnosti písania dvom kľúčovým účelom:
- Ponúka odlišný výkon pri písaní vyťažení, čo optimalizuje proces písania.
- Štandardne používajú V-order optimalizáciu súborov Delta Parquet. Optimalizácia Delta Lake V-order je kľúčová pre dosiahnutie vynikajúceho čítacieho výkonu naprieč všetkými motormi Fabric. Ak chcete lepšie pochopiť, ako funguje a ako ho riadiť, pozrite si optimalizáciu tabuliek Delta Lake a V-order.
Podpora viacerých modulov runtime
Fabric podporuje viacero runtimeov, takže medzi nimi môžete prepínať a znížiť riziko problémov s kompatibilitou alebo prerušení.
Poznámka
Spark runtime obsahuje konkrétnu verziu Python ako súčasť svojej sady komponentov. Napríklad Runtime 1.3 obsahuje Python 3.11. Táto verzia Python je oddelená od jadra Python notebooku, ktoré vyberáte pre čisto Python notebooky. Pre životný cyklus jadra Python notebooku pozri runtime Python notebook a životný cyklus jadra v Fabric.
Predvolene všetky nové pracovné priestory momentálne používajú Runtime 1.3.
Ak chcete zmeniť verziu modulu runtime na úrovni pracovného priestoru, prejdite na nastavenia pracovného priestoru>nastavenia Dátové inžinierstvo/veda>Spark. Na karte Environment vyberte požadovanú verziu modulu runtime z dostupných možností. Výberom položky Uložiť potvrďte výber.
Po tejto zmene všetky systémom vytvorené položky v pracovnom priestore, vrátane jazerných domov, popisov úloh v Sparku a zápisníkov, používajú novo vybranú runtime verziu na úrovni pracovného priestoru od ďalšej Spark session. Ak momentálne používate zápisník s existujúcou reláciou na prácu alebo akúkoľvek aktivitu súvisiacu s jazerným domom, táto Spark relácia pokračuje tak, ako je. Avšak od ďalšej relácie alebo úlohy platí vybraná runtime verzia.
Ak chcete zmeniť čas behu na úrovni predmetu Environment , vytvorte nový predmet Environment alebo otvorte existujúci. V rozbaľovacom menu Runtime vyberte požadovanú runtime verziu z dostupných možností, vyberte Save, a potom Publish svoje zmeny. Ďalej môžete použiť tento Environment predmet s vaším Notebook alebo Spark Job Definition.
Dôsledky zmien modulu runtime v nastaveniach Spark
Systém migruje všetky nastavenia Spark. Ak však systém zistí, že nastavenie Spark nie je kompatibilné s Runtime B, zobrazí sa varovné hlásenie a neimplementuje toto nastavenie.
Dôsledky zmien modulu runtime v správe knižnice
Systém správy knižníc migruje všetky knižnice z Runtime A do Runtime B, vrátane verejných aj vlastných runtimeov. Ak verzie Python a R zostanú rovnaké, knižnice fungujú správne. Avšak pri JAR-och je značná šanca, že nebudú fungovať kvôli zmenám závislostí a ďalším faktorom, ako sú zmeny v Scale, Java, Spark a operačnom systéme.
Ste zodpovedný za aktualizáciu alebo výmenu knižníc, ktoré nefungujú s Runtime B. Ak nastane konflikt, čo znamená, že Runtime B obsahuje knižnicu pôvodne definovanú v Runtime A, systém správy knižníc sa pokúsi vytvoriť potrebnú závislosť pre Runtime B na základe vašich nastavení. Avšak stavebný proces zlyháva, ak dôjde ku konfliktu. V error logu môžete vidieť, ktoré knižnice spôsobujú konflikty a upraviť ich verzie alebo špecifikácie.
Inovácia protokolu Delta Lake
Funkcie Delta Lake sú vždy spätne kompatibilné, čo zabezpečuje, že tabuľky vytvorené v nižšej verzii Delta Lake môžu bezproblémovo komunikovať s vyššími verziami. Avšak, keď povolíte určité funkcie (napríklad použitím tejto metódy delta.upgradeTableProtocol(minReaderVersion, minWriterVersion) ), môžete ohroziť kompatibilitu s nižšími verziami Delta Lake. V takýchto prípadoch je potrebné upraviť pracovné záťaže, ktoré odkazujú na vylepšené tabuľky, aby boli zarovnané s verziou Delta Lake, ktorá zachováva kompatibilitu.
Každá tabuľka Delta je spojená so špecifikáciou protokolu, ktorá definuje funkcie, ktoré podporuje. Aplikácie, ktoré interagujú s tabuľkou, či už na čítanie alebo zápis, sa spoliehajú na špecifikáciu tohto protokolu, aby zistili, či sú kompatibilné s funkciami tabuľky. Ak aplikácia nemá schopnosť spracovať funkciu uvedenú ako podporovanú v protokole tabuľky, nemôže z tejto tabuľky čítať ani do nej zapisovať.
Špecifikácia protokolu je rozdelená na dve odlišné komponenty: "read" protokol a "write" protokol. Pre viac informácií pozri Ako Delta Lake spravuje kompatibilitu funkcií?
Príkaz delta.upgradeTableProtocol(minReaderVersion, minWriterVersion) môžete spustiť v prostredí PySpark, ako aj v Spark SQL a Scale. Tento príkaz spustí aktualizáciu tabuľky Delta.
Keď túto aktualizáciu vykonáte, dostanete varovanie, že aktualizácia verzie protokolu Delta je nezvratný proces. Tento proces znamená, že po vykonaní aktualizácie ju už nemôžete vrátiť späť.
Aktualizácie verzií protokolu môžu potenciálne ovplyvniť kompatibilitu existujúcich čítačiek tabuliek Delta Lake, zapisovačov alebo oboch. Preto postupujte opatrne a aktualizujte verziu protokolu len vtedy, keď je to nevyhnutné, napríklad pri zavádzaní nových funkcií v Delta Lake.
Dôležité
Ak sa chcete dozvedieť viac o tom, ktoré verzie protokolov a funkcie sú kompatibilné naprieč všetkými Fabric zážitkami, pozrite si interoperabilitu formátov tabuliek Delta Lake.
Okrem toho overte, že všetky súčasné a budúce produkčné pracovné zaťaženia a procesy sú kompatibilné s tabuľkami Delta Lake pomocou novej verzie protokolu, aby sa zabezpečil plynulý prechod a zabránilo sa akýmkoľvek potenciálnym narušeniam.