Sebagian besar sistem data secara tradisional bekerja dengan cara mengumpulkan data terlebih dahulu, lalu memprosesnya secara berkala. Namun semakin banyak kebutuhan yang menuntut data diproses hampir seketika saat data itu dihasilkan. Inilah yang disebut pemrosesan data real-time atau streaming - dan memahaminya adalah langkah awal yang penting sebelum mendalami arsitektur data modern.
Batch Processing vs Stream Processing
Batch processing mengumpulkan data dalam kelompok, lalu memprosesnya sekaligus pada waktu tertentu - misalnya laporan yang dijalankan setiap malam. Pendekatan ini efisien dan cukup untuk banyak kebutuhan yang tidak mendesak. Stream processing, sebaliknya, memproses data segera setelah data itu muncul, satu per satu atau dalam potongan kecil yang berkelanjutan, sehingga hasilnya tersedia hampir seketika. Keduanya bukan saling menggantikan, melainkan cocok untuk situasi yang berbeda.
Contoh Penggunaan: Deteksi Penipuan
Salah satu contoh paling umum dari kebutuhan pemrosesan real-time adalah deteksi transaksi mencurigakan. Menunggu laporan harian untuk mengetahui adanya transaksi yang tidak wajar berarti kerugian sudah terjadi sebelum sempat dicegah. Dengan pemrosesan real-time, pola transaksi yang tidak biasa bisa terdeteksi dan direspons dalam hitungan detik setelah transaksi terjadi.
Contoh Penggunaan: Dashboard Langsung
Dashboard yang menampilkan metrik secara langsung - seperti jumlah pengguna aktif, status server, atau performa kampanye yang sedang berjalan - juga bergantung pada pemrosesan real-time. Alih-alih menampilkan data dari beberapa jam lalu, dashboard semacam ini memungkinkan pengambilan keputusan yang responsif terhadap kondisi yang sedang berlangsung saat itu juga.
Contoh Penggunaan: Perangkat IoT
Perangkat Internet of Things (IoT), seperti sensor pada mesin industri atau perangkat rumah pintar, terus-menerus mengirimkan data kecil dalam jumlah besar. Banyak dari data ini hanya bernilai jika diproses segera - misalnya sensor suhu yang harus memicu peringatan seketika saat melewati ambang batas tertentu, bukan setelah data itu diproses keesokan harinya.
Bagi yang baru mulai mempelajari topik ini, poin pentingnya adalah memahami bahwa real-time processing bukan sekadar "lebih cepat", melainkan pendekatan yang secara fundamental berbeda dalam cara data dikumpulkan dan diproses. Langkah selanjutnya yang wajar setelah memahami konsep dasar ini adalah mempelajari bagaimana data real-time tersebut kemudian diolah menjadi analitik yang bisa ditindaklanjuti.