Penulis: Irvan Gunawan
CSV cocok untuk bertukar data berbentuk tabel yang mudah diperiksa sebagai teks. Parquet berguna ketika alur analisis perlu membaca kolom tertentu dan menyimpan data secara efisien. Pilih dari pekerjaan yang akan dilakukan serta tools penerima file, bukan sekadar ekstensi yang sedang populer.
Perbedaan yang langsung terasa
Dalam CSV, sebuah baris bisa berisi 0017,12: kode barang dan jumlahnya, dipisahkan koma. Saat dibaca oleh software analisis, tipe setiap kolom perlu ditentukan atau ditebak oleh program. Di pandas, parameter dtype pada read_csv dapat dipakai untuk menentukan tipe, termasuk memperlakukan kode barang sebagai teks agar nol di depan tidak hilang.
Parquet adalah format biner berorientasi kolom. Format ini mendukung kompresi dan encoding untuk penyimpanan serta pembacaan data. Karena bukan teks CSV, memeriksa isinya membutuhkan tools yang mendukung Parquet. Dokumentasi Apache Parquet juga mengingatkan bahwa dukungan fitur antarlibrary tidak selalu sama.
Contoh: laporan penjualan dengan banyak kolom
Misalnya tabelmu berisi tanggal, kode barang, jumlah, harga, cabang, dan catatan. Untuk menghitung total unit per barang, kamu hanya memerlukan kode dan jumlah. Fungsi read_parquet di pandas menyediakan parameter columns untuk membaca kolom yang dipilih.
Ini alasan praktis mempertimbangkan Parquet untuk analisis berulang. Namun, jangan langsung menganggap hasilnya selalu lebih cepat atau lebih kecil. Ukuran data, tipe kolom, kompresi, storage, dan proses yang dijalankan perlu dibandingkan pada pekerjaanmu sendiri.
Sebelum mengubah CSV menjadi Parquet
- Simpan file sumber dan tentukan tipe kolom terlebih dahulu: kode barang adalah identitas, bukan angka untuk dijumlahkan.
- Periksa tanggal, nilai kosong, serta jumlah baris setelah file dibaca.
- Pastikan aplikasi penerima mendukung Parquet. Di pandas, to_parquet menulis DataFrame ke file dan menyediakan pilihan kompresi serta penyertaan index.
- Buka hasil konversi dan cocokkan beberapa baris, termasuk kode dengan nol di depan. Konversi format tidak otomatis memperbaiki data yang sudah salah terbaca.
Jika penerima hanya membutuhkan ekspor tabel sederhana, CSV bisa tetap memadai. Jika proses rutin membaca sebagian kolom dari dataset, coba Parquet pada satu salinan data terlebih dahulu.
How useful was this post?
Click on a star to rate it!
Average rating / 5. Vote count:
No votes so far! Be the first to rate this post.