HiveQL视图
视图可以允许保存一个查询并像对待表一样对这个查询进行操作。这是一个逻辑结构,因为它不像一个表会存储数据。换句话说,Hive目前暂不支持物化视图。
当一个查询引用一个视图时,这个视图所定义的查询语句将和用户的查询语句组合在一起,然后供Hive制定查询计划。从逻辑上讲,可以想象为Hive先执行这个视图,然后使用这个结果进行余下后续的查询。
当查询变得长或者复杂的时候,通过使用视图将这个查询语句分割成多个小的、更可控的片段可以降低这种复杂度。
创建语句
create view view_name as select xxx...
使用视图来限制基于条件过滤的数据
数据库允许将视图作为一个安全机制,也就是不给用户直接访问具有敏感数据的原始表,而是提供一个带有where子句限制了的视图。
**但是Hive目前不支持这个功能。因为用户必须具有能够访问整个底层原始表的权限,才能执行视图的语句。**然而通过创建视图来限制数据访问可以用来保护信息不被随意查询。