我有一个每小时运行一次的 hive 脚本,其中包含以下查询。

create table sometable as select s.*,d.parent, d.key
    from ${tablename} s join dictionary d
    where lower(concat(${columnname1},${columnname2})) rlike lower(d.Related_Key);

因此,在运行配置单元脚本之前,需要每次手动删除表。

有什么优雅的解决方案吗?

使用的Hive版本:0.12.0 CDH 4.6

最佳答案

如何在表上进行插入覆盖。像这样

insert overwrite table sometable as select s.*,d.parent, d.key
    from ${tablename} s join dictionary d
    where lower(concat(${columnname1},${columnname2})) rlike lower(d.Related_Key);

关于hadoop - 每小时需要在配置单元中创建相同的表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26459742/

10-12 17:32