在 impala 中更改表:使列成为主键
Posted
技术标签:
【中文标题】在 impala 中更改表:使列成为主键【英文标题】:Alter table in impala : make a column a primary key 【发布时间】:2019-06-06 09:59:29 【问题描述】:使用 Hue,如何更改表以使现有列成为主键?
我检查和类似的东西:
ALTER TABLE table_name ADD CONSTRAINT colname PRIMARY KEY (cs_id);
语法不正确。
注意:数据使用 Kudu 文件系统存储。
【问题讨论】:
【参考方案1】:首先,Impala does not support alter contraint
作为alter table
中的一个选项。
第二,primary keys are very limited:
主键列必须是 CREATE TABLE 语句中指定的第一个。
我认为在定义主键后您不能更改它。在 Impala 中,数据是按主键聚集(即排序)的,因此任何更改都会非常昂贵。
您可能需要重新创建表并重新加载数据。
【讨论】:
【参考方案2】:当您存储为 Kudu 时,您需要考虑到 PK 列需要在创建表时全部创建。 Impala 不支持更改主键。 恐怕您需要删除并重新创建表。
【讨论】:
以上是关于在 impala 中更改表:使列成为主键的主要内容,如果未能解决你的问题,请参考以下文章