- Pelaksanaan seni bina klien-pelayan menggunakan Spark Connect yang memisahkan pelaksanaan kluster daripada persekitaran setempat.
- Sokongan untuk Java 17, 21 dan 25 telah dikemas kini, berserta penggunaan Scala 2.13 secara mandatori sejak versi 4.0.0.
- Fleksibiliti penggunaan melalui binari pra-pakej untuk Hadoop, kebergantungan Maven atau pemasangan melalui PyPI.

Jika anda bekerja dalam dunia Data Besar, anda akan tahu bahawa Apache Spark boleh dikatakan sebagai standard dalam memproses data dalam jumlah besar pada kelajuan kilat. Dengan ketibaan versi 4.2, rangka kerja ini bukan sahaja telah meningkatkan prestasinya, tetapi juga telah mengambil langkah kualitatif dalam cara kita berhubung dengan kluster, menjadikan semuanya lebih fleksibel dan kurang membebankan.
Aspek paling hebat dalam kemas kini ini tidak syak lagi ialah bagaimana mereka telah memperhalusi seni bina supaya kita tidak perlu membawa keseluruhan persekitaran masa jalan pada mesin tempatan kita. Kini, terima kasih kepada seni bina klien-pelayan yang lebih matang, kita boleh melancarkan proses yang kompleks dari mana-mana sahaja tanpa komputer kita ranap, mewakilkan tugasan berat kepada pelayan dan menerima keputusan yang telah diproses.
Keperluan teknikal dan keserasian persekitaran

Untuk menjalankan Spark 4.2, penting untuk memahami bahawa sokongan Java adalah penting. Versi ini serasi dengan Java 17, 21, dan sehingga 25 , walaupun perlu diingatkan bahawa versi Java 25 sebelum 25.0.3 sudah dianggap usang. Mengenai bahasa pengaturcaraan, standardnya kini ialah Scala 2.13 , yang pastinya meninggalkan versi 2.12, jadi jika anda mempunyai projek yang lebih lama, anda perlu memindahkannya.
Bagi mereka yang lebih suka Python, versi 3.10 atau lebih tinggi diperlukan , manakala R disokong dari versi 4.0 dan seterusnya, walaupun perlu diingatkan bahawa penggunaan R sedang memasuki fasa penamatan. Sistem pengendalian tidak relevan, kerana Spark berjalan lancar pada kedua-dua sistem seperti Windows dan UNIX (seperti Linux awan atau macOS), dengan syarat anda mempunyai pembolehubah JAVA_HOME atau PATH yang dikonfigurasikan dengan betul.
Pilihan pemasangan dan pelaksanaan
Apabila anda memuat turun Spark, anda mempunyai beberapa pilihan bergantung pada infrastruktur anda. Yang paling biasa ialah memuat turun pakej pra-konfigurasi untuk Hadoop , kerana Spark menggunakan pustaka kliennya untuk mengurus HDFS dan YARN. Walau bagaimanapun, jika anda mempunyai konfigurasi yang sangat spesifik, anda boleh memilih binari "Hadoop percuma" dan mengkonfigurasi laluan kelas itu sendiri.
Jika anda seorang pembangun, perkara lebih mudah: Pengguna Java dan Scala boleh mengintegrasikan rangka kerja menggunakan koordinat Maven , dan pengguna Python boleh memasangnya terus daripada PyPI . Bagi mereka yang lebih suka mencuba dan ingin mengubah suai sistem teras, terdapat juga pilihan untuk mengkompilasi Spark terus daripada kod sumber.
Revolusi Spark Connect

Di sinilah perkara menjadi menarik. Spark Connect ialah seni bina yang berbeza daripada model tradisional di mana klien dan pelayan tidak dapat dipisahkan. Kini, klien ialah lapisan ringan yang membina pelan pertanyaan logik dan menghantarnya melalui gRPC dan Arrow ke pelayan jauh. Pelayan ini bertanggungjawab untuk menganalisis pelan, mengoptimumkannya menggunakan Catalyst dan melaksanakannya pada kluster.
Perkara terbaik tentang sistem ini ialah klien tidak lagi perlu memasang keseluruhan infrastruktur Spark atau JVM tempatan yang berat. Ini membolehkan kami mengintegrasikan Spark ke dalam komputer riba, IDE, perkhidmatan web atau ejen AI tanpa perlu memadankan versi kluster dengan versi Python tempatan. Keputusan dikembalikan kepada klien dalam kelompok Arrow , menjadikan pemindahan data sangat pantas.
Pelaksanaan aplikasi dan mod interaktif

Bagi mereka yang ingin mula bereksperimen, Spark menyertakan beberapa contoh dalam direktori examples/src/mainUntuk menjalankan aplikasi Python secara interaktif, gunakan arahan bin/pyspark Ia alat utama. Jika anda lebih suka Scala atau Java, anda boleh menggunakannya bin/run-example <clase>, yang melancarkan skrip secara dalaman percikan-serahkan untuk melancarkan aplikasi tersebut.
Terdapat juga pilihan untuk menggunakan shell Scala yang diubah suai, yang sesuai untuk mempelajari cara rangka kerja berfungsi secara dalaman. Perincian penting ialah penggunaan pilihan --masterJika anda menjalankan ujian, sebaiknya gunakan tempatan untuk satu utas atau tempatan untuk memanfaatkan berbilang teras pemproses anda sebelum beralih ke persekitaran teragih.
Penambahbaikan dalam keserasian dan ekosistem
Versi 4.2 tidak melupakan "Spark Classic." Banyak kerja telah dilakukan untuk merapatkan jurang keserasian, meningkatkan sokongan untuk API RDD dan membenarkan itu spark.read.* Ia menerima DataFrames sebagai input. Di samping itu, penyebaran ralat, pelaporan keadaan dan ciri-ciri lain telah dioptimumkan. Sokongan mod kluster YARN.
Berkenaan pengedaran, adalah penting untuk memastikan imej Docker mungkin mengandungi perisian bukan ASF, jadi adalah dinasihatkan untuk menyemak fail Docker mereka. Jika anda perlu kembali kepada versi sebelumnya atas sebab kestabilan, fail keluaran tersedia , walaupun sentiasa disyorkan untuk menyemak halaman keselamatan bagi mengelakkan kerentanan yang diketahui.
Versi baharu ini mengukuhkan Spark sebagai alat yang sangat versatil yang, hasil daripada penyatuan klien dan pelayan, memudahkan pendemokrasian pemprosesan data raya. Dengan sokongan terkini untuk Java dan Scala, dan penyepaduan yang lebih lancar dengan persekitaran pembangunan moden, ia menjadi pilihan logik untuk sebarang analitik data berskala yang mahukan kecekapan dan kesederhanaan dalam penggunaan.

