Hive基础
文章平均质量分 83
Hive
TRX1024
字节内推,可私信~
展开
-
HIVE/SQL 实现同一列数据累加和累乘
以上是对数的一些运算性质,其中我重点圈出了两个性质,这将是我们使用 hive sql 实现同一列数据累乘的关键;1)左边的红框中,两个底数(a)相同的对数相加 = 以a为底(N*M)的对数,其中(N*M)就是我们想要的计算结果,应该如何获取(N*M)呢?2)看右边红框的性质,我们可以利用这个性质获取(N*M)映射到 hive ,可以将同一列的相乘转为同一列的对数相加,在求真数即可;具体做法:原创 2022-09-14 22:24:11 · 4673 阅读 · 1 评论 -
Hive SQL 五大经典面试题
第 1 题 连续问题第 2 题 分组问题第 3 题 间隔连续问题第 4 题 打折日期交叉问题第 5 题 同时在线问题原创 2022-04-04 15:11:05 · 14510 阅读 · 11 评论 -
Hive 如何合理设置 Map 及 Reduce 数
一、概述1.通常情况下,作业会通过 input 的目录产生一个或者多个 map 任务。主要的决定因素有:input 的文件总个数,input 的文件大小,集群设置的文件块大小。2.是不是 map 数越多越好?答案是否定的。如果一个任务有很多小文件(远远小于块大小128m),则每个小文件也会被当做一个块,用一个 map 任务来完成,而一个 map 任务启动和初始化的时间远远大于逻辑处理的时间,就会造成很大的资源浪费。而且,同时可执行的 map 数是受限的。3.是不是保证每个 map 处理接近 12原创 2022-04-03 22:20:29 · 5943 阅读 · 0 评论 -
MySQL/Hive 常用窗口函数详解及相关面试题
一、窗口函数:窗口函数也称为OLAP函数,OLAP 是OnLine Analytical Processing 的简称,意思是对数据库数据进行实时分析处理。例如,市场分析、创建财务报表、创建计划等日常性商务工作。窗口函数就是为了实现OLAP 而添加的标准SQL 功能。0.窗口函数的分类按照功能划分:序号函数:row_number() / rank() / dense_rank() 分布函数:percent_rank() / cume_dist() 前后函数:lag() / lead()原创 2022-04-02 18:50:07 · 4371 阅读 · 0 评论 -
Hive 行转列、列转行的应用场景和解决方案
一、行转列1.相关函数CONCAT(string A/col, string B/col…) 返回输入字符串连接后的结果,支持任意个输入字符串; CONCAT_WS(separator, str1, str2,...) 它是一个特殊形式的 CONCAT()。 第一个参数剩余参数间的分隔符。分隔符可以是与剩余参数一样的字符串。 如果分隔符是 NULL,返回值也将为 NULL。 这个函数会跳过分隔符参数后的任何 NULL 和空字符串。分隔符将被加到被连接的字符串之间; 注意:原创 2022-04-02 15:52:48 · 1683 阅读 · 0 评论 -
《Hive官方文档》Hive - Lateral View 与 explode() 结合使用
官网链接:Hive官方文档一、Lateral View 语法lateralView: LATERAL VIEW udtf(expression) tableAlias AS columnAlias (',' columnAlias)*fromClause: FROM baseTable (lateralView)*Lateral View用于UDTF(user-defined table generating functions)中将行转成列,例如explode()。二、示例原创 2022-04-02 12:51:59 · 945 阅读 · 0 评论 -
Hive 官网函数全列表(聚合函数/日期函数/字符串函数...)
一、数学函数二、聚合函数 返回类型 函数名 描述 BIGINT count(*) 计算总行数,包括含有NULL值的行。 BIGINT count(expr) 计算expr表达式非NULL的行的数量 BIGINT count(DISTINCT expr[, expr_.]) 计算expr表达式去重后且非NULL的行的数量 DOUBLE su原创 2022-04-02 10:19:07 · 1796 阅读 · 0 评论 -
《Hive官方文档》Hive - Joins 学习笔记
官网链接:Hive官方文档hive 0.13.0以后的版本,支持了隐式join标记。例如SELECT * FROM table1 t1, table2 t2, table3 t3 WHERE t1.id = t2.id AND t2.id = t3.id AND t1.zipcode = '02535'这样的写法,等同于SELECT * FROM table1 t1 JOIN table2 t2 ON t1.id = t2.id AND t1.zipcode = '02535' JOI原创 2022-04-01 22:18:20 · 1101 阅读 · 0 评论 -
Hive解决数据倾斜的各种优化方法
一、概念数据处理中的数据倾斜:个人理解,在数据处理的MapReduce程序中,由于数据的特殊性,数据中存在大量相同key的数据,根据业务需求需要对这个key进行分区操作(group by/join)时,在map的partition阶段将大数据量的相同key的数据全部分配到同一个Reduce,导致Reduce的节点数据量分配极度不均衡的现象,称为数据倾斜。数据倾斜有哪些表现:最直观的表现就是:Hive SQL运行得慢 任务进度长时间维持在99%(或100%),查看任务监控页面,发现只有少量.原创 2021-01-20 20:39:46 · 6170 阅读 · 0 评论 -
Hive内部表和外部表
Hive表分为两类,即内部表和外部表。内部表(managed table)所谓内部表(managed table)即Hive管理的表,Hive内部表的管理既包含逻辑以及语法上的,也包含实际物理意义上的,即创建Hive内部表时,数据将真实存在于表所在的目录内,删除内部表时,物理数据和文件也一并删除。外部表(external table)外部表(external table)则不然,其管理仅仅是在逻辑和语法意义上的,即新建表仅仅是指向一个外部目录而已。同样,删除时也并不物理删除外部目录,而仅仅是原创 2021-01-19 15:50:46 · 3521 阅读 · 0 评论 -
hive自定义udf实现md5
背景:在工作过程中有这么一个需求,在hive中有一张日志表orig_client,该表中的数据是通过mr1.jar(就一个mr程序)进行清洗过滤得到,现在我重写了mr程序,暂且叫mr2.jar,更改了表中id字段的生成规则,别的字段没有修改,将经过mr2.jar清洗的数据存入orig_client_test表中(该表创建语句与前表一样),执行后的结果理论上只有id的value不一样,考虑到字段比较...原创 2018-11-16 19:51:24 · 1866 阅读 · 0 评论 -
【转】Hive四种数据导入方式介绍
原文地址:Hive四种数据导入方式介绍转载 2018-11-05 20:30:26 · 158 阅读 · 0 评论