Free PARQUET test files and sample generator

Columnar binary storage format for analytics and big-data pipelines. Efficient compression and query performance.

Generate a .parquet file →

What is a .parquet file?

PARQUET: Apache Parquet. Parquet is a columnar binary format built for analytics: it stores values column by column so a query can read only what it needs. It is the storage layer of most data lakes and the standard output of Spark and pandas pipelines.

Why generate a test PARQUET file?

What you can put inside a .parquet file

You get 2 content options for PARQUET, so the file holds something meaningful rather than random padding: Numeric table, Text table. For PARQUET these are alternatives, so choose the one that matches what you need to test.

How a .parquet file is identified

Every .parquet file begins with 50 41 52 31, "PAR1", and it appears at BOTH ends of the file. That is what a validator inspecting content rather than the file name looks for.

How the size lands on the exact byte

Readers reach the data through offsets in the footer, so padding between the data page and the footer is invisible to them.

Negative testing with broken PARQUET files

Which failure to reach for, and what to assert for each, is covered in how to make a corrupted file for testing. For upload limits and type checks see testing file upload validation.

Sample PARQUET content

[Columnar binary], schema: id:int, name:string, amount:double

This shows the shape of the file. Your download is generated fresh at the size you choose, so the values will differ.

How to open and verify the file

Read with `pandas.read_parquet(path)`, DuckDB (`SELECT * FROM 'file.parquet'`), or `parquet-tools schema`.

Media type application/vnd.apache.parquet · extension .parquet · category Data

Generate a .parquet file → · questions about sizes, privacy or cost are answered on the site FAQ.

Frequently asked questions about PARQUET files

What identifies a .parquet file?

A .parquet file begins with the bytes 50 41 52 31, "PAR1", and it appears at BOTH ends of the file. Those bytes are what a content-sniffing validator looks for, and what the Corrupted condition destroys.

How can a .parquet file be an exact number of bytes?

Readers reach the data through offsets in the footer, so padding between the data page and the footer is invisible to them.

What can go inside the PARQUET file?

There are 2 content options for .parquet: Numeric table, Text table. For PARQUET these are alternatives, so pick the one matching what you need to test.

Can I download several broken PARQUET files at once?

Yes, select more than one File Condition and you get one ZIP containing a .parquet per condition, each named after its condition.

Can the PARQUET file use UTF-16 or a byte-order mark?

No, and deliberately. A .parquet file is a container rather than plain text, so rewriting its bytes as UTF-16 would not produce a UTF-16 document. It would produce a broken file. Use a text format such as CSV, JSON or XML for encoding tests.

How do I open or verify the PARQUET file?

Read with pandas.read_parquet(path), DuckDB (SELECT * FROM 'file.parquet'), or parquet-tools schema.

Related Data formats

CSV · JSON · XLSX · XML · SQL · TSV · YAML · JSONL

Browse all file formats →