# Write a columnar file

Publish / file

write Parquet, ORC, Avro, Iceberg, Delta

Page: <https://meridian.online/operations/write-a-columnar-file>

## Status

Not built yet.

arcform does not do this yet. [Its place on the roadmap](https://meridian.online/roadmap#write-a-columnar-file)

arcform has `parquet_export` for Parquet files.

## Variants

- [Write an Arrow file or stream](https://meridian.online/operations/write-a-columnar-file/write-an-arrow-file): Write rows as an Arrow IPC file or record-batch stream.
- [Write an Avro file](https://meridian.online/operations/write-a-columnar-file/write-an-avro-file): Write rows as Avro records to a container file.
- [Write a lake table](https://meridian.online/operations/write-a-columnar-file/write-a-lake-table): Write rows into a Delta Lake, Iceberg or Hudi table, committing a new table version.
- [Write an ORC file](https://meridian.online/operations/write-a-columnar-file/write-an-orc-file): Write rows to a file in ORC format.
- Write another columnar format: Write a columnar format outside the common ones, such as Vortex.
- [Write a Parquet file](https://meridian.online/operations/write-a-columnar-file/write-a-parquet-file): Write rows to one or more Parquet files, optionally partitioned and compressed.

## What other tools call it

Meridian's classification; an independent blind rating agreed on 86.2% of 312 rows (exact class, version 2).

- Azure Data Factory: [`Avro format (sink)`](https://learn.microsoft.com/en-us/azure/data-factory/format-avro) (read 2026-09-27)
- Azure Data Factory: [`Delta format (sink)`](https://learn.microsoft.com/en-us/azure/data-factory/format-delta) (read 2026-09-27)
- Azure Data Factory: [`Iceberg format (sink)`](https://learn.microsoft.com/en-us/azure/data-factory/format-iceberg) (read 2026-09-27)
- Azure Data Factory: [`ORC format (sink)`](https://learn.microsoft.com/en-us/azure/data-factory/format-orc) (read 2026-09-27)
- Azure Data Factory: [`Parquet format (sink)`](https://learn.microsoft.com/en-us/azure/data-factory/format-parquet) (read 2026-09-27)
- Apache DataFusion: [`Data Insert: COPY .. INTO ..`](https://datafusion.apache.org/user-guide/features.html) (read 2026-09-27)
- Apache DataFusion: [`Data Insert: Parquet`](https://datafusion.apache.org/user-guide/features.html) (read 2026-09-27)
- Apache DataFusion: [`write_parquet`](https://docs.rs/datafusion/latest/datafusion/dataframe/struct.DataFrame.html) (read 2026-09-27)
- Duckle: [`Apache Iceberg`](https://github.com/slothflowlabs/duckle/blob/f85f8960edfb6efbf4cb89d58a7b32e16df0e867/website/docs/components.html) (read 2026-09-25)
- Duckle: [`Avro`](https://github.com/slothflowlabs/duckle/blob/f85f8960edfb6efbf4cb89d58a7b32e16df0e867/website/docs/components.html) (read 2026-09-25)
- Duckle: [`Checkpoint`](https://github.com/slothflowlabs/duckle/blob/f85f8960edfb6efbf4cb89d58a7b32e16df0e867/frontend/src/workflow-ui/palette-data.ts) (read 2026-09-25)
- Duckle: [`Delta Lake`](https://github.com/slothflowlabs/duckle/blob/f85f8960edfb6efbf4cb89d58a7b32e16df0e867/frontend/src/workflow-ui/palette-data.ts) (read 2026-09-25)
- Duckle: [`Parquet`](https://github.com/slothflowlabs/duckle/blob/f85f8960edfb6efbf4cb89d58a7b32e16df0e867/website/docs/components.html) (read 2026-09-25)
- Duckle: [`Vortex`](https://github.com/slothflowlabs/duckle/blob/f85f8960edfb6efbf4cb89d58a7b32e16df0e867/frontend/src/workflow-ui/palette-data.ts) (read 2026-09-25)
- EasyMorph: [`Export to Apache Parquet`](https://help.easymorph.com/doku.php?id=transformations:exportapacheparquet) (read 2026-09-27)
- AWS Glue: [`Avro (write)`](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format-avro-home.html) (read 2026-09-27)
- AWS Glue: [`Delta Lake (write)`](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format-delta-lake.html) (read 2026-09-27)
- AWS Glue: [`Hudi (write)`](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format-hudi.html) (read 2026-09-27)
- AWS Glue: [`Iceberg (write)`](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format-iceberg.html) (read 2026-09-27)
- AWS Glue: [`ORC (write)`](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format-orc-home.html) (read 2026-09-27)
- AWS Glue: [`Parquet (write)`](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format-parquet-home.html) (read 2026-09-27)
- Apache Hop: [`Avro file output`](https://hop.apache.org/manual/latest/pipeline/transforms/avro-file-output.html) (read 2026-09-27)
- Apache Hop: [`Data stream output`](https://hop.apache.org/manual/latest/pipeline/transforms/data-stream-output.html) (read 2026-09-27)
- Apache Hop: [`Parquet file output`](https://hop.apache.org/manual/latest/pipeline/transforms/parquet-file-output.html) (read 2026-09-27)
- Apache Hop: [`Spark lake table output`](https://hop.apache.org/manual/latest/pipeline/transforms/spark-lake-table-output.html) (read 2026-09-27)
- Apache NiFi: [`AvroRecordSetWriter`](https://nifi.apache.org/components/org.apache.nifi.avro.AvroRecordSetWriter/) (read 2026-09-27)
- Apache NiFi: [`ParquetIcebergWriter`](https://nifi.apache.org/components/org.apache.nifi.services.iceberg.parquet.ParquetIcebergWriter/) (read 2026-09-27)
- Apache NiFi: [`PutIcebergRecord`](https://nifi.apache.org/components/org.apache.nifi.processors.iceberg.PutIcebergRecord/) (read 2026-09-27)
- Pentaho Data Integration: [`Avro Output`](https://docs.pentaho.com/pdia-data-integration/9.3-data-integration/pdi-transformation-steps-reference-overview) (read 2026-09-27)
- Pentaho Data Integration: [`ORC Output`](https://docs.pentaho.com/pdia-data-integration/9.3-data-integration/pdi-transformation-steps-reference-overview) (read 2026-09-27)
- Pentaho Data Integration: [`Parquet Output`](https://docs.pentaho.com/pdia-data-integration/9.3-data-integration/pdi-transformation-steps-reference-overview) (read 2026-09-27)
- Polars: [`DataFrame.write_avro`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`DataFrame.write_delta`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`DataFrame.write_iceberg`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`DataFrame.write_ipc`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`DataFrame.write_ipc_stream`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`DataFrame.write_parquet`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`LazyFrame.sink_delta`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`LazyFrame.sink_iceberg`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`LazyFrame.sink_ipc`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Polars: [`LazyFrame.sink_parquet`](https://docs.pola.rs/api/python/stable/reference/io.html) (read 2026-09-27)
- Power Query M: [`Arrow.ToBinary`](https://learn.microsoft.com/en-us/powerquery-m/arrow-tobinary) (read 2026-09-27)
- Talend: [`tAvroOutput`](https://help.qlik.com/talend/en-US/components/8.0/avro/avro-component) (read 2026-09-27)
- Talend: [`tFileOutputORC`](https://help.qlik.com/talend/en-US/components/8.0/orc/orc-component) (read 2026-09-27)
- Talend: [`tFileOutputParquet`](https://help.qlik.com/talend/en-US/components/8.0/parquet/parquet-component) (read 2026-09-27)
- VisiData: [`arrow (saver)`](https://github.com/saulpw/visidata/blob/7609212ec2febafa9caba7183cbebfaf49627909/visidata/loaders/arrow.py#L83) (read 2026-09-23)
- VisiData: [`arrows (saver)`](https://github.com/saulpw/visidata/blob/7609212ec2febafa9caba7183cbebfaf49627909/visidata/loaders/arrow.py#L125) (read 2026-09-23)
- VisiData: [`parquet (saver)`](https://github.com/saulpw/visidata/blob/7609212ec2febafa9caba7183cbebfaf49627909/visidata/loaders/parquet.py#L150) (read 2026-09-23)
