
Hive
自学大数据的菜鸡
这个作者很懒,什么都没留下…
展开
-
Hive3.x版本判断struct是否为null的bug
项目场景:在Hive中需要写一些判断结构体是否为null的语句问题描述:例如struct是一个结构体,它有一些字段比如user_id,page_id等等,在Hive3.x版本中,使用struct is not null时没有把结构体为null的数据筛选掉。原因分析:这是Hive3.x中的一个bug,在语句的执行计划中,这个判断结构体是否为空的过滤条件直接被忽略了。在数据库中,有RBO(基于规则的优化策略)和CBO(基于代价的优化策略)两种优化策略。实际上就是因为CBO这个优化策略导致的,Hi原创 2022-02-25 14:11:07 · 1421 阅读 · 0 评论 -
Hive里使用SQL语句创建复杂数据类型
前言在Hive使用过程中,有时需要通过sql语句来创建复杂数据类型,例如ARRAY、MAP、STRUCT等,甚至还有嵌套的复杂数据类型例如ARRAY[STRUCT],有必要了解一下sql语句中复杂数据类型的创建。一、Map类型的创建函数名称函数参数函数说明map(key1,value1,key2,value2,…)创建了一个map结构数据,函数参数依次是它的key和value二、Struct类型的创建有两种方式,如下表:函数名称函数参数函数说明原创 2022-02-22 21:58:49 · 1483 阅读 · 0 评论