Hive
初心江湖路
多学一分增一分。
展开
-
Hive .hiverc、严格模式、分桶、Metastore连接方式、内部表外部表选择
Hive在启动之前会先执行.hiverc文件,一些常用的配置参数可以写到这里,比如一些常用的UDF及优先尝试本地模式等。set hive.exec.mode.local.auto=true;在严格模式,如果表的分区很多,数据量很大的情况下,能够避免产生很大的一个MR任务。比如,设置了hive.mapred.mode=strict那么如果在查询的where条件中不加分区字段限制,则限制其不能...原创 2020-04-13 20:51:10 · 367 阅读 · 0 评论 -
HIVE查询优化
所有的调优都离不开对CPU、内存、IO这三样资源的权衡及调整Hive QL的执行本质上是MR任务的运行,因此优化主要考虑到两个方面:Mapreduce任务优化、SQL语句优化一、Mapreduce任务优化1、设置合理的task数量这里有几个考虑的点,一方面Hadoop MR task的启动及初始化时间较长,如果task过多,可能会导致任务启动和初始化时间远超逻辑处理时间,这种情况白白浪费了...原创 2020-02-20 16:53:50 · 879 阅读 · 1 评论 -
再谈Hive开窗函数
开窗函数开窗函数实际上是一种范围限定函数,将某种条件的集合限定在一个目标范围内,形象地称为窗口。在做SQL查询分析时与分析函数配合使用。功能我们在做SQL查询分析时通常会用到sum、count、average、min、max等函数或UDF。而这些函数通常与group by分组功能组合使用,用于在分组内聚合,聚合的结果返回一行记录。而开窗函数扩展了聚合分析,可通过指定窗口大小,让同一分组内返回...原创 2019-12-30 17:14:46 · 911 阅读 · 0 评论 -
Hive中的UDF和UDAF及其用法
UDF1、解释UDF即User Define Function(用户自定义函数),很多数据库都支持UDF,在数据库内置函数无法满足用户的需求时便可以通过UDF来扩展数据库的查询功能,以满足特定需要。2、使用方法自定义一个java类并继承UDF,然后定义若干个evaluate方法(实现不同功能),示例如下package com.example.hive.udf; import org....原创 2019-11-19 21:41:12 · 1113 阅读 · 0 评论 -
Hive窗口函数及分析函数功能和用法总结
窗口函数:FIRST_VALUE功能:返回分组内排序后,截止到当前行的第一个值。这个函数最多需两个参数,第一个参数指定想要得到值的列,第二个参数是个布尔值(可选参数,默认为false),如果设置true,跳过null值。用法示例:select grid, dl_data, FIRST_VALUE(dl_data) over(partition by time_hour order by ...原创 2019-10-27 21:46:48 · 1014 阅读 · 0 评论 -
Hive stage划分
若想知道Hive stage是怎么划分的,需要对Hive的架构有些了解,下面通过一张图来展示本文关心Hive是怎么划分stage的,而这一部分主要跟Compiler有关,所以我们先看看CompilerParser:解析器,解析查询语句,解析成解析树。Semantic Analyser:语法分析器,将解析树转换成内部查询表示。对列名、类型做检查,类型转换、隐式转换也在这一阶段进行,这一步之后...原创 2019-10-22 14:02:15 · 8409 阅读 · 1 评论