Overview
Peta aliran data terdistribusi (Data Lineage Map) dari sumber terbuka internet menuju seluruh tabel PostgreSQL dan indeks analitik Elasticsearch di platform Nexa.
Ikhtisar Pipeline Data Berbasis Target Database
Di platform Nexa Intelligence, pilar Pipeline Data didokumentasikan berdasarkan target tabel relasional dan indeks analitik di database. Setiap panduan di bawah ini menjawab secara tuntas:
- Dari mana sumber data mentahnya?
- Worker, antrian Kafka, dan model AI apa saja yang memprosesnya?
- Bagaimana rumus kalkulasi dan transformasinya?
- Masuk ke tabel PostgreSQL atau indeks Elasticsearch yang mana?
1. Nomenklatur Komponen, Worker & Infrastruktur Pipeline
Seluruh pemrosesan data di platform Nexa dijalankan melalui kombinasi terpadu antara klaster worker pemrosesan (A1 s.d. D1, B3), infrastruktur pemanenan mobile native (Phone Farm Swarm), lapisan orkestrasi kecerdasan buatan (AIOS / AI-Middleware), serta mesin analitik lanjutan (Aggregation, Knowledge Graph, dan Decision Worker):
| Komponen / Kode | Nama Layanan / Modul | Stack Utama | Peran & Tanggung Jawab Utama | Alur Input / Output |
|---|---|---|---|---|
| A1 | Scraper Controller & Scheduler | Go (Golang) | Penjadwalan crawling terdistribusi, membaca benih kata kunci dari taxonomy_keywords, dan mendistribusikan target crawl. | PostgreSQL ──► Kafka queue-scraping |
| B1 | Web Crawler & Media Scraper | Python / Playwright | Mengunduh payload HTML mentah dari portal berita siber nasional dan daerah (Tier 1–3) secara asinkronus. | Kafka queue-scraping ──► MinIO / Raw HTML |
| B2 | Bulk Sektoral Ingestor | Node.js / Go | Ingest data agregat terkurasi dari berkas Excel/CSV (data sekolah Kemendikdasmen, komoditas pangan, LPSE). | File Upload ──► PostgreSQL (master_schools, dll) |
| B3 | Social Media Scraper & Phone Farm Swarm | Python / Android ADB / Node.js | Cron 15 menit penarikan trending X/Twitter, pencocokan taksonomi/pilar, normalisasi & upsert social_trending_*, pemanenan multichannel (X, FB, IG, TikTok), dan insert langsung ke postings & post_author. | X / FB / IG / TikTok ──► PG & ES (postings, post_author) |
| C1 | Content Sanitizer & HTML Parser | Go / Python | Membersihkan boilerplate HTML, navigasi, dan iklan; mengekstrak teks isi berita, judul, penulis, dan tanggal terbit. | Raw HTML ──► Kafka queue-cleaned-articles |
| C2 | Semantic Deduplication Worker | Python / FastEmbed | Menghitung vektor embedding artikel dan memeriksa redundansi di Qdrant (cosine threshold 0.90) untuk memisahkan artikel induk vs sindikasi anak. | Kafka queue-cleaned ──► Qdrant ──► Kafka queue-deduped |
| D1 | Deep NLP & AI Extraction Worker | Python / AIOS | Ekstraksi kognitif AI: pengenalan entitas tokoh/organisasi, sintaksis SPOK, pasal regulasi, serta pemetaan hierarki kepolisian (Polri Resolver). | Kafka queue-deduped ──► PostgreSQL & ES (articles) |
| AIOS | AI Operating System (AI-Middleware) | Python / FastAPI | Lapisan orkestrasi inferensi kecerdasan buatan terpusat: prompt templating, pembedahan sintaksis SPOK, JSON schema enforcement, dan fallback model LLM/SLM. | Menopang Inferensi D1 & Decision Worker |
| Phone Farm | Mobile Harvester & ADB Swarm | Android / ADB / UIAuto | Swarm perangkat fisik smartphone Android untuk mengeksekusi pencarian aplikasi medsos native (TikTok, IG, FB, X) melewati proteksi anti-bot/WAF. | Native Device ──► Ingestion Langsung PG & ES |
| AGGR | Aggregation Worker | Go / TypeScript | Mengagregasi metrik per jam & harian, deteksi lonjakan anomali isu (velocity spike > 3.5x SD), dan pembentukan Situational Digital Twin wilayah. | PostgreSQL/ES ──► province_dashboard, issue_dashboard |
| KG | Knowledge Graph Worker | Python / NetworkX | Memodelkan jejaring keterhubungan aktor-isu, menghitung sentralitas graf (degree/betweenness), dan difusi narasi lintas media. | PostgreSQL/ES ──► taxonomy_correlation |
| DEC | Decision Worker | Python / Gemini LLM | Menjalankan penalaran strategis batch harian (pukul 03:00 WIB) untuk menghasilkan wawasan 5 pilar dan rekomendasi mitigasi pimpinan. | ES Aggregates ──► pillar_intelligence |
Peran Mesin Penopang Inti: AIOS & Phone Farm
Dalam arsitektur pipeline data Nexa, terdapat dua subsistem infrastruktur khusus yang bertindak sebagai mesin penopang inti (underlying engines):
1. AIOS (AI Operating System / AI-Middleware)
AIOS adalah lapisan orkestrator inferensi kecerdasan buatan terpusat yang menjembatani worker pemrosesan (D1 AI Worker dan Decision Worker) dengan berbagai fondasi model kognitif (LLM/SLM):
- Orkestrasi Multi-Model: Menghubungkan pipeline ke model lokal berkecepatan tinggi (seperti Llama/Qwen via vLLM/Ollama) untuk ekstraksi berulang massal, serta model penalaran reasoning tingkat tinggi (Google Gemini / Anthropic Claude) untuk analisis strategis harian.
- Pembedahan Sintaksis SPOK: Mengekstrak klausa gramatikal narasi berita secara terstruktur menjadi Subjek (Aktor), Predikat (Tindakan/Aksi), Objek (Target), dan Keterangan (Waktu/Lokasi/Alat).
- Strict JSON Schema Enforcement: Memvalidasi seluruh output model agar selalu sesuai kontrak skema data sebelum disimpan ke database, mencegah kesalahan format atau anomali (hallucination guardrail).
- Prompt Caching & Resilience: Mengelola circuit breaker, rate-limiting, dan mekanisme peralihan (failover) otomatis saat terjadi lonjakan kuota atau gangguan jaringan penyedia model.
2. Phone Farm (Mobile Harvester & ADB Swarm)
Phone Farm adalah klaster perangkat keras smartphone Android fisik (hardware device farm) yang dikendalikan secara otomatis oleh modul B3 Scraper untuk mengumpulkan data percakapan media sosial native:
- Bypass Proteksi Anti-Bot & WAF: Platform media sosial modern (terutama TikTok dan Instagram) menerapkan deteksi bot ketat yang memblokir perayap web konvensional (headless browser/curl). Phone Farm mengeksekusi aplikasi resmi di perangkat fisik sesungguhnya, menghasilkan sidik jari (device fingerprint) yang sepenuhnya sah.
- Otomasi Terdistribusi via ADB: Menggunakan protokol Android Debug Bridge (ADB) dan UIAutomator untuk mensimulasikan pencarian kata kunci berdasarkan keyword trending dan
social_keywords, scrolling linimasa, dan penangkapan postingan serta komentar warganet. - Ingestion Terstruktur Langsung ke PostgreSQL & Elasticsearch: Data percakapan yang dipanen oleh armada perangkat fisik langsung dinormalisasi dan diinsert ke tabel PostgreSQL (
postings,post_author) serta indeks analitik Elasticsearchpostingssecara efisien tanpa memerlukan worker perantara terpisah.
2. Peta Garis Keturunan Data (Data Lineage Matrix)
Tabel berikut memetakan relasi antara target database, sumber data mentah, worker pemroses, dan menu dashboard yang mengonsumsinya:
| Target Database (Tabel / Indeks) | Sumber Mentah | Worker Pemroses Utama | Frekuensi Pembaruan | Menu Dashboard Pengguna | Dokumen Pipeline |
|---|---|---|---|---|---|
articles(PG & ES) | Portal Media Siber (Tier 1–3) | A1, B1, B2, C1, C2, D1 (AIOS) | Real-time Streaming (Kafka) | /dashboard/berita/dashboard/data-source-artikel | Pipeline articles |
postings & social_trending_*(PG & ES) | X (Twitter), FB, IG, TikTok | B3 Scraper & Phone Farm Swarm | Cron 15 Menit & Ingestion Langsung | /dashboard/aktivis/dashboard/intelligence-feed | Pipeline postings |
province_dashboard(Elasticsearch) | SPOK Berita + Master Wilayah | nexa-d1, nexa-aggregation | Tiap Jam & Harian (Batch) | /dashboard/overview(Peta Situasi Wilayah) | Pipeline province_dashboard |
issue_dashboard(Elasticsearch) | Label Daun Taksonomi Berita | nexa-aggregation | Harian (Batch 24h) | /dashboard/overview(Panel Issue Discovery) | Pipeline issue_dashboard |
trending_topics(Elasticsearch) | Artikel Induk & Sindikasi Anak | nexa-aggregation (Velocity Engine) | Tiap 15 Menit & Harian | /dashboard/overview(Widget Trending Topics) | Pipeline trending_topics |
pillar_intelligence(Elasticsearch) | Agregasi H-1 5 Pilar Isu | decision-worker (Gemini / AIOS) | Harian (Pukul 03:00 WIB) | /dashboard/overview(Briefing 5 Pilar) | Pipeline pillar_intelligence |
national_dashboard(Elasticsearch) | Rollup 38 Provinsi & Berita | nexa-aggregation | Harian (Batch 24h) | /dashboard/overview(Analisa Intelijen Nasional) | Pipeline national_dashboard |
intelligence_feed(Elasticsearch) | Aliran Artikel Selesai AI | Pipeline Ingesti A1–D1 (articles) | Real-time Streaming (Continuous) | /dashboard/overview(Widget Intelligence Feed) | Pipeline intelligence_feed |
taxonomy_correlation(Elasticsearch) | Daun Taksonomi Berita Lintas Pilar | Aggregation / Correlation Engine | Batch Harian | /dashboard/overview(Korelasi Isu Strategis) | Pipeline taxonomy_correlation |
knowledge_graph(ES & PostgreSQL) | Entitas Aktor, Lembaga, Isu (H-1) | nexa-knowledge-graph (AIOS) | Harian (Pukul 01:00 WIB) | /dashboard/knowledge-graph | Pipeline knowledge_graph |
3. Diagram Alur Makro Pipeline Berita Siber
Alur Pipeline Berita Siber
End-to-end ingestion, deduplikasi semantik, inferensi AI D1, hingga dual-sink
Scheduler membaca taksonomi L1–L5 dari PostgreSQL dan memancarkan job crawling ke Kafka.
B1 melakukan perayapan portal berita, C1 mengekstrak judul, konten bersih, dan metadata artikel.
Pengecekan vector embedding artikel untuk mendeteksi dan mengelompokkan berita duplikat/sindikasi.
Ekstraksi sentimen (-1 s/d +1), entitas tokoh/organisasi, ringkasan eksekutif, dan taksonomi.
articles_clean_v2news_search_index4. Diagram Alur Makro Pipeline Media Sosial
Alur Pipeline Media Sosial (B3 Scraper & Phone Farm Swarm)
Siklus 15m: Trending X → Taksonomi → Snapshots PG → Panen 4 Platform → Postings PG & ES
Mengekstrak daftar kata kunci dan tagar tren dari linimasa X/Twitter wilayah Indonesia secara berkala per 15 menit.
Mencocokkan keyword tren dengan kamus taksonomi isu strategis, memfilter derau hiburan dari isu kepentingan umum.
Menyimpan master topik tren unik dan snapshots historis time-series peringkat serta volume tweet per 15 menit.
Armada HP fisik Android melakukan crawling native berbasis keyword terkurasi untuk memanen postingan, caption, metrik, dan komentar.
postings, post_authorpostingsPejabat & Lembaga Negara
Spesifikasi entitas data anggota legislatif (DPR, MPR, DPD), direktori pejabat eksekutif & yudikatif, serta deklarasi kepatuhan e-LHKPN KPK.
articles
Alur terdistribusi pengisian tabel PostgreSQL articles dan indeks Elasticsearch articles—mulai dari penjadwalan taksonomi A1, perayapan B1/B2, pembersihan C1, deduplikasi vektor C2, hingga ekstraksi AI SPOK D1.