Back to IF4054 Pengoperasian Sistem Perangkat Lunak

DataOps Foundations - From Stale CSV to Principles

Questions/Cues

  • Mengapa CSV hasil ekspor manual adalah masalah?
  • Apa definisi DataOps dan perbedaannya dengan DevOps?
  • Mengapa data lebih sulit daripada kode?
  • Apa prinsip inti dan pilar DataOps?
  • Bagaimana pipeline data gagal secara diam-diam?

Reference Points

  • IF4054 DataOps - Foundation (Slides 6-26)

Running Example: ShopStream

Seluruh sesi memakai satu sistem: orders-api (pesanan e-commerce) yang mengubah aksi bisnis menjadi event (OrderPlaced, PaymentAuthorized, OrderShipped). Tidak ada demo terpisah; satu sistem berevolusi sepanjang kuliah.

Masalah: The Stale CSV

Sebuah CSV hasil ekspor manual tersimpan di MinIO dengan timestamp ekspor tertentu. Lima pesanan baru masuk ke orders-api: bagaimana model atau pihak hilir mengetahuinya? Tidak — sampai seseorang mengekspor lagi. Pertanyaan diskusi: seberapa basi data saat dipakai? apa yang rusak bila dua orang mengekspor di waktu berbeda? siapa pemilik skrip ekspor? Intinya: masalahnya bukan modelnya, melainkan cara data bergerak.

Dari DevOps ke DataOps

DataOps adalah metodologi otomatis berorientasi proses yang dipakai tim analitik dan data untuk meningkatkan kualitas dan memangkas cycle time analitik. Ia meminjam dari Agile, Lean Manufacturing, dan DevOps (serta statistical process control), memperlakukan data pipeline sebagai produk perangkat lunak. Tujuannya: data tepercaya, dikirim secara kontinu.

AspekDevOpsDataOps
Artefak utamaKode (stateless)Data + kode (stateful)
Fokus testingUnit, integration, E2EData quality, schema, anomaly detection
Dampak kegagalanOutage, bug”Garbage in, garbage out”, model ML cacat
Version controlGitGit + data versioning / schema registry

Mengapa Data Lebih Sulit daripada Kode

KodeData
Berubah saat deployBerubah kapan pun dunia berubah
Bug biasanya gagal kerasBug sering gagal diam-diam
Tes deterministikInput tak terbatas dan berantakan
Rollback = redeploy versi lamaRollback = menulis ulang sejarah (sulit)
Satu tim pemilikProducer dan consumer tim berbeda

Prinsip Inti DataOps

  1. Automation — hapus penanganan data manual; otomasi ingestion, testing, deployment.
  2. CI/CD for data — kode pipeline dan definisi skema melewati gate CI/CD seketat kode aplikasi.
  3. Observability — pantau kesehatan pipeline dan kesehatan data (akurat, lengkap, segar).
  4. Collaboration — runtuhkan silo antara data engineer, data scientist, dan pakar domain.

Slide juga memetakan Data Engineering Lifecycle (Reis dan Housley) dengan undercurrents: security, data management, DataOps, data architecture, orchestration, software engineering.

ShopStream: Cara Lama vs Cara DataOps

Cara lamaCara DataOps
Microservice menulis log JSON ke file lokalMem-publish event bertipe (Avro) ke broker (Kafka)
Skrip kustom data scientist men-scrape fileSchema Registry menegakkan kontrak otomatis
Skrip rusak diam-diam saat field baru munculData disimpan immutable di data lake (MinIO) dengan observability

Bagaimana Pipeline Gagal Diam-Diam

KegagalanContoh
Data terlambat/hilangConsumer mati, lake basi
Data duplikatReplay setelah crash
Schema driftField di-rename di hulu
Nilai buruktotal_amount negatif
Data sensitif bocorEmail mentah di lake

Summary

Stale CSV menunjukkan bahwa masalah data adalah soal cara data bergerak, bukan model. DataOps menerapkan Agile, Lean, dan DevOps pada pipeline data (artefak: data + kode, stateful; testing: quality, schema, anomaly). Data lebih sulit dari kode karena berubah mengikuti dunia, gagal diam-diam, tak terbatas dan berantakan, sulit di-rollback, dan dimiliki banyak pihak. Empat prinsip: automation, CI/CD for data, observability, collaboration. Pipeline data gagal secara diam-diam lewat data terlambat, duplikat, schema drift, nilai buruk, dan kebocoran data sensitif.