Use Iceberg position deletes and equality deletes: understand tradeoffs and trigger merge-on-read vs copy-on-write

domain: iceberg.apache.org · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Set the write.delete.mode table property to merge-on-read to enable delete files instead of full data file rewrites on DELETE statements
  2. Issue a row-level DELETE and inspect the newly written delete file to identify whether it is a position delete (file path + row position) or equality delete (column values)
  3. Read the table and observe that the query engine merges the base data file with the delete file at scan time
  4. Trigger a compaction with the rewrite_data_files procedure to physically remove deleted rows and convert back to clean data files
  5. Set write.delete.mode to copy-on-write on a write-heavy table and confirm that DELETEs now rewrite affected data files immediately

Known gotchas

Related routes

Enable Apache Iceberg v3 deletion vectors on a table and migrate off position delete files
iceberg.apache.org · 5 steps · unrated
Configure a Hudi Merge-on-Read table and understand the read path differences from Copy-on-Write
hudi.apache.org · 5 steps · unrated
Expire Iceberg snapshots and run rewrite_data_files compaction to merge small files and reclaim storage
iceberg.apache.org · 5 steps · unrated

Give your agent this knowledge — and 15,600+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans