Episode ini merangkai semua kemampuan menjadi use case nyata: dashboard monitoring dan alerting, fraud detection, real-time recommendation, dan IoT processing. Kalian juga merancang end-to-end streaming pipeline dengan data enrichment, stream joins, dan real-time aggregations.

Dua puluh episode membangun satu per satu keterampilan. Episode 20 ini adalah ujian akhirnya: bagaimana semua itu menyatu dalam use case nyata. Streaming yang baik bukan sekadar teknologi yang berjalan — ia harus menghasilkan keputusan, alert, dan dashboard yang dipakai orang setiap hari.
Kita akan membangun dashboard monitoring dengan alerting, menerapkan fraud detection dan real-time recommendation, memproses data IoT, lalu merancang end-to-end pipeline dengan data enrichment, stream joins, dan agregasi real-time. Ini peta untuk menerjemahkan Flink menjadi nilai bisnis.
Dashboard monitoring dibangun dari metrics yang diekspor ke Prometheus (episode 13). Dari sana, Grafana menampilkan tren dan alert berbasis aturan:
groups:
- name: flink-alerts
rules:
- alert: JobRestarted
expr: flink_jobmanager_job_restarts > 0
for: 1mflink_jobmanager_job_restarts adalah metric jumlah restart job. Aturan ini memicu alert ketika restart terjadi — tanpa alert, job yang diam-diam restart tidak akan terlihat hingga masalah memburuk.
Selain metrik teknis, pantau metrik bisnis: volume transaksi per menit, rasio data gagal, dan latency agregasi. Metric kustom yang dibuat dengan counter dan gauge (episode 13) menjadi dasar dashboard yang menjawab pertanyaan bisnis, bukan hanya pertanyaan infrastruktur.
Fraud detection menggabungkan agregasi dan CEP: transaksi yang melewati ambang dalam window waktu langsung memicu alert:
SELECT user_id, COUNT(*) AS jumlah, SUM(amount) AS total
FROM transactions
GROUP BY user_id, TUMBLE(event_ts, INTERVAL '10' MINUTE)
HAVING COUNT(*) > 10 AND SUM(amount) > 10000000;HAVING memfilter kelompok transaksi yang mencurigakan. Untuk pola berurutan yang lebih halus — misalnya dua transaksi besar dalam satu menit — gabungkan dengan CEP dari episode 10.
Hasil deteksi bukan akhir — kirim ke sistem alerting dan case management:
./bin/flink run -d target/fraud-job.jar./bin/flink run -d mengirim job. Di produksi, alert diarahkan ke Kafka topic yang dikonsumsi platform deteksi fraud, atau langsung ke sistem paging untuk kasus kritis.
Rekomendasi real-time menggunakan event terkini, bukan hanya riwayat batch: enrichment dengan data user, lalu stream joins untuk menggabungkan klik dan katalog:
SELECT c.user_id, p.product_name
FROM clicks c
JOIN products FOR SYSTEM_TIME AS OF c.event_ts AS p
ON c.product_id = p.id;FOR SYSTEM_TIME AS OF memastikan rekomendasi memakai versi produk yang benar saat klik terjadi. Hasilnya di-sink ke engine rekomendasi yang mengembalikan top-N produk untuk tiap pengguna.
Kombinasikan frekuensi klik per pengguna (state), kategori favorit, dan sinyal real-time menjadi skor. Pipeline rekomendasi yang baik selalu dibangun dari agregasi stateful — persis pola yang sudah kalian kuasai di episode 6.
IoT menghasilkan stream sensor yang terus-menerus: suhu, getaran, konsumsi energi. Agregasi per menit per device menjadi dasar monitoring:
SELECT device_id,
AVG(temperature) AS rata_temperature,
MAX(temperature) AS maks
FROM sensor_readings
GROUP BY device_id, TUMBLE(event_ts, INTERVAL '1' MINUTE);AVG dan MAX memberi ringkasan per device. Tambahkan alert otomatis saat maks melewati ambang — deteksi dini sebelum peralatan rusak.
Rangkai semua komponen menjadi satu pipeline:
Kafka → Flink (enrich + join + aggregate) → Kafka → ClickHouse → GrafanaKafka mengumpulkan event mentah, Flink memperkaya dengan dimensi (temporal join), menggabungkan stream, dan mengagregasi; hasilnya dikirim ke Kafka untuk disimpan di ClickHouse; Grafana menampilkan dashboard dan memicu alert.
./bin/flink run -d target/analytics-job.jarPerintah ./bin/flink run -d mengirim pipeline. Dari sini, seluruh rantai nilai — dari event mentah hingga keputusan bisnis — berjalan dalam hitungan detik, bukan jam.
Episode 20 menyatukan semuanya: dashboard monitoring dengan alerting, fraud detection berbasis agregasi dan CEP, real-time recommendation dengan enrichment dan stream joins, IoT processing per sensor, serta perancangan end-to-end pipeline dari Kafka hingga dashboard.
Inti yang harus dibawa pulang:
Di episode 21 selanjutnya kita akan membahas ecosystem & tooling — integrasi dengan Apache Beam, Flink SQL Gateway, dan State Processor API, tooling seperti Flink CLI, web UI, dan IDE plugins, sumber daya komunitas serta RFC/FLIPs, dan managed offerings di cloud. Kalian akan melihat Flink sebagai bagian dari ekosistem yang lebih luas.