【发布时间】:2017-03-10 19:55:57
【问题描述】:
所以我有一个表 A 和表 B,其中表 A 的数据是从表 B 中插入的。 本质上,表 A 与表 B 相同,唯一的区别是表 A 有一个 date_partition 列,而表 B 没有。 表 A 模式是这样的: 身份证号码 school_bg_dt 字符串 log_on_count 整数 active_count int
表 B 架构是: 身份证号码 school_bg_dt 大整数 log_on_count 整数 active_count 整数 date_partition 字符串
这是我将表 B 插入表 A 的查询,其中有一个我无法弄清楚的错误:
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
INSERT OVERWRITE TABLE A PARTITION(date_partition=school_bg_dt)
SELECT ID, cast(school_bg_dt as BIGINT), log_on_count, active_count FROM table
B;
但是,我收到错误,即输入无法识别 date_partition 附近的操作.. 不知道在这里做什么,请帮助... 因此设计是将每个 school_bg_dt 键作为一个分区,因为它具有许多具有该键的唯一数据。
【问题讨论】:
标签: hadoop apache-spark dynamic hive partition