Start studying
Module 13 · Data Engineering Basics Module contents
Module 13  ·  Card 6 / 13intermediate

Parquet File Format

Parquet is an open columnar file format designed for storing large tables efficiently.

It stores each column separately in compressed chunks, along with the schema and summary statistics.

For example, a table saved as Parquet usually takes much less space than the same table saved as CSV.

Readers can skip columns they do not need, and skip chunks whose minimum and maximum rule out a filter.

Unlike CSV, Parquet keeps column types, so dates stay dates and leading zeros survive.

Learn in depth ↓
Module 13 · Data Engineering Basics · 13 concepts
In depth  /  15 lines

Parquet File Format, in more detail

Parquet is a very common file format for analytical data stored outside a database.

It brings columnar storage, compression and a schema to plain files.

Many tools read and write it, including pandas, Spark and most warehouses.

A Parquet file is split into row groups, and each row group stores its columns in separate chunks.

Each chunk records statistics such as the minimum and maximum values it holds.

A query filtering on order dates can skip row groups whose date range cannot match.

Each column can use its own encoding and compression, chosen to suit its values.

The schema, stored in the file, keeps types such as dates, decimals and nested structures.

Reading a few columns from a wide Parquet file reads only those columns' chunks.

Parquet files are not edited in place, so changing a row means writing a new file.

Many tiny Parquet files slow queries down, so small writes are usually combined into larger files.

Partitioning a dataset into folders, such as one per day, lets readers skip whole folders.

Parquet is not meant for people to read directly, so a quick look needs a tool rather than a text editor.

In practice, converting large CSV exports to Parquet is one of the cheapest performance wins available.

The usual mistake is splitting data into thousands of tiny files, which costs more in overhead than it saves.

Want the full technical article? Wikipedia ↗
Test yourself

One question on this card. Every option explains itself once you pick, right or wrong.

Question 1
A team switches its daily exports from CSV to Parquet. Which benefit should they expect?
Data Engineering Basics

13 concepts in this module, then a graded test with every answer explained.

Study this module →
↑↓ move↵ openesc close