HIVE:在查询中强制执行where子句

时间:2017-03-16 22:04:27

标签: hive hiveql

我们有一个按日期分区的HIVE表,我们希望最终用户始终在查询中使用where子句,如果他们不使用它,它应该抛出异常。

HIVE中是否有任何可以强制执行的设置?

1 个答案:

答案 0 :(得分:2)

1

  

hive.metastore.limit.partition.request

     
      
  • 默认值:-1
  •   
  • 添加于:Hive 2.2.0 with HIVE-13884
  •   
     

这限制了可以从Metastore为给定表请求的分区数。   如果尝试获取每个表的更多分区而不是配置的限制,则不会执行查询。   值“-1”表示无限制。   此参数优先于hive.limit.query.max.table.partition(不建议使用)。

https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties#ConfigurationProperties-hive.metastore.limit.partition.request

2

让您的用户通过视图访问数据,例如 -

create view mytable_last_year
as
select  *
from    mytable
where   dt >= add_months(current_date,-12)
;