Publish / file · All operations
Write a columnar file
Write Parquet, ORC, Avro, Iceberg, Delta.
Status
- In arcform
Not built yet
arcform does not do this yet. Its place on the roadmap
arcform has
parquet_exportfor Parquet files.- Shape of the result
- the table sent out, with nothing new to look at
- Level
- one clause of SQL
Variants
- Write an Arrow file or stream
Write rows as an Arrow IPC file or record-batch stream.
- Write an Avro file
Write rows as Avro records to a container file.
- Write a lake table
Write rows into a Delta Lake, Iceberg or Hudi table, committing a new table version.
- Write an ORC file
Write rows to a file in ORC format.
- Write a Parquet file
Write rows to one or more Parquet files, optionally partitioned and compressed.
Write another columnar format
Write a columnar format outside the common ones, such as Vortex.
What other tools call it
Meridian's classification; an independent blind rating agreed on 86.2% of 312 rows (exact class, version 2).
Apache DataFusion (3)
Data Insert: COPY .. INTO ..read 2026-09-27Write a table or query result to files
Data Insert: Parquetread 2026-09-27Write results as Parquet
write_parquetread 2026-09-27DataFrame method: Execute and write the results to Parquet files
Apache Hop (4)
Avro file outputread 2026-09-27Write rows as Avro records to a file or field
Data stream outputread 2026-09-27Write rows to an Arrow file, random-access file or Flight data stream
Parquet file outputread 2026-09-27Write rows to Apache Parquet files
Spark lake table outputread 2026-09-27Write Delta Lake or Iceberg tables on native Spark with ACID commits
Apache NiFi (3)
AvroRecordSetWriterread 2026-09-27Write a record set in binary Avro format
ParquetIcebergWriterread 2026-09-27Serialise records as Apache Parquet for Apache Iceberg tables
PutIcebergRecordread 2026-09-27Write records to an Apache Iceberg table through a configured catalog
AWS Glue (6)
Avro (write)read 2026-09-27Write Avro files and folders to Amazon S3
Delta Lake (write)read 2026-09-27Write Delta Lake tables
Hudi (write)read 2026-09-27Write Hudi tables
Iceberg (write)read 2026-09-27Write Iceberg tables
ORC (write)read 2026-09-27Write ORC files and folders to Amazon S3
Parquet (write)read 2026-09-27Write Parquet files and folders to Amazon S3
Azure Data Factory (5)
Avro format (sink)read 2026-09-27Write Avro files in copy activity and mapping data flow
Delta format (sink)read 2026-09-27Write Delta files in mapping data flow
Iceberg format (sink)read 2026-09-27Write Iceberg files in copy activity
ORC format (sink)read 2026-09-27Write ORC files in copy activity and mapping data flow
Parquet format (sink)read 2026-09-27Write Parquet files in copy activity and mapping data flow
Duckle (6)
Apache Icebergread 2026-09-25write an Iceberg table
Avroread 2026-09-25write an Avro container file
Checkpointread 2026-09-25pass rows through and write a Parquet snapshot to a path
Delta Lakeread 2026-09-25append to a local Delta Lake table through an attached delta catalog
Parquetread 2026-09-25write Parquet with COPY, optional partitioning and compression
Vortexread 2026-09-25write a Vortex columnar file, bridged through Parquet
EasyMorph (1)
Export to Apache Parquetread 2026-09-27Write the table to a Parquet file
Pentaho Data Integration (3)
Avro Outputread 2026-09-27Serialise rows as binary or JSON Avro and write them to a file
ORC Outputread 2026-09-27Write rows to a file in ORC format
Parquet Outputread 2026-09-27Map fields and write rows to Parquet files
Polars (10)
DataFrame.write_avroread 2026-09-27Write a frame to an Avro file
DataFrame.write_deltaread 2026-09-27Write a frame as a Delta Lake table
DataFrame.write_icebergread 2026-09-27Write a frame to an Iceberg table
DataFrame.write_ipcread 2026-09-27Write a frame to an Arrow IPC (Feather) file
DataFrame.write_ipc_streamread 2026-09-27Write a frame to an Arrow IPC record-batch stream
DataFrame.write_parquetread 2026-09-27Write a frame to a Parquet file
LazyFrame.sink_deltaread 2026-09-27Run a lazy query and write the result as a Delta Lake table
LazyFrame.sink_icebergread 2026-09-27Run a lazy query and write the result to an Iceberg table
LazyFrame.sink_ipcread 2026-09-27Run a lazy query in streaming mode and write the result to Arrow IPC
LazyFrame.sink_parquetread 2026-09-27Run a lazy query in streaming mode and write the result to Parquet
Power Query M (1)
Arrow.ToBinaryread 2026-09-27Write the rows of a table as an Apache Arrow IPC stream
Talend (3)
tAvroOutputread 2026-09-27Write rows to Avro files in a distributed file system
tFileOutputORCread 2026-09-27Write records to ORC files
tFileOutputParquetread 2026-09-27Write records to Parquet files
VisiData (3)
arrow (saver)read 2026-09-23Save as Arrow IPC file
arrows (saver)read 2026-09-23Save as Arrow IPC stream
parquet (saver)read 2026-09-23Save as Apache Parquet
Background
In a column-oriented format, each column of a table is stored one after the other, so values of the same column sit close together.[1] Examples of column-oriented formats include Apache ORC, Apache Parquet and Apache Arrow.[1] Table formats such as Apache Iceberg, Delta Lake and Apache Hudi build a metadata layer on top of Parquet files, for features such as time-travel queries.[2]
When to use it
Row-oriented formats are more commonly used in online transaction processing (OLTP), and column-oriented formats in online analytical processing (OLAP).[1] In Apache Parquet, queries that fetch specific column values need not read the entire row.[2] Reach for a columnar file when the data will be read many times by analytical queries, and keep a row-oriented format for data that arrives and changes a row at a time. (Meridian's view)
DuckDB's COPY ... TO statement exports data from DuckDB to an external file, Parquet files included.[3] In DuckDB, COPY ... TO overwrites the destination file if it already exists, without raising an error.[3] By default, DuckDB writes to a temporary file first and replaces an existing destination only once the write completes successfully, so an interrupted write does not corrupt the previous file.[3] In DuckDB, reading from and writing to the same file in a single statement is not guaranteed to be safe.[3] Treat a columnar file as something written whole and replaced whole, and write it to a path that no query in the same statement reads. (Meridian's view)
The method
Tabular data is two-dimensional, but computer systems represent data in a linear memory model, so a table has to be mapped into a one-dimensional space.[1] Data orientation is the decision taken in mapping a table into linear memory, and the two prominent mappings are row-oriented and column-oriented.[1] A column-oriented layout benefits from a smaller compressed size, as a result of higher homogeneity within a column than within multiple rows.[1] A column-oriented layout can also use dedicated encodings, such as a bitmap for a Boolean column or run-length encoding of a column.[1]
Parquet is widely used as the underlying file format in cloud-based data lake architectures.[2] In data lakes built on Iceberg, Delta Lake or Hudi, Parquet files serve as the immutable storage layer while the table formats manage data versioning and transactional integrity.[2]
Compared with the alternatives
Predominant examples of row-oriented formats include comma-separated values (CSV) files and the formats used in most relational databases.[1] Because row and column orientations represent the same data, a row-oriented dataset can be converted to a column-oriented one and back at the expense of compute.[1] Advanced query engines often convert between orientations during execution: an Apache Spark query may read Parquet, load it into Spark's row-oriented in-memory format and convert it to Arrow for a specific computation.[1] A CSV export suits a person who will open the file in a spreadsheet; a columnar file suits the next query. (Meridian's view)
Sources
- [1]Data orientation - Wikipediasecondary source
- [2]Apache Parquet - Wikipediasecondary source
- [3]COPY Statement – DuckDBdocumentation
Used in
15 Protocols use this operation:
- NAICS — Industry Classification, step
export_naics - Epoch AI Notable AI Models dataset, step
export_models - GLEIF — Legal Entity Identifiers, step
export_gleif - California Housing dataset, step
export_california_housing - Census Income (Adult) dataset, step
export_census_income - EDGAR ↔ GLEIF — Company-to-LEI Crosswalk, steps
export_sec_entities,export_edgar_gleif - MedMCQA dataset, step
export_medmcqa - Movies (vega-datasets) dataset, step
export_movies - Online Retail II dataset, step
export_retail_orders - Palmer Penguins dataset, step
export_penguins - ScienceQA dataset, step
export_scienceqa - SuperGPQA dataset, steps
export_corpus,export_supergpqa - NYC Yellow Taxi Trips dataset, step
export_trips - SEC EDGAR — Company Tickers, step
export_edgar - USGS Earthquakes 2025 dataset, step
export_earthquakes