【问题标题】:Hive partitioned view not showing partitions infoHive 分区视图不显示分区信息
【发布时间】:2018-05-11 12:33:15
【问题描述】:

我在 Hive 中创建了一个分区视图,如下所示

create view if not exists view_name
PARTITIONED ON(date)
as
select col1,col2,date
from table1
union all
select col1,col2,date
from table2

基础表在“日期”列上进行分区。当我使用DESCRIBE FORMATTED VIEW_NAME 时,我可以看到分区信息为空,如屏幕截图所示。 enter image description here

如果我使用 SHOW CREATE TABLE View_Name,我会得到如下不带分区的视图定义

create view if not exists view_name
as
select col1,col2,date
from table1
union all
select col1,col2,date
from table2

请告诉我我错过了什么

【问题讨论】:

    标签: hadoop hive hiveql cloudera hive-partitions


    【解决方案1】:

    来自 hive 文档

    虽然目前视图分区之间没有连接 和底层表分区,Hive 确实提供依赖 作为 ALTER VIEW ADD 的钩子调用的一部分的信息 分割。它通过编译表单的内部查询来做到这一点

    换句话说,在有关基础表的视图中没有可用的分区信息。一种解决方法(取决于您的视图查询的复杂程度)如下添加分区

    ALTER VIEW view_name ADD [IF NOT EXISTS] partition_spec partition_spec
    

    至少从用户的角度来看,它将提供有关基础表中可用分区的信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-06
      • 2019-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-15
      相关资源
      最近更新 更多