- Pagpapatupad ng arkitektura ng client-server gamit ang Spark Connect na naghihiwalay sa pagpapatupad ng cluster mula sa lokal na kapaligiran.
- Na-update ang suporta para sa Java 17, 21 at 25, kasama ang mandatoryong paggamit ng Scala 2.13 simula noong bersyon 4.0.0.
- Kakayahang umangkop sa pag-deploy sa pamamagitan ng mga pre-packaged binary para sa Hadoop, Maven dependencies, o pag-install sa pamamagitan ng PyPI.
Kung nagtatrabaho ka sa mundo ng Big Data, malalaman mo na ang Apache Spark ay halos pamantayan pagdating sa pagproseso ng napakalaking dami ng data sa bilis ng kidlat. Sa pagdating ng bersyon 4.2, hindi lamang pinagbuti ng framework ang kakayahan nito upang ma-optimize ang performance, kundi gumawa rin ng isang husay na hakbang sa paraan ng pagkonekta natin sa mga cluster, na ginagawang mas flexible at hindi gaanong abala ang lahat.
Ang pinakamakapangyarihang aspeto ng update na ito ay walang dudang kung paano nila pinino ang arkitektura upang hindi na natin kailangang dalhin ang buong runtime environment sa ating lokal na makina. Ngayon, salamat sa isang mas mature na client-server architecture, maaari na nating ilunsad ang mga kumplikadong proseso mula saanman nang hindi nag-crash ang ating computer, na nagdedelegate ng mabibigat na gawain sa server at natatanggap ang mga resultang naproseso na.
Mga kinakailangan sa teknikal at pagiging tugma sa kapaligiran

Para mapagana at mapagana ang Spark 4.2, mahalagang maunawaan na napakahalaga ng suporta para sa Java. Ang bersyong ito ay tugma sa Java 17, 21, at hanggang 25 , bagama't tandaan na ang mga bersyon ng Java 25 bago ang 25.0.3 ay itinuturing nang lipas na. Tungkol sa wikang pamprograma, ang pamantayan ngayon ay Scala 2.13 , na tiyak na iniiwan ang bersyon 2.12, kaya kung mayroon kang mga lumang proyekto, kakailanganin mong ilipat ang mga ito.
Para sa mga mas gusto ang Python, kinakailangan ang bersyon 3.10 o mas mataas , habang ang R ay sinusuportahan mula bersyon 4.0 pataas, bagama't mahalagang tandaan na ang paggamit ng R ay papasok na sa isang yugto ng paghinto. Hindi mahalaga ang operating system, dahil ang Spark ay tumatakbo nang maayos sa parehong Windows at mga sistemang parang UNIX (tulad ng cloud Linux o macOS), basta't tama ang pagkaka-configure mo sa JAVA_HOME variable o sa PATH.
Mga opsyon sa pag-install at pag-deploy
Kapag nag-download ka ng Spark, mayroon kang ilang mga opsyon depende sa iyong imprastraktura. Ang pinakakaraniwan ay ang pag-download ng mga pre -configured na pakete para sa Hadoop , dahil ginagamit ng Spark ang mga client library nito upang pamahalaan ang HDFS at YARN. Gayunpaman, kung mayroon kang isang napaka-espesipikong configuration, maaari kang pumili ng "Hadoop free" binary at i-configure ang classpath nang mag-isa.
Kung ikaw ay isang developer, mas simple ang mga bagay-bagay: Maaaring i-integrate ng mga gumagamit ng Java at Scala ang framework gamit ang Maven coordinates , at maaaring i-install ito nang direkta ng mga gumagamit ng Python mula sa PyPI . Para sa mas adventurous na gustong baguhin ang core system, mayroon ding opsyon na i-compile ang Spark nang direkta mula sa source code.
Ang rebolusyon ng Spark Connect

Dito nagiging interesante ang mga bagay-bagay. Ang Spark Connect ay isang arkitektura na humihiwalay sa tradisyonal na modelo kung saan ang client at server ay hindi mapaghihiwalay. Ngayon, ang client ay isang magaan na layer na bumubuo ng isang logical query plan at ipinapadala ito sa pamamagitan ng gRPC at Arrow papunta sa remote server. Ang server na ito ang responsable sa pagsusuri ng plano, pag-optimize nito gamit ang Catalyst, at pagpapatupad nito sa cluster.
Ang pinakamagandang bagay tungkol sa sistemang ito ay hindi na kailangang i-install ng kliyente ang buong imprastraktura ng Spark o isang mabigat na lokal na JVM. Nagbibigay-daan ito sa amin na i-integrate ang Spark sa mga notebook, IDE, web service, o kahit sa mga AI agent nang hindi kinakailangang mahigpit na tumugma ang lokal na bersyon ng Python sa bersyon ng cluster. Ang mga resulta ay ibinabalik sa kliyente sa mga batch ng Arrow , na ginagawang napakabilis ng paglilipat ng data.
Pagpapatupad ng aplikasyon at interactive na mode

Para sa mga gustong magsimulang mag-eksperimento, ang Spark ay may kasamang serye ng mga halimbawa sa direktoryo examples/src/mainPara magpatakbo ng mga aplikasyon sa Python nang interaktibo, gamitin ang utos na bin/pyspark Ito ang pangunahing kagamitan. Kung mas gusto mo ang Scala o Java, maaari mong gamitin bin/run-example <clase>, na siyang panloob na naglulunsad ng script spark-submit para ilunsad ang aplikasyon.
Mayroon ding opsyon na gumamit ng binagong Scala shell, na mainam para sa pag-aaral kung paano gumagana ang framework sa loob. Isang mahalagang detalye ang paggamit ng opsyong --masterKung gagawa ka ng mga pagsubok, pinakamahusay na gamitin ang lokal para sa isang thread o lokal para samantalahin ang maraming core ng iyong processor bago lumipat sa isang distributed environment.
Mga pagpapabuti sa compatibility at ecosystem
Hindi nakalimutan ng Bersyon 4.2 ang tungkol sa "Spark Classic." Maraming trabaho ang nagawa upang mapunan ang agwat sa pagiging tugma, na nagpapabuti sa suporta para sa RDD API at nagpapahintulot na spark.read.* Tinatanggap nito ang DataFrames bilang input. Bukod pa rito, na-optimize na ang error propagation, state reporting, at iba pang mga feature. Suporta sa YARN cluster mode.
Tungkol sa pamamahagi, mahalagang suriin kung ang mga imahe ng Docker ay maaaring naglalaman ng software na hindi ASF, kaya ipinapayong suriin ang kanilang mga Dockerfile. Kung kailangan mong bumalik sa mga nakaraang bersyon para sa mga kadahilanang pang-stability, may mga release file na magagamit , bagama't palaging inirerekomenda na suriin ang pahina ng seguridad upang maiwasan ang mga kilalang kahinaan.
Pinatitibay ng bagong bersyong ito ang Spark bilang isang lubhang maraming gamit na tool na, salamat sa decoupling ng client at server, ay nagpapadali sa demokratisasyon ng big data processing. Dahil sa updated na suporta para sa Java at Scala, at mas maayos na integrasyon sa mga modernong development environment, ito ang nagiging lohikal na pagpipilian para sa anumang scalable data analytics na naghahanap ng kahusayan at pagiging simple sa pag-deploy.

