SmartQueryTools

Convert Parquet to TSV Online

Convert Parquet files to TSV format directly in your browser. No upload required — your data never leaves your device.

About converting Parquet to TSV

Parquet to TSV suits destinations that split on tabs rather than commas. Bioinformatics pipelines, Unix tools such as cut, awk and sort, some legacy warehouse loaders and many labelling tools expect tab-separated text. Columns full of commas, such as addresses, product descriptions or notes, also stay readable when the delimiter is a tab. Many Hive tables and older text loaders were also set up for tab-delimited input, so TSV can be the simplest way to feed a legacy system.

A common path is a Parquet extract from Athena, BigQuery or a Spark job that needs to go into a shell workflow, or into a spreadsheet by copy and paste. Tab-separated text pasted into Excel or Google Sheets lands with each value in its own cell, which comma-separated text does not do reliably.

The output is not strict tab-escaped TSV. A value that contains a tab, a line break or a double quote is wrapped in double quotes with inner quotes doubled, the same rule CSV uses. Readers that follow the strict IANA TSV definition, or PostgreSQL COPY in its default text mode, keep those quotes as literal characters. Look for embedded tabs and line breaks in free-text columns before loading.

Worked example

A small orders export with an ID, a customer name, a date, an amount (one missing) and a true/false flag, converted with the default settings.

Input (Parquet)

Parquet file (binary, columnar) — shown as a table with its schema

order_idcustomerorder_dateamountshipped
1001Acme Ltd2026-03-02249.5true
1002Brightside Co2026-03-021200false
1003Acme Ltd2026-03-0589.99true
1004Northwind2026-03-07NULLfalse

Schema: order_id BIGINT, customer VARCHAR, order_date DATE, amount DOUBLE, shipped BOOLEAN

Output (TSV)

order_id	customer	order_date	amount	shipped
1001	Acme Ltd	2026-03-02	249.5	true
1002	Brightside Co	2026-03-02	1200	false
1003	Acme Ltd	2026-03-05	89.99	true
1004	Northwind	2026-03-07		false

What changes when you convert Parquet to TSV

  • Each Parquet column becomes one tab-separated field, and the column names form the first line.
  • Numbers, DECIMAL digits and booleans (true or false) are written as plain text. Nothing in the file records the original Parquet types.
  • TIME columns are written as clock times such as 09:15:00, with microseconds added only when the value has them, as in 09:15:00.250000.
  • NULL becomes an empty field. Order 1004 has two tabs in a row where its amount would be.
  • List, struct and map columns are written as compact JSON text in one field. Flatten them before converting if you need separate columns.

Your file is processed locally in your browser and is never uploaded. The free limit is 50 MB per file; larger files work if your device has the memory for them.

Frequently Asked Questions

Why are some values in my TSV wrapped in double quotes?

Those values contain a tab, a line break or a double quote. Quoting keeps each record on its own logical line. Any CSV-aware reader set to a tab delimiter handles it correctly.

How do I load this TSV into PostgreSQL?

Use CSV mode with a tab delimiter: COPY my_table FROM '/path/file.tsv' WITH (FORMAT csv, DELIMITER E'\t', HEADER true). The default text format does not understand the quoting.

How are time-of-day columns written?

Parquet TIME values become HH:MM:SS text, like 09:15:00, with a six-digit fraction when the value has sub-second precision. Spreadsheets and most loaders read that form as a time.

What is TSV format?

TSV (Tab-Separated Values) is similar to CSV but uses tab characters as delimiters — useful when data values contain commas.

Related Tools