Skip to main content

Overview

Spark is currently the most feature-rich compute engine for Iceberg operations. Apache Iceberg uses Spark’s DataSourceV2 API for data source and catalog implementations, providing comprehensive support for table management, queries, and writes.

Key Features

Full DDL Support

Create, alter, and manage Iceberg tables with complete SQL DDL operations

Advanced Queries

Time travel, metadata tables, and efficient scan planning

Row-Level Operations

MERGE INTO, UPDATE, and DELETE operations for data modification

Streaming Support

Structured Streaming reads and writes with incremental processing

Compatibility

Iceberg integrates with Apache Spark through the DataSourceV2 API, with different levels of support across Spark versions:

Type Compatibility

Iceberg automatically converts between Spark and Iceberg types:

Spark to Iceberg Type Mapping

Iceberg to Spark Type Mapping

Getting Started

1

Add Iceberg Runtime

Include the Iceberg Spark runtime in your Spark environment:
2

Configure Catalogs

Set up Iceberg catalogs in your Spark configuration:
3

Enable SQL Extensions

Add Iceberg SQL extensions for advanced features:

Next Steps

Getting Started

Set up your first Iceberg table with Spark

DDL Operations

Learn about CREATE, ALTER, and DROP commands

Query Data

Execute queries and explore metadata tables

Write Data

Insert, update, and merge data into tables