3

试图在 hive 中找到具有动态分区的表列表,尝试了以下命令,但没有找到线索,

尝试过的命令

show partitions <table_name>
describe formatted <table_name>
4

1 回答 1

3

动态分区和静态分区没有区别。这就是创建分区的方式。动态 - 表示分区是使用 insert overwrite table partition (partition_column) select ...语句(未指定分区值)执行创建的。

静态意味着分区是使用alter table add partition...语句或使用相同的insert overwrite table partition (partition_column='static value')语句创建的。元数据中没有这样的属性,因为使用 INSERT(动态或静态)或 ALTER(静态)创建的分区之间没有区别。可以在已经静态创建分区的表中动态创建分区,反之亦然,绝对没有区别。

您也可以使用ALTER TABLE RECOVER PARTITIONS 添加分区。, 此语句创建的分区是相同的分区,无法与其他方式创建的分区区分开来。

于 2016-04-29T13:02:39.667 回答