hadoop—如何在hive中获取表是按动态分区还是按静态分区

pwuypxnk  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(446)

尝试查找配置单元中具有动态分区的表列表,尝试了以下命令,但没有找到找到方法的线索,
已尝试命令

show partitions <table_name>
describe formatted <table_name>
x4shl7ld

x4shl7ld1#

动态分区和静态分区没有区别。分区就是这样创建的。动态-意味着分区是使用 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.添加分区。由该语句创建的分区是相同的分区,无法与通过其他方式创建的分区区分开来。

相关问题