Supported Properties of Apache Iceberg Tables
You can use table properties to configure many aspects of Iceberg tables. The full list of table properties is here. Dremio supports the following subset of table properties, which you can set when you create or alter an Iceberg table:
Property | Description | Option |
---|---|---|
commit.manifest.target-size-bytes | The target size when merging manifest files. | 8 MB |
commit.status-check.num-retries | The number of times to check whether a commit succeeded after a connection is lost before failing due to an unknown commit state. | 3 |
format-version | The table’s format version (can be 1 or 2), as defined in the Spec. | 1 |
history.expire.max-snapshot-age-ms | The default maximum age of snapshots to keep while expiring snapshots. | 432000000 (5 days) |
history.expire.min-snapshots-to-keep | The default minimum number of snapshots to keep while expiring snapshots. | 1 |
write.delete.mode | The table’s method for handling row-level deletes. See Row-Level Changes on the Lakehouse: Copy-On-Write vs. Merge-On-Read in Apache Iceberg for more information on which mode is best for your table’s DML operations | copy-on-write (default) or merge-on-read |
write.merge.mode | The table’s method for handling row-level merges. See Row-Level Changes on the Lakehouse: Copy-On-Write vs. Merge-On-Read in Apache Iceberg for more information on which mode is best for your table’s DML operations | copy-on-write (default) or merge-on-read |
write.update.mode | The table’s method for handling row-level updates. See Row-Level Changes on the Lakehouse: Copy-On-Write vs. Merge-On-Read in Apache Iceberg for more information on which mode is best for your table’s DML operations | ‘copy-on-write’ (default) or ‘merge-on-read’ |
write.metadata.delete-after-commit.enabled | Controls whether to delete the oldest tracked version metadata files after commit. | FALSE |
write.metadata.previous-versions-max | The maximum number of previous version metadata files to keep before deleting after commit. | 100 |
write.parquet.compression-codec | The Parquet compression codec. Allowed values: zstd, gzip, snappy | snappy |
write.parquet.compression-level | The Parquet compression level. From the currently supported codecs only ZSTD allows setting the compression level. | null |
To view the properties that are set for a table, use the SQL command SHOW TBLPROPERTIES.