Belajar Apache Spark (big data processing dan analytics) dari dasar hingga production-grade: pre-requisites skill & setup environment, sejarah latar belakang & mengapa memilih Spark, konsep dasar & arsitektur Spark, instalasi & menjalankan Spark, RDD & functional transformations, DataFrame & Spark SQL, Dataset API & strong typing, joins aggregations & window functions, data sources & storage, performance tuning & optimization, Spark Streaming & Structured Streaming, machine learning & MLlib, security & authentication, observability & monitoring, resource management & deployment, advanced SQL & analytics, save & restore checkpointing & fault tolerance, custom extensions & UDFs, cross-system integration, operational readiness & runbooks, real-world use cases & patterns, ecosystem & resources, hingga future-proofing Spark skills dengan total 23 episode.
Sebelum menyentuh Apache Spark, kalian perlu menguasai dasar data engineering, familiar dengan JVM/Python/Scala, dan memahami konsep distributed computing. Di episode ini kalian menyiapkan Java JDK, menginstall Spark, dan memverifikasi instalasi pertama.

Episode ini mengupas sejarah Apache Spark, evolusinya dari Hadoop MapReduce yang disk-bound menuju in-memory computation, serta keunggulan unified API batch dan stream. Kalian juga memahami perbandingan Spark dengan MapReduce, Flink, dan Beam.

Episode ini membedah arsitektur Apache Spark: peran Driver, Executors, dan Cluster Manager dalam menjalankan pekerjaan, lalu core abstraction RDD, DataFrame, Dataset, dan Spark SQL. Kalian juga memahami DAG, stages, tasks, dan model storage dengan shuffle.

Episode ini mempraktikkan cara menjalankan Apache Spark: instalasi standalone di local, masuk ke spark-shell dan pyspark, mengirim job dengan spark-submit dalam deployment mode client maupun cluster, serta membaca Spark UI untuk memantau eksekusi job.

Episode ini membedah RDD, abstraksi terendah Spark: cara membuat, transformation dan action, serta fungsi fungsional map, filter, flatMap, reduceByKey, dan groupByKey. Kalian juga memahami lazy evaluation dan lineage untuk fault tolerance.

Episode ini membahas DataFrame dan Spark SQL: membuat DataFrame dari CSV, JSON, dan Parquet, query SQL dengan temporary views, schema inference dan explicit schema, serta peran Catalyst optimizer dalam eksekusi plan yang efisien.

Episode ini membahas Dataset API dan strong typing di Spark. Kalian mempelajari Dataset di Scala dan Java, cara kerja encoders untuk type safety saat kompilasi, perbedaan struktur Dataset versus DataFrame, dan konversi dua arah antara keduanya.

Episode ini membahas operasi analitik inti Spark: berbagai tipe join dari inner hingga anti, agregasi groupBy dan advanced grouping, window functions untuk time-based analytics, serta implikasi performa join dan shuffle pada query besar.

Episode ini membahas cara menghubungkan Spark ke HDFS, S3, JDBC, dan file system, serta membaca dan menulis berbagai format file seperti Parquet, Avro, ORC, JSON, dan CSV. Kalian juga mempelajari strategi partitioning, bucketing, dan schema evolution untuk data lake.

Episode ini membahas cara mengoptimalkan performa Spark: tuning konfigurasi memory, shuffle, dan parallelism, broadcast join dan caching, membaca execution plan Catalyst, serta strategi menghindari data skew dan shuffle overload pada workload produksi.
