Apache Spark adalah mesin pemrosesan data terdistribusi yang kita pakai intensif di section Pemrosesan Data Skala Besar dan di proyek Proyek: Pemrosesan Data dengan Spark. Setelah memahami konsepnya di course ini, dokumentasi resmi di spark.apache.org menjadi rujukan utama saat kita menulis kode produksi. Dokumentasi Spark tergolong lengkap namun luas, sehingga bab ini memetakan tautan mana yang tepat untuk kebutuhan spesifik. Seluruh tautan di bawah diverifikasi hidup saat course ini ditulis dan mengarah ke domain resmi spark.apache.org.
Peta Dokumentasi Spark #
Halaman dokumentasi Spark memakai alias latest yang selalu menunjuk versi stabil terbaru, misalnya spark.apache.org/docs/latest/. Empat tautan berikut adalah pintu masuk yang paling sering kita buka:
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Documentation Overview | Halaman induk dokumentasi: daftar lengkap panduan konsep, SQL, streaming, dan pengelolaan cluster | Semua |
| Quick Start | Tur singkat pertama: menjalankan Spark dari shell interaktif dan memakai API dasar | Pemula |
| Downloads | Mengunduh paket binary rilis resmi beserta pilihan paket Hadoop | Pemula |
| Examples | Kumpulan contoh program kecil untuk berbagai komponen Spark | Pemula |
Empat halaman ini berfungsi sebagai orientasi, bukan bacaan sekali duduk. Setelah menyelesaikan course, kita cukup kembali ke halaman induk lalu melompat langsung ke bagian yang sedang dikerjakan.
DataFrame, SQL, dan Sumber Data #
Bagian terbesar pekerjaan sehari-hari kita ada di Spark SQL dan DataFrame API — topik yang dibedah tuntas di chapter Spark DataFrames dan Spark SQL. Pola membacanya bertahap: mulai dari pengenalan DataFrame, lanjut ke panduan SQL, lalu simpan dua halaman referensi terakhir sebagai kamus harian. Tujuh tautan berikut menutup kebutuhan tersebut dari tahap belajar sampai pengecekan sintaks cepat:
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Getting Started dengan DataFrames | Pengenalan resmi DataFrame: membuat, memfilter, mengagregasi, sampai bekerja dengan dataset | Pemula |
| SQL Programming Guide | Panduan lengkap Spark SQL: sintaks query, fungsi bawaan, jenis data, dan konfigurasi | Semua |
| SQL Reference | Referensi sintaks SQL Spark: DDL, DML, tipe data, dan pernyataan analitik | Semua |
| Functions Reference | Katalog fungsi bawaan pyspark.sql.functions lengkap dengan contoh pemakaian | Semua |
| Data Sources | Cara membaca dan menulis berbagai format: Parquet, JSON, CSV, ORC, hingga JDBC | Menengah |
| Parquet Data Source | Konfigurasi khusus Parquet: merge schema, compression, dan partition discovery | Menengah |
| PySpark DataFrame Quickstart | Versi Python dari panduan DataFrame, cocok dipasangkan dengan chapter course ini | Pemula |
Chapter Parquet membahas format berkasnya dari sisi data engineering; tautan Parquet Data Source di atas melengkapinya dari sisi konfigurasi Spark sebagai pembaca dan penulis.
Structured Streaming #
Structured Streaming memperlakukan stream sebagai tabel yang terus bertambah — konsep yang kita bahas di chapter Spark Structured Streaming dan Stream Processing dengan Spark. Panduan resminya termasuk salah satu dokumentasi streaming terbaik karena disertai contoh kode lengkap di tiap bagian. Dua tautan berikut adalah rujukan resminya:
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Structured Streaming Programming Guide | Panduan inti streaming: model pemrosesan, windowing, watermark, dan semantic output | Menengah |
| Kafka Integration | Menghubungkan Structured Streaming dengan Kafka sebagai sumber maupun tujuan | Menengah |
Bacalah bagian “Programming Model” dari panduan pertama lebih dulu; bagian tersebut menjelaskan tabel hasil dan kapan baris diperbarui — fondasi yang membuat windowing dan watermark mudah dipahami setelahnya.
Tuning dan Operasional #
Ketika pipeline sudah berjalan, pertanyaan kita bergeser ke performa dan kestabilan — wilayah chapter Spark Performance, Shuffle dan Skew, dan Kapan Menggunakan Spark. Dokumentasi bagian ini menjelaskan mekanisme di balik setiap knob konfigurasi:
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Tuning Guide | Prinsip optimasi: struktur data, broadcast join, dan pengelolaan memori | Lanjutan |
| Configuration | Daftar lengkap konfigurasi Spark beserta nilai bawaan dan artinya | Semua |
| Web UI | Membaca tab Jobs, Stages, Storage, dan Executors untuk diagnosis performa | Menengah |
| Monitoring | Metrik yang diekspos Spark dan cara memasang sistem pemantauan eksternal | Lanjutan |
| Job Scheduling | Penjadwalan di dalam aplikasi dan lintas aplikasi, termasuk fair scheduler | Lanjutan |
| Security | Autentikasi, enkripsi, dan kontrol akses untuk cluster produksi | Lanjutan |
Menjalankan Spark: Cluster dan Deployment #
Materi course ini menjalankan Spark pada mode local dari satu mesin. Di produksi, aplikasi berjalan di atas cluster manager — konsep driver, executor, dan pengiriman aplikasi dibahas di chapter Konsep Big Data Processing. Tiga tautan berikut melanjutkan langsung dari titik itu:
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Cluster Mode Overview | Anatomi aplikasi Spark: driver, executor, cluster manager, dan distribusi tugas | Menengah |
| Submitting Applications | Mengirim aplikasi ke cluster: spark-submit, argumen, dan pengemasan dependensi | Menengah |
| Running on Kubernetes | Menjalankan Spark di atas Kubernetes: mode client dan cluster, pengelolaan pod executor | Lanjutan |
Referensi API PySpark dan RDD #
Untuk mengecek signature fungsi secara cepat, referensi API adalah tempatnya. Kita hampir selalu memakai PySpark, sedangkan RDD programming guide tetap berguna ketika menemukan kode warisan yang belum dimigrasikan ke DataFrame:
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| PySpark API Reference | Referensi lengkap modul pyspark.sql, pyspark.streaming, dan pyspark.errors | Semua |
| RDD Programming Guide | Panduan API RDD level rendah: map, reduce, accumulator, dan variabel broadcast | Lanjutan |
Jalur Belajar yang Disarankan #
Bagi yang baru menyelesaikan course ini dan ingin memperdalam Spark secara mandiri, urutan baca berikut menjaga konsep bertambah selangkah demi selangkah tanpa loncatan:
- Buka Quick Start dan jalankan ulang contoh interaktifnya — pemanasan setelah lama tidak menyentuh Spark.
- Kerjakan PySpark DataFrame Quickstart sambil mencocokkan setiap langkah dengan chapter Spark DataFrames.
- Pelajari Data Sources , lalu praktikkan membaca Parquet dan JSON dari lokal.
- Lanjut ke SQL Programming Guide dan SQL Reference untuk query analitik penuh.
- Baca Structured Streaming Programming Guide sampai bagian windowing, lalu padukan dengan Kafka Integration .
- Sebelum membawa pipeline ke produksi, pelajari Tuning Guide dan Web UI berpasangan.
- Jadikan Configuration dan PySpark API Reference dua tab permanen di peramban saat bekerja.
Dengan peta tautan di atas, kita bisa berpindah dari belajar konsep ke penulisan kode produksi tanpa kehilangan arah — dan jika suatu saat tautan latest berpindah versi besar, pola URL docs/<versi>/ menjaga dokumentasi lama tetap dapat diakses. Mesin pemrosesan ini selanjutnya berpasangan dengan sistem perpipaan event real-time, dan pasangannya juga punya satu set rujukan resmi yang perlu dipetakan di chapter Referensi Apache Kafka.