![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Hive
文章平均质量分 73
Hive
ElegantCodingWH
子非吾,焉之吾之乐也
展开
-
【Hive】with 语法 vs cache table 语法
3、当数据需要构造all维度时,不用在with / cache语法内使用 lateral view 语法将数据裂开,这样数据量太大了,然后可能在后续使用过程中出现维度问题。应该在使用with / cache table中的数据时再裂开。1、最常见的,多个重复sql时,可使用with / cache语法。cache是会将数据缓存在内存中,按需求考虑。2、cache一般用来缓存结果数据,小量数据;如果要将数据缓存,需要使用cache table语法。需要注意,with语法只相当于一个视图,原创 2024-03-22 13:03:51 · 637 阅读 · 0 评论 -
【Hive】HQL Map 『CRUD | 相关函数』
1. Map 增删改查1.1 声明 Map 数据类型1.2 增1.3 删1.4 改1.5 查2. Map 相关函数2.1 单个Map3. Map 与 String3.1 Map 转 string3.2 string 转 Map原创 2023-08-22 16:09:49 · 1092 阅读 · 0 评论 -
【Hive】group by 分组聚合后使用窗口函数
1. group by 分组聚合后使用排序窗口函数1.1 两种思路 与 简单例子1.2 新思路的解释2. group by 分组聚合后使用聚合窗口函数3. group by 分组聚合后使用分析窗口函数原创 2023-07-20 13:15:08 · 1730 阅读 · 1 评论 -
【Hive】HQL Array 『CRUD | 相关函数』
例如,array_intersect(array(1,2,3), array(2,3,4))将返回数组(2,3)。例如,array_except(array(1,2,3), array(2,4))将返回数组(1,3)。例如,6. array_join(array(1,2,3), ‘,’)将返回字符串"1,2,3"。例如,array_remove(array(1,2,3), 2)将返回数组(1,3)。例如,array_position(array(1,2,3), 2)将返回2。:返回数组中的最大值。原创 2023-06-12 19:21:15 · 2525 阅读 · 4 评论 -
【Hive】distinct对行与列的去重
在 函数 里面,则是对列去重。原创 2023-06-02 15:02:54 · 132 阅读 · 0 评论 -
【Hive】SQL中函数执行顺序 『 一般函数 | 窗口函数』
类似于函数的调用,外层函数会被先调用,但是后执行。也就是说,越内层的函数,越先执行。所以,当函数内有对列进行过滤时,会先过滤,再执行函数。函数的功能:对数据进行某操作。这先得有数据才能进行操作。原创 2023-06-02 14:39:30 · 934 阅读 · 0 评论 -
【Hive】space、split、posexplode函数:生成连续数、连续日期等等
1. space函数与split函数结合,得到空字符串数组;2. 如何产生1-10的连续的数字?3. 如何产生开始日期到结束日期的连续的日期?原创 2023-03-23 21:30:18 · 1617 阅读 · 0 评论 -
【Hive---23】实际案例之分组TopN问题 『row_number() over()』
1. 问题2. 分析3. 代码实现原创 2022-12-18 20:53:27 · 73 阅读 · 0 评论 -
【Hive---22】实际案例之累计金额 『 sum() over()』
1. 问题2. 分析3. 代码实现原创 2022-12-18 20:28:15 · 241 阅读 · 0 评论 -
【Hive---21】实际案例之查询连续登陆 『 date_add() | lead() over()』
1. 问题2. 分析3. 代码实现原创 2022-12-18 16:32:12 · 74 阅读 · 0 评论 -
【Hive---20】实际案例之行列转换 『 多行转多列 | 多行转单列 | 多列转多行 | 单列转多行』
1. 多行转多列1.1 数据特征1.2 代码实现(max(case...end) | max(if()))1.3 变形例题2. 多行转单列2.1 数据特征2.2 代码实现(cast()、collect_list()、concat_ws())3. 多列转多行3.1 数据特征3.2 代码实现(union all)4. 单列转多行3.1 数据特征3.2 代码实现(explode()、侧视图)原创 2022-12-18 11:19:00 · 591 阅读 · 0 评论 -
【Hive---19】性能优化之job优化『 数据库操作 | 表操作 | 视图 vs 物化视图』
job优化原创 2022-12-18 10:49:02 · 42 阅读 · 0 评论 -
【Hive---18】性能优化之表数据优化『 数据库操作 | 表操作 | 视图 vs 物化视图』
1. 文件格式1.1 textfile1.2 orc2. 数据压缩3. 存储优化原创 2022-12-18 10:47:27 · 43 阅读 · 0 评论 -
【Hive---17】性能优化之表设计优化 『 left jion + union all』
1. 采用分区表2. 采用分桶表3. 采用物化视图代替索引原创 2022-12-18 10:47:01 · 139 阅读 · 0 评论 -
【Hive---16】拉链表 『 left jion + union all』
1. 应用场景2. 概述3. 实现过程4. 例子原创 2022-12-18 10:46:21 · 321 阅读 · 0 评论 -
【Hive---15】json相关函数 『 get_json_object() | json_tuple() | JsonSerde』
1. 概述2. get_json_object() (不推荐使用)2.1 概述2.2 例子2.3 一个注意事项3. json_tuple() (推荐使用)3.1 概述3.2 例子3.3 一个注意点4. 使用内置解析器JsonSerde原创 2022-12-18 10:45:51 · 3033 阅读 · 0 评论 -
【Hive---14】URL解析函数 『 parse_url() | parse_url_tuple()』
1. 概述2. parse_url() (不推荐使用)2.1 概述2.2 例子2.3 一个注意点3. parse_url_tuple() (推荐使用)3.1 概述3.2 例子3.3 一个注意点原创 2022-12-18 10:44:56 · 603 阅读 · 0 评论 -
【Hive---13】抽样函数『 』
抽样函数原创 2022-12-18 10:43:49 · 345 阅读 · 0 评论 -
【Hive---12】窗口函数『 窗口函数与group by 区别 | 窗口聚合函数 | 窗口排名函数 | 窗口分析函数』
1. 概述1.1 窗口函数的partition by与group by 的分组有什么区别?1.2 窗口函数的order by + order by 的排序有区别吗?2. 语法2.1 哪些函数可以开窗变为窗口函数?2.2 语法---- 关于order by 的一个坑关于窗口函数是否可以嵌套3. 窗口聚合函数3.1 sum()窗口函数的一个注意点3.2 例子4. 窗口排名函数4.1 求TopN4.2 求几分之几5 窗口分析函数6. 关于窗口函数的一些思考原创 2022-12-15 11:57:57 · 2024 阅读 · 7 评论 -
关于as关键字 『 as 关键字作用 | 作用范围 | 细节』
as关键字原创 2022-12-15 11:35:34 · 1160 阅读 · 0 评论 -
【Hive---11】用户定义函数 『 单列函数UDF | 聚合函数 UDAF | 表生成函数 UDTF | 自定义函数』
用户定义函数(UDF:User-Defined Functions)1. 单列函数 (UDF - 一进一出)2. 聚合函数 (UDAF - 多进一出)2.1 基础聚合函数2.2 高级聚合函数2.2 增强聚合函数2.2.1 grouping sets()2.2.2 with cube() 与 with rollup()3 表生成函数 (UDTF - 一进多出)3.1 explode()炸裂函数3.2 posexplode()炸裂函数3.2 parse_url_tuple()函数3.3原创 2022-12-14 18:14:46 · 214 阅读 · 0 评论 -
【Hive】分隔符 『 单字节分隔符 | 多字节分隔符』
1. 概述2. 单字节分隔符方法:使用delimited关键字3. 其它复杂情况方式一:写MR程序进行字符替换转为单字节分隔符问题(不推荐)方式二:自定义InputFormat转为单字节分隔符问题(不推荐)方式三:使用serde关键字 (推荐)原创 2022-12-14 11:19:36 · 2345 阅读 · 0 评论 -
【Hive---10】单列函数『字符串函数 | 日期函数 | 数学函数 | 集合函数 | 条件函数 | 数据脱敏函数 | 其他函数(反射、加密解密、等等)』
1. 内置函数(Built-in Functions)1.1 字符串函数1.2 日期函数1.3 数学函数1.4 集合函数1.5 条件函数1.6 数据类型转换函数1.7 数据脱敏函数1.8 其他函数(反射、加密解密、等等)原创 2022-12-13 23:39:28 · 566 阅读 · 0 评论 -
【Hive】多维函数 『grouping sets() | with cube | with rollup 』
1. 语法2. 例子原创 2022-12-12 18:39:51 · 3483 阅读 · 0 评论 -
【Hive---09】运算符『 关系运算符 | 算术运算符 | 逻辑运算符 | 括号 | null | case end』
1. 关系运算符1.1 is not null1.2 like1.3 rlike / regexp2. 算术运算符2.1 div 和 %2.2 ~、& 、 | 、^3. 逻辑运算符4. 和java一样,括号内的先运算5. null 参与任何运算都为 null原创 2022-12-08 21:00:01 · 188 阅读 · 0 评论 -
【Hive---07】select 『 语法树 | HQL执行顺序 | union | 子查询 | join』
1. select语法树2. 基本语法2.1 all | distinct2.2 select_expr2.3 table_reference2.4 where2.5 group by (分组聚合、分组排序)2.6 having2.7 排序2.7.1 全局排序:order by2.7.2 分区排序:cluster by | distribute by + sort by------- 小结 order by vs cluster by vs distribute by + sort b原创 2022-12-08 19:07:49 · 645 阅读 · 2 评论 -
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask. ORC split
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask. ORC split原创 2022-11-21 19:50:09 · 2505 阅读 · 1 评论 -
Hive 物化视图 (Materialized Views) [Hive3.0新特性]
1. 为什么使用物化视图?2. 特性3. 创建物化视图4. 查看物化视图5. 删除物化视图6. 修改物化视图7. 视图 vs 物化视图原创 2022-10-31 20:56:58 · 1663 阅读 · 0 评论 -
Hive 视图 (Views)
1. 为什么使用视图?2. 特性3. 创建视图4. 查看视图5. 删除视图6. 修改视图原创 2022-10-31 20:56:38 · 643 阅读 · 0 评论 -
Hive 事务表 (Transactional Tables)
1. 为什么要使用事务表?2. 创建使用事务表原创 2022-10-31 19:07:58 · 4653 阅读 · 0 评论 -
Hive 分桶表 (Bucketed Tables) 『 创建分桶表 | 数据导入』
1. 为什么使用分区表?2. 创建分桶表3. 分桶表的数据导入原创 2022-10-26 22:32:40 · 1639 阅读 · 0 评论 -
Hive 分区表 (Partitioned Tables) 『 创建分区表 | CRUD分区 | 修复分区 | 数据导入(静态分区、动态分区) | 查询数据/表结构』
1. 为什么使用分区表?2. 创建分区表3. 分区表的数据导入(1) 静态分区(2) 动态分区4. 查询分区表数据5. 小结原创 2022-10-26 21:32:03 · 3899 阅读 · 2 评论 -
【Hive---06】数据导入 与 数据导出
1. 数据导出1.1 在hive客户端中导出(1) insert:导出查询结果(导出到主机 | hdfs)⭐(2) export:导出表数据(导出到hdfs)⭐1.2 直接从Hadoop中导出1.3 Sqoop导出2. 数据导入2.1 在hive客户端导入(1) load :导入表数据(从本地| hdfs导入)⭐(2) Import:导入表数据(从hdfs导入)(3) insert:导入查询数据⭐(4) as select:创建表并同时将查询数据导入该表(5) Location:创建原创 2022-10-25 16:34:31 · 2342 阅读 · 0 评论 -
【Hive---05】DDL数据定义语言『 数据库操作 | 表操作 | 视图 vs 物化视图』
1. DDL概述2. 查看完整建表/建库语句3. 数据库操作 ⭐3.1 创建数据库3.2 查询数据库3.3 切换数据库3.4 修改数据库元数据3.5 删除数据库4. 表操作⭐4.1 创建表4.1.1 完整建表语句4.1.2 内部表(管理表) / 外部表:external 关键字4.1.3 分隔符:row format 关键字4.2 删除表4.3 修改表4.4 查看表2. 创建2.1 完整语法树2.2 指定分隔符2.3 hive真实数据存储路径4.1.2 管理表(内部表原创 2022-10-25 10:30:28 · 2058 阅读 · 0 评论 -
【Hive---04】数据类型『 基本数据类型 | 集合数据类型 | 类型转换 | null』
1. 整体概述2. 基本数据类型3. 集合数据类型4. 类型转换原创 2022-10-24 20:45:14 · 332 阅读 · 0 评论 -
【Hive---03】Hive安装部署『 3种模式的元数据库配置 | 第三方可视化编程工具 IntelliJ IDEA』
1. 元数据配置(metastore)的3种模式2. 安装部署第一步:配置Hadoop能够接受任何代理第二步:上传hive安装包并解压第三步:配置环境变量第四步:移除hive的日志jar包第五步:将hive与hadoop联系起来第六步:解决hadoop与hive之间guava版本冲突第七步:配置并初始化元数据库方式一:内嵌模式方式二:本地模式(学习过程中用)(1) 配置MySQL(2) 配置JDBC(3) 初始化元数据库方式三:远程模式(实际开发中用)(1) 配置MySQL(原创 2022-10-23 13:12:37 · 1074 阅读 · 2 评论 -
元数据配置(metastore)的3种模式详情:内嵌模式、本地模式、远程模式
1. 内嵌模式2. 本地模式3. 远程模式原创 2022-10-21 11:40:37 · 265 阅读 · 0 评论 -
【Hive---02】hive概述『 what | 优缺点 | 架构 | Hivevs MySQL』
1. 什么是Hive?2. Hive优缺点3. Hive架构4. Hivevs MySQL原创 2022-10-21 11:18:16 · 1007 阅读 · 0 评论 -
【Hive---01】数据仓库『 整体概述』
1. 数据仓库是什么?2. 为什么要引入数据仓库?3. 数据仓库 vs 数据库4. 数据仓库 vs 数据集市5. 数据仓库分层架构5.1 三层架构5.2 为什么数据仓库要分层?5.3 ETL 与 ELT原创 2022-10-20 17:02:09 · 708 阅读 · 0 评论