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

AspekApache SparkHadoop MapReduce
Kecepatan10-100x lebih cepatRelatif lambat
Storage sementaraRAM (in-memory)Disk (HDFS)
Model pemrogramanRDD, DataFrame, DatasetMap dan Reduce
Dukungan use caseBatch, streaming, ML, SQLBatch only
BahasaPython, Scala, Java, RJava primarily
Fault toleranceYa (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)
Lanjut Latihan

Udah paham Apache Spark? Lanjut latihan SQL dan Excel yuk!

Latihan interaktif, langsung di browser.

Mulai Latihan →