【问题标题】:Hive Insert Overwrite All Partitions [duplicate]Hive插入覆盖所有分区[重复]
【发布时间】:2020-06-06 20:17:00
【问题描述】:

假设,昨天我加载了 partition_dates 的数据:01-01、02-01 到 10-01 今天加载数据时,我看到 partition_dates 为:01-01、03-01 到 11-01,这意味着 02-01 分区不可用。但是 hive 不会覆盖或删除这个 02-01 分区。

如何动态实现此功能?

【问题讨论】:

    标签: hadoop hive hiveql


    【解决方案1】:

    Truncate the table 然后加载动态分区。

    TRUNCATE [TABLE] table_name [PARTITION partition_spec];
    

    省略 partition_spec 将截断表中的所有分区。

    应该管理表。如果是外部的,则在截断之前进行管理:

    ALTER TABLE mytable SET TBLPROPERTIES('EXTERNAL'='FALSE');
    

    Also you can use drop partition with < or > operator.

    【讨论】:

    猜你喜欢
    • 2015-01-10
    • 1970-01-01
    • 2017-03-01
    • 2015-10-20
    • 2014-11-27
    • 1970-01-01
    • 1970-01-01
    • 2018-10-03
    • 1970-01-01
    相关资源
    最近更新 更多