Pada bagian pertama dari seri ini, kita sudah membahas masalah entanglement pada pipeline ML, yaitu kondisi ketika perubahan kecil dalam satu bagian pipeline bisa mengubah banyak hal lain karena adanya ketergantungan yang padat.
Untuk mengatasi hal ini, Abnormal AI memperkenalkan konsep Signals DAG (Directed Acyclic Graph)—sebuah kerangka kerja yang mewajibkan setiap fungsi ekstraksi sinyal mendeklarasikan input dan output-nya. Dengan cara ini, hubungan antar sinyal menjadi jelas, dan ketergantungan antar fungsi bisa dikelola dengan rapi.
Jika di bagian pertama kita membahas konsepnya, maka di bagian kedua ini kita akan melihat bagaimana konsep itu diterapkan dalam sistem nyata. Saat ini, Signals DAG sudah berjalan dalam tiga sistem produksi inti di Detection Engine Abnormal AI:
- 2 sistem online yang menangani hingga 35 ribu permintaan per detik (QPS).
- 1 sistem batch yang memproses 3TB data setiap hari.
Tiga Layanan, Satu DAG
Mengapa sistem deteksi Abnormal AI butuh arsitektur seperti ini? Jawabannya ada di inti masalah ML untuk keamanan email: untuk setiap email, kita harus bisa memutuskan apakah itu aman atau merupakan ancaman—dan keputusan ini harus cepat, presisi, serta tidak mengganggu email yang sah.
Tugas ini dijalankan oleh Realtime Scorer, sebuah komponen yang terdiri dari gabungan berbagai model ML dan LLM. Salah satu jenis fitur terkuat adalah Aggregate Features—fitur yang dihitung dari pola lintas email, bukan dari satu pesan saja.
Contoh sederhana: seberapa sering seorang pengirim berkomunikasi dengan penerima tertentu. Data ini tidak bisa dilihat hanya dari satu email, tapi jika dihitung secara agregat, bisa memberi gambaran kuat tentang pola normal dan mendeteksi kejanggalan.
Untuk membangun fitur agregat seperti ini, dibutuhkan dua sistem:
- Realtime Signal Aggregates → menghitung data secara streaming.
- Batch Signal Aggregates → menghitung data dalam jumlah besar secara berkala.
Hasil dari kedua sistem ini disimpan dalam data store, lalu dipakai oleh Realtime Scorer saat melakukan penilaian email.
Realtime vs Batch Signal Aggregates
Kedua sistem ini dirancang untuk menyelesaikan sisi berbeda dari masalah yang sama.
- Realtime Signal Aggregates → cocok untuk fitur dengan kebutuhan waktu nyata dan data yang sederhana, misalnya: “berapa banyak email dari pengirim tertentu yang terdeteksi berbahaya dalam satu jam terakhir.” Sistem ini menerima aliran data email melalui Kafka, memprosesnya lewat Signals DAG Executor, dan memperbarui penyimpanan menggunakan microservice berbasis Go. Pada puncaknya, sistem ini menangani hingga 35 ribu QPS, sama dengan beban Realtime Scorer.
- Batch Signal Aggregates → cocok untuk fitur dengan data kompleks dan jangka panjang, misalnya: “berapa sering alamat email pengirim berinteraksi dengan penerima dalam 180 hari terakhir.” Sistem ini memproses log email menggunakan Spark, dengan orkestrasi dari Airflow. Saat volume data meningkat, sistem ini di-upgrade agar bisa memproses hingga 3TB data per hari.
Dengan dua sistem ini, Abnormal AI bisa menciptakan fitur yang lebih ekspresif dan akurat—langsung berdampak pada peningkatan kemampuan deteksi (baik dari segi presisi maupun recall).
Keputusan Desain dan Rencana ke Depan
1. Memisahkan Realtime dan Batch
Awalnya, kedua sistem ini dibangun terpisah untuk mempercepat pengembangan. Banyak solusi jadi sebenarnya dipertimbangkan, tapi tidak ada yang benar-benar cocok dengan kebutuhan Abnormal. Setelah tahap prototipe terbukti berhasil meningkatkan presisi dan recall, barulah tim berkomitmen untuk mengembangkan sistem ini lebih lanjut.
Namun, pemisahan ini membuat adanya “kebocoran abstraksi,” karena insinyur ML harus memperhitungkan perbedaan implementasi antara realtime dan batch. Ke depannya, Abnormal berencana menyatukan keduanya dalam arsitektur Lambda, sehingga peneliti bisa lebih mudah membangun fitur tanpa memikirkan perbedaan sistem.
2. Skalabilitas untuk Pertumbuhan
Abnormal AI terus tumbuh dengan cepat, sehingga sistem harus dirancang agar bisa diskalakan tanpa menyulitkan operasional harian. Beberapa keputusan teknis penting yang diambil antara lain:
- Kafka → dipilih untuk streaming realtime karena sudah terbukti mampu menangani jutaan QPS dengan partisi data bawaan.
- Spark → digunakan untuk batch processing berkat skalabilitas, toleransi kesalahan, dan sifat open-source yang fleksibel.
- Redis → dipilih sebagai data store karena mampu menangani throughput tulis yang tinggi dan menyediakan berbagai struktur data siap pakai.
- Python → dipakai untuk membangun Signals DAG agar mudah diintegrasikan dengan pustaka ML lain.
Kesimpulan
Awalnya, Signals DAG hanyalah konsep abstrak untuk merapikan pipeline ML. Namun kini, ia sudah menjadi bagian inti dari dua sistem produksi berskala besar yang menopang Detection Engine Abnormal AI.
Dengan kombinasi Realtime dan Batch Signal Aggregates, Abnormal berhasil meningkatkan kemampuan deteksi ancaman email secara signifikan—lebih presisi, lebih akurat, dan lebih konsisten.
Perjalanan ini masih berlanjut. Abnormal AI terus mengembangkan arsitektur agar lebih tangguh, efisien, dan mampu menghadapi tantangan data skala besar di masa depan.
Jika Anda tertarik menghadapi tantangan rekayasa yang bermakna seperti ini, Abnormal AI membuka kesempatan untuk bergabung melalui halaman karier kami.
Infrastruktur IT yang kuat adalah kunci produktivitas perusahaan. Dengan abnormal indonesia, Anda bisa mendapatkan solusi IT lengkap yang sesuai dengan kebutuhan Anda. iLogo Indonesia sebagai mitra terpercaya siap mengintegrasikan semuanya agar bisnis Anda tetap berjalan lancar dan aman.
Hubungi kami sekarang atau kunjungi abnormal.ilogoindonesia.com untuk informasi lebih lanjut!
