Parquet File Format

Apa itu Parquet File Format?

Dalam dunia data science atau big data mungkin kamu pernah mendengar istilah data disimpan dalam file dengan format Parquet. Apa itu Parquet file format? Bagaimana karakteristik, apa saja manfaat dan kelebihannya, serta apa perbedaannya dengan CSV format.

Mari kita bahas satu per satu dalam artikel ini ya, simak terus ya.

Apa itu Parquet File Format?

Parquet atau Apache Parquet adalah format file open source untuk menyimpan data berorientasi kolom yang dirancang untuk penyimpanan dan pengambilan data secara efisien. Format file ini memberikan skema kompresi dan pengkodean data yang efisien dengan kinerja yang ditingkatkan untuk menangani data kompleks secara massal.

Apache Parquet dirancang untuk menjadi format pertukaran umum untuk beban kerja batch dan interaktif. Ini mirip dengan format file penyimpanan kolom lainnya yang tersedia di Hadoop, yaitu RCFile dan ORC.

Karakteristik Parquet

Berikut ini karakteristik file dengan format Parquet:

  • Format file open source dan gratis.
  • Bahasa agnostik.
  • Format berbasis kolom – file diatur menurut kolom, bukan menurut baris, yang menghemat ruang penyimpanan dan mempercepat kueri analitik.
  • Digunakan untuk kasus penggunaan analitik (OLAP), biasanya bersama dengan database OLTP tradisional.
  • Kompresi dan dekompresi data yang sangat efisien.
  • Mendukung tipe data kompleks dan struktur data bersarang tingkat lanjut.

Manfaat dari Parquet

Berikut beberapa manfaat jika kita menggunakan file berformat parquet:

  • Baik untuk menyimpan data besar dalam bentuk apa pun (tabel data terstruktur, gambar, video, dokumen).
  • Menghemat ruang penyimpanan di cloud dengan menggunakan kompresi kolom yang sangat efisien, dan skema pengodean yang fleksibel untuk kolom dengan tipe data yang berbeda.
  • Peningkatan throughput (penempatan) dan kinerja data dengan menggunakan teknik seperti melewatkan data, di mana kueri yang mengambil nilai kolom tertentu tidak perlu membaca seluruh baris data.

Apache Parquet diimplementasikan menggunakan algoritma penghancuran dan perakitan, yang mengakomodasi struktur data kompleks yang dapat digunakan untuk menyimpan data.

Parquet dioptimalkan untuk bekerja dengan data kompleks dalam jumlah besar dan menampilkan berbagai cara untuk jenis kompresi dan pengkodean data yang efisien. Pendekatan ini paling baik terutama untuk kueri yang perlu membaca kolom tertentu dari tabel besar. Parquet hanya dapat membaca kolom yang dibutuhkan sehingga sangat meminimalkan IO (input/output).

Keuntungan Menyimpan Data dalam Format Kolom

Jika kamu bertanya-tanya, kenapa sih kita lebih baik menyimpan data dalam format kolom-kolom. Berikut ini keuntungannya:

  • Penyimpanan kolom seperti Apache Parquet dirancang untuk menghadirkan efisiensi dibandingkan dengan file berbasis baris seperti CSV. Saat melakukan kueri, penyimpanan kolom dapat melewatkan data yang tidak relevan dengan sangat cepat. Akibatnya, permintaan agregasi lebih sedikit memakan waktu dibandingkan dengan basis data berorientasi baris. Cara penyimpanan ini telah menghasilkan penghematan perangkat keras dan meminimalkan latensi untuk mengakses data.
  • Apache Parket dibangun dari bawah ke atas. Oleh karena itu ia dapat mendukung struktur data bersarang tingkat lanjut. Tata letak file data Parquet dioptimalkan untuk kueri yang memproses data dalam jumlah besar, dalam kisaran gigabyte untuk setiap file terpisah.
  • Parquet dibangun untuk mendukung opsi kompresi yang fleksibel dan skema pengkodean yang efisien. Karena tipe data untuk setiap kolom sangat mirip, kompresi setiap kolom sangat mudah (yang membuat kueri menjadi lebih cepat). Data dapat dikompresi dengan menggunakan salah satu dari beberapa codec yang tersedia; akibatnya, file data yang berbeda dapat dikompresi secara berbeda.
  • Apache Parquet berfungsi paling baik dengan teknologi interaktif dan tanpa server (serverless) seperti AWS Athena, Amazon Redshift Spectrum, Google BigQuery, dan Google Dataproc.

Perbedaan antara Parquet dan CSV

CSV adalah format sederhana dan umum yang digunakan oleh banyak alat seperti Excel, Google Sheets, dan banyak lainnya. Meskipun file CSV adalah format default untuk pipeline pemrosesan data, file ini memiliki beberapa kelemahan:

  • Amazon Athena dan Spectrum akan membebankan biaya berdasarkan jumlah data yang dipindai per kueri.
  • Google dan Amazon akan menagih Anda sesuai dengan jumlah data yang disimpan di GS/S3.
  • Tagihan Google Dataproc berdasarkan waktu.


Parquet telah membantu penggunanya mengurangi kebutuhan penyimpanan setidaknya sepertiga pada kumpulan data besar, selain itu, ini sangat meningkatkan waktu pemindaian dan deserialisasi, sehingga berdampak pada biaya keseluruhan.

Tabel berikut membandingkan penghematan serta percepatan yang diperoleh dengan mengonversi data menjadi Parquet dari CSV.

DatasetSize on Amazon S3Query Run TimeData ScannedCost
Data stored as CSV files1 TB236 detik1,15 TB$5,75
Data stored in Apache Parquet Format130 GB6,78 detik2,51 GB$0,01
Savings87% ketika menggunakan Parquet34 kali lebih cepat99% lebih sedikit data yang discan99,7% lebih hemat
Perbandingan penggunaan format Parquet vs CSV

Itulah sekilah tentang format file Parquet. Semoga dengan membaca artikel ini menambah pengetahuan kamu tentang penyimpanan data yang lebih efisien dan murah di cloud computing.

Source: https://www.databricks.com/glossary/what-is-parquet