Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/docs/branching.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ title: "Branching and Tagging"

Iceberg table metadata maintains a snapshot log, which represents the changes applied to a table.
Snapshots are fundamental in Iceberg as they are the basis for reader isolation and time travel queries.
For controlling metadata size and storage costs, Iceberg provides snapshot lifecycle management procedures such as [`expire_snapshots`](spark-procedures.md#expire-snapshots) for removing unused snapshots and no longer necessary data files based on table snapshot retention properties.
For controlling metadata size and storage costs, Iceberg provides snapshot lifecycle management procedures such as [`expire_snapshots`](spark-procedures.md#expire_snapshots) for removing unused snapshots and no longer necessary data files based on table snapshot retention properties.

**For more sophisticated snapshot lifecycle management, Iceberg supports branches and tags which are named references to snapshots with their own independent lifecycles. This lifecycle is controlled by branch and tag level retention policies.**
Branches are independent lineages of snapshots and point to the head of the lineage.
Expand Down Expand Up @@ -109,7 +109,7 @@ Creating, querying and writing to branches and tags are supported in the Iceberg

- [Iceberg Java Library](java-api-quickstart.md#branching-and-tagging)
- [Spark DDLs](spark-ddl.md#branching-and-tagging-ddl)
- [Spark Reads](spark-queries.md#time-travel)
- [Spark Reads](spark-queries.md#time-travel-queries-with-sql)
- [Spark Branch Writes](spark-writes.md#writing-to-branches)
- [Flink Reads](flink-queries.md#reading-branches-and-tags-with-SQL)
- [Flink Branch Writes](flink-writes.md#branch-writes)
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/flink-ddl.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ Currently, it does not support computed column and watermark definition etc.
#### `PRIMARY KEY`

Primary key constraint can be declared for a column or a set of columns, which must be unique and do not contain null.
It's required for [`UPSERT` mode](flink-writes.md/#upsert).
It's required for [`UPSERT` mode](flink-writes.md#upsert).

```sql
CREATE TABLE `hive_catalog`.`default`.`sample` (
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/flink-writes.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ Iceberg supports `UPSERT` based on the primary key when writing data into v2 tab
) with ('format-version'='2', 'write.upsert.enabled'='true');
```

2. Enabling `UPSERT` mode using `upsert-enabled` in the [write options](#write-options) provides more flexibility than a table level config. Note that you still need to use v2 table format and specify the [primary key](flink-ddl.md/#primary-key) or [identifier fields](../../spec.md#identifier-field-ids) when creating the table.
2. Enabling `UPSERT` mode using `upsert-enabled` in the [write options](#write-options) provides more flexibility than a table level config. Note that you still need to use v2 table format and specify the [primary key](flink-ddl.md#primary-key) or [identifier fields](../../spec.md#identifier-field-ids) when creating the table.

```sql
INSERT INTO tableName /*+ OPTIONS('upsert-enabled'='true') */
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Iceberg avoids unpleasant surprises. Schema evolution works and won't inadverten
* [Schema evolution](evolution.md#schema-evolution) supports add, drop, update, or rename, and has [no side-effects](evolution.md#correctness)
* [Hidden partitioning](partitioning.md) prevents user mistakes that cause silently incorrect results or extremely slow queries
* [Partition layout evolution](evolution.md#partition-evolution) can update the layout of a table as data volume or query patterns change
* [Time travel](spark-queries.md#time-travel) enables reproducible queries that use exactly the same table snapshot, or lets users easily examine changes
* [Time travel](spark-queries.md#time-travel-queries-with-sql) enables reproducible queries that use exactly the same table snapshot, or lets users easily examine changes
* Version rollback allows users to quickly correct problems by resetting tables to a good state

### Reliability and performance
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/nessie.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ conf.set("spark.sql.catalog.nessie.type", "nessie")
conf.set("spark.sql.catalog.nessie", "org.apache.iceberg.spark.SparkCatalog")
conf.set("spark.sql.extensions", "org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions,org.projectnessie.spark.extensions.NessieSparkSessionExtensions")
```
This is how it looks in Flink via the Python API (additional details can be found [here](flink.md#preparation-when-using-flinks-python-api)):
This is how it looks in Flink via the Python API (additional details can be found [here](flink.md#flinks-python-api)):
```python
import os
from pyflink.datastream import StreamExecutionEnvironment
Expand Down