Stream Processing
Pemrosesan data secara real-time saat data masuk - setiap event diproses dalam milidetik hingga detik, tanpa menunggu data dikumpulkan dalam batch.
Stream Processing adalah paradigma pemrosesan data di mana data diproses secara kontinyu dan real-time saat data masuk, berbeda dari Batch Processing yang mengumpulkan data dulu baru diproses.
Stream Processing vs Batch Processing
| Aspek | Stream Processing | Batch Processing |
|---|---|---|
| Latency | Milidetik - detik | Menit - jam |
| Data model | Events / unbounded | Files / bounded dataset |
| Kompleksitas | Tinggi | Lebih sederhana |
| Biaya | Lebih mahal | Lebih murah |
| Fault tolerance | Butuh perhatian ekstra | Lebih mudah |
| Use case | Fraud, alerting, live dashboard | ETL, reporting |
Konsep Kunci Stream Processing
Event
Unit data terkecil yang diproses - satu transaksi, satu klik, satu sensor reading.
Stream
Aliran events yang tidak terbatas (unbounded) dan terus mengalir.
Window
Cara membatasi stream menjadi potongan yang bisa diproses:
- Tumbling window: interval tetap, tidak overlap (mis: per menit)
- Sliding window: interval yang bergerak (mis: 5 menit terakhir setiap detik)
- Session window: berdasarkan aktivitas user
Stateful vs Stateless
- Stateless: setiap event diproses independen
- Stateful: hasil bergantung pada event sebelumnya (contoh: running total)
Istilah Terkait
Data Pipeline
Data ProcessingSerangkaian proses otomatis yang memindahkan dan mengubah data dari sumber ke tujuan secara terstruktur dan terjadwal.
Batch Processing
Data ProcessingPemrosesan data dalam kumpulan besar (batch) pada waktu tertentu - biasanya terjadwal malam atau minggu - bukan secara real-time saat data masuk.
Apache Spark
Cloud & Modern Data StackFramework 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 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 Stream Processing? Lanjut latihan SQL dan Excel yuk!
Latihan interaktif, langsung di browser.