我有一个表(main_table),它被分区并存储记录的历史记录,并带有一个标志来指示记录是否被删除。我有另一个 table9del_table),它与 main_table 具有相同的模式,但只存储一天的已删除记录 (delete_falg='Y')。
作为一个过程,我需要每天将 del_table 中可用的记录移动到 main_table。我正在尝试编写一个 LOAD DATA INPATH 命令,它可以将 del_table 的各个分区中的可用数据移动到 main_table 的相应分区,但我的尝试似乎都没有用。请让我知道是否可以通过使用 LOAD DATA INPATH 命令来实现它,而无需指定单独的分区?
我正在尝试以下步骤,但在第二步中失败了: 设置非严格的配置单元属性:
LOAD DATA INPATH '...../del_table/' into table main_table partition(partition_col_name)
最佳答案
您是否必须在路径中使用贷款数据?
如果不是,您可以执行以下操作 https://cwiki.apache.org/confluence/display/Hive/Tutorial#Tutorial-DynamicpartitionInsert
虽然这会每天重新生成整个表。
关于hadoop - HQL - 如何将几个分区中的数据从一个表复制/移动到另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20356240/