1. The primary key concept is now added to Iceberg as the identifier
concept in schema. I am in the progress of adding the documentation. You
can read the javadoc for more details for now:
https://github.com/apache/iceberg/blob/master/api/src/main/java/org/apache/iceberg/Schema.java#L189-L210

2. Yes, properties is the one for user metadata.

3. Why do you want to store additional configs and names for snapshot? The
snapshot.summary field is written by engine and has these defined fields:
https://github.com/apache/iceberg/blob/master/core/src/main/java/org/apache/iceberg/SnapshotSummary.java

-Jack

On Fri, May 14, 2021 at 8:49 AM QH Yan <[email protected]> wrote:

> Hi there,
> We want to store 3 different kinds of metadata/config in Iceberg tables.
>
> 1. Additional settings/admin properties for a table (e.g. PrimaryKey info)
> I think it is* table.properties* according to here
> <https://iceberg.apache.org/spec/#table-metadata-fields> and would like
> to confirm.
>
> 2. User metadata at table level.
> Sometimes user wants to take notes about a table. Is there a field for
> this? (map of String is good enough and I don't want to abuse
> table.properties also as the doc points out)
>
> 3. Snapshot name and additional configs
> Seems that* snapshot.summary* is for both of these according to here
> <https://iceberg.apache.org/spec/#snapshots>, am I right?
>
> Thank you!
>
> --
> *Qinhua*
>
>

Reply via email to