- Implementace architektury klient-server pomocí Spark Connect, která odděluje provádění clusteru od lokálního prostředí.
- Aktualizovaná podpora pro Javu 17, 21 a 25 spolu s povinným používáním Scaly 2.13 od verze 4.0.0.
- Flexibilita nasazení díky předpřipraveným binárním souborům pro závislosti Hadoop a Maven nebo instalaci přes PyPI.
Pokud pracujete ve světě velkých dat (Big Data), víte, že Apache Spark je prakticky standardem, pokud jde o zpracování obrovských objemů dat bleskovou rychlostí. S příchodem verze 4.2 se tento framework nejen posunul vpřed v optimalizaci výkonu, ale také udělal kvalitativní skok ve způsobu připojení ke clusterům, díky čemuž je vše mnohem flexibilnější a méně těžkopádné.
Nejsilnějším aspektem této aktualizace je bezpochyby to, jak vylepšili architekturu, takže nemusíme nosit celé běhové prostředí na svém lokálním počítači. Nyní, díky mnohem vyspělejší architektuře klient-server, můžeme spouštět složité procesy odkudkoli, aniž by se nám zhroutil počítač, delegovat těžkou práci na server a dostávat výsledky již zpracované.
Technické požadavky a kompatibilita s prostředím

Pro spuštění Sparku 4.2 je nezbytné si uvědomit, že podpora Javy je klíčová. Tato verze je kompatibilní s Javou 17, 21 a novějšími verzemi až do 25 , ačkoli je třeba poznamenat, že verze Javy 25 před 25.0.3 jsou již považovány za zastaralé. Pokud jde o programovací jazyk, standardem je nyní Scala 2.13 , která definitivně opouští verzi 2.12, takže pokud máte starší projekty, budete je muset migrovat.
Pro ty, kteří preferují Python, je vyžadována verze 3.10 nebo vyšší , zatímco R je podporováno od verze 4.0, ačkoli stojí za zmínku, že používání R vstupuje do fáze zastarávání. Operační systém není relevantní, protože Spark běží hladce jak na Windows, tak na UNIXových systémech (jako je cloudový Linux nebo macOS), za předpokladu, že máte správně nakonfigurovanou proměnnou JAVA_HOME nebo cestu PATH.
Možnosti instalace a nasazení
Při stahování Sparku máte několik možností v závislosti na vaší infrastruktuře. Nejběžnější je stažení předkonfigurovaných balíčků pro Hadoop , protože Spark používá své klientské knihovny ke správě HDFS a YARN. Pokud však máte velmi specifickou konfiguraci, můžete zvolit binární soubor „Hadoop free“ a nakonfigurovat cestu ke třídám sami.
Pokud jste vývojář, věci jsou jednodušší: uživatelé Javy a Scaly mohou integrovat framework pomocí souřadnic Maven a uživatelé Pythonu jej mohou nainstalovat přímo z PyPI . Pro odvážnější, kteří chtějí upravit jádro systému, je zde také možnost kompilovat Spark přímo ze zdrojového kódu.
Revoluce Spark Connect

A tady se věci začínají zajímat. Spark Connect je architektura, která se odchyluje od tradičního modelu, kde byli klient a server neoddělitelní. Klient je nyní odlehčenou vrstvou, která vytváří logický plán dotazů a odesílá ho prostřednictvím gRPC a Arrow na vzdálený server. Tento server je zodpovědný za analýzu plánu, jeho optimalizaci pomocí Catalystu a jeho spuštění v clusteru.
Nejlepší na tomto systému je, že klient již nemusí mít nainstalovanou celou infrastrukturu Sparku ani náročné lokální JVM. To nám umožňuje integrovat Spark do notebooků, IDE, webových služeb nebo dokonce agentů AI , aniž by se lokální verze Pythonu musela striktně shodovat s verzí clusteru. Výsledky se klientovi vracejí v dávkách Arrow , což neuvěřitelně zrychluje přenos dat.
Spouštění aplikací a interaktivní režim

Pro ty, kteří chtějí začít experimentovat, Spark obsahuje v adresáři řadu příkladů. examples/src/mainPro interaktivní spouštění aplikací v Pythonu použijte příkaz bin/pyspark Je to klíčový nástroj. Pokud dáváte přednost Scale nebo Javě, můžete použít bin/run-example <clase>, který interně spouští skript Spark-submit pro spuštění aplikace.
Existuje také možnost použití upraveného shellu Scala, což je ideální pro seznámení se s interním fungováním frameworku. Důležitým detailem je použití této možnosti --masterPokud děláte testy, je nejlepší použít místní pro jedno vlákno nebo místní abyste mohli využít více jader procesoru před přechodem do distribuovaného prostředí.
Vylepšení kompatibility a ekosystému
Verze 4.2 nezapomněla na „Spark Classic“. Bylo vynaloženo mnoho úsilí na odstranění mezer v kompatibilitě a zlepšení podpory pro... API pro RDD a dovolit to spark.read.* Přijímá datové rámce jako vstup. Kromě toho bylo optimalizováno šíření chyb, hlášení stavu a další funkce. Podpora režimu clusteru YARN.
Pokud jde o distribuci, je důležité ověřit, zda obrazy Dockeru mohou obsahovat software, který není ASF, proto je vhodné zkontrolovat jejich soubory Dockerfile. Pokud se z důvodu stability potřebujete vrátit k předchozím verzím, jsou k dispozici soubory release , i když se vždy doporučuje zkontrolovat stránku zabezpečení, abyste se vyhnuli známým zranitelnostem.
Tato nová verze upevňuje pozici Sparku jako extrémně všestranného nástroje, který díky oddělení klienta a serveru usnadňuje demokratizaci zpracování velkých dat. Díky aktualizované podpoře pro Javu a Scalu a mnohem plynulejší integraci s moderními vývojovými prostředími se stává logickou volbou pro jakoukoli škálovatelnou datovou analytiku, která hledá efektivitu a jednoduchost nasazení.

