You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Butao Zhang (Jira)" <ji...@apache.org> on 2024/01/23 06:56:00 UTC

[jira] [Comment Edited] (HIVE-28015) Iceberg: Add identifier-field-ids support in Hive

    [ https://issues.apache.org/jira/browse/HIVE-28015?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17809762#comment-17809762 ] 

Butao Zhang edited comment on HIVE-28015 at 1/23/24 6:55 AM:
-------------------------------------------------------------

Spark-iceberg uses this *alter set*  syntax to add identifier-field-ids, should we also do like spark?

[https://iceberg.apache.org/docs/latest/spark-ddl/#alter-table--set-identifier-fields]

{{{*}ALTER TABLE prod.db.sample SET IDENTIFIER FIELDS id{*}-- single column}}

{{{*}ALTER TABLE prod.db.sample SET IDENTIFIER FIELDS id, data{*}-- multiple columns}}

 

Or using *primary key(i)* syntax like your example?

*create table ice_pk (i int, j int, primary key(i)) stored as iceberg;*


was (Author: zhangbutao):
Spark-iceberg uses this *alter set*  syntax to add identifier-field-ids, should we also do like spark?

[https://iceberg.apache.org/docs/latest/spark-ddl/#alter-table--set-identifier-fields]

{{*ALTER TABLE prod.db.sample SET IDENTIFIER FIELDS id*-- single column}}

{{*ALTER TABLE prod.db.sample SET IDENTIFIER FIELDS id, data*-- multiple columns}}

 

Or using *primary key(i)* syntax like your example?

*create table ice_pk (i int, j int, primary key(i)) stored as iceberg;*

> Iceberg: Add identifier-field-ids support in Hive
> -------------------------------------------------
>
>                 Key: HIVE-28015
>                 URL: https://issues.apache.org/jira/browse/HIVE-28015
>             Project: Hive
>          Issue Type: Improvement
>            Reporter: Denys Kuzmenko
>            Priority: Major
>
> Some writer engines require primary keys on a table so that they can use them for writing equality deletes (only the PK cols are written to the eq-delete files).
> Hive currently doesn't reject setting PKs for Iceberg tables, however, it just ignores them. This succeeds:
> {code}
> create table ice_pk (i int, j int, primary key(i)) stored as iceberg;
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)