Apache Spark
Framework komputasi terdistribusi open-source yang memungkinkan pemrosesan data skala besar secara in-memory, jauh lebih cepat dari Hadoop MapReduce, dengan dukungan batch, streaming, ML, dan SQL.
Apache Spark adalah engine pemrosesan data terdistribusi yang didesain untuk analitik data besar (big data) secara cepat dengan memanfaatkan in-memory computing.
Spark vs Hadoop MapReduce
| Aspek | Apache Spark | Hadoop MapReduce |
|---|---|---|
| Kecepatan | 10-100x lebih cepat | Relatif lambat |
| Storage sementara | RAM (in-memory) | Disk (HDFS) |
| Model pemrograman | RDD, DataFrame, Dataset | Map dan Reduce |
| Dukungan use case | Batch, streaming, ML, SQL | Batch only |
| Bahasa | Python, Scala, Java, R | Java primarily |
| Fault tolerance | Ya (RDD lineage) | Ya (replication) |
Komponen Ekosistem Spark
- Spark SQL: Query data structured dengan SQL atau DataFrame API
- Spark Streaming / Structured Streaming: Pemrosesan data real-time
- MLlib: Library machine learning terdistribusi
- GraphX: Pemrosesan graph
Abstraksi Data di Spark
RDD (Resilient Distributed Dataset)
API level rendah. Kumpulan data terdistribusi yang immutable dan fault-tolerant.
DataFrame
Koleksi data terstruktur dengan kolom bernama (seperti tabel SQL). API lebih tinggi dari RDD.
Dataset
Tipe data strongly-typed (Scala/Java). Gabungan keunggulan RDD (type safety) dan DataFrame (optimasi).
Arsitektur Spark
- Driver: Program utama yang mengkoordinasikan eksekusi
- Executor: Proses di setiap worker node yang menjalankan task
- Cluster Manager: Mengelola resource (YARN, Kubernetes, Standalone)
Istilah Terkait
Stream Processing
Data ProcessingPemrosesan data secara real-time saat data masuk - setiap event diproses dalam milidetik hingga detik, tanpa menunggu data dikumpulkan dalam batch.
Apache Kafka
Cloud & Modern Data StackPlatform event streaming terdistribusi yang memungkinkan pengiriman, penyimpanan, dan pemrosesan aliran data (stream) real-time dalam skala besar dengan throughput tinggi dan latensi rendah.
Udah paham Apache Spark? Lanjut latihan SQL dan Excel yuk!
Latihan interaktif, langsung di browser.