Data Format

Pemula

Cara data disimpan dan distrukturisasi dalam file, mencakup encoding dan layout-nya. Format yang dipilih menentukan seberapa cepat data bisa dibaca, seberapa kecil ukurannya, dan seberapa mudah diproses.

Apa itu Data Format?

Data Format adalah cara data disimpan dan dikodekan dalam file atau media penyimpanan. Kalau data adalah informasi yang mau kamu sampaikan, format adalah "bahasa" dan "bentuk surat" yang kamu pilih untuk menyampaikannya. Pilihan format yang tepat bisa bikin pipeline data kamu jauh lebih cepat dan hemat biaya, pilihan yang salah bisa bikin query makan waktu berjam-jam dan storage membengkak.

Di dunia data engineering, format bukan cuma soal estetika. Ini keputusan teknis yang punya dampak nyata ke performa, biaya, dan kompatibilitas antar sistem.

Format-format yang Umum Dipakai

FormatTipeCompressionHuman-readableCocok untuk
CSVRow-based, textNggak (by default)YaExport/import sederhana, spreadsheet
JSONRow-based, textNggak (by default)YaAPI response, config, semi-structured data
ParquetColumn-based, binaryYa (built-in)NggakAnalytics, data warehouse, big data
AvroRow-based, binaryYaNggakStreaming, schema evolution
ORCColumn-based, binaryYaNggakHive, Hadoop ecosystem
Excel (.xlsx)Row-based, binaryYa (zip)Via appLaporan manual, kebutuhan bisnis

Row-based vs Column-based

Ini salah satu perbedaan paling penting yang wajib kamu pahami:

Row-based (CSV, JSON, Avro): data disimpan baris per baris. Bagus untuk operasi tulis dan transaksi karena kamu bisa tambah satu baris baru tanpa reorganisasi besar. Tapi kalau kamu cuma butuh 2-3 kolom dari tabel yang punya 100 kolom, kamu tetap harus baca seluruh baris dulu.

Column-based (Parquet, ORC): data disimpan per kolom. Kalau kamu cuma butuh kolom revenue dan date, sistem cuma baca dua kolom itu saja, skip sisanya. Ini kenapa query analitik di BigQuery atau Redshift jauh lebih cepat dan murah kalau pakai format columnar.

Schema: Ketat vs Fleksibel

Beberapa format punya schema yang ketat (Avro, Parquet) di mana struktur data harus didefinisikan dulu sebelum bisa dipakai. Ini bagus untuk konsistensi dan evolusi schema yang terkontrol. Format lain seperti JSON lebih fleksibel tapi rawan inkonsistensi karena satu field bisa string di satu record dan number di record lain tanpa ada yang complain.

Kapan Pakai Format Apa?

  • CSV: kalau harus share data ke orang non-teknis atau sistem legacy yang cuma ngerti CSV
  • JSON: kalau data semi-structured atau datang dari dan ke API
  • Parquet: standar de facto untuk data lake dan analytics. Pilihan default kalau nggak ada alasan spesifik lain
  • Avro: kalau kamu butuh schema evolution yang ketat dan data streaming di Kafka

Rule of thumb: untuk analitik, default ke Parquet. Untuk pertukaran data antar sistem, JSON. Untuk laporan ke tim bisnis, CSV atau Excel.

Lanjut Latihan

Udah paham Data Format? Lanjut latihan SQL dan Excel yuk!

Latihan interaktif, langsung di browser.

Mulai Latihan →