hive
8.7-8.13学习总结博客五:Hive进阶与复杂查询
博客题目:学习总结五:Hive进阶与复杂查询实践内容概要:学习Hive进阶的使用方法,包括复杂查询、数据转换和性能优化等方面的知识。学习资源:推荐的Hive进阶教程、实践案例和性能优化技巧。实践内容:通过编写复杂的Hive查询语句,探索Hive的高级功能和性能优化方法,并分享实践中的挑战和解决方案。 ......
假期总结之Hive基础架构
Apache Hive其2大主要组件就是:SQL解析器以及元数据存储, 如下图。 元数据存储 通常是存储在关系数据库如 mysql/derby中。Hive 中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。 -- Hive提供了 Metastore 服务进 ......
hive处理字符串化数组
大数据在进行ETL过程中,为了避免因为源、目标表字段因为数据类型不一致造成抽数失败,所以在目标表一般都会将字段设置成string类型,后续数据同步过来后再进行类型转换。 以ARRAY类型字段举例: 通过正则将字符串左右两边的中括号[]进行去除 explode(split(REGEXP_REPLACE ......
hive 的order by ,sort by,distribute by,cluster by
order by order by会对输入做全局排序,因此只有一个Reducer(多个Reducer无法保证全局有序),然而只有一个Reducer,会导致当输入规模较大时,消耗较长的计算时间,在生产环境中遇到数据量较大的情况,一般无法成功。 sort by sort by不是全局排序,其在数据进入r ......
大数据-hive 添加分区
1、静态分区1> 添加一个alter table t2 add partition (city=‘shanghai’);2> 添加多个alter table t2 add partition (city=‘chengdu’) partition(city=‘tianjin’);3> 添加分区指定位置 ......
Hive之分区表
在大数据中,最常用的一种思想就是分治,我们可以把大的文件切割划分成一个个的小的文件,这样每次操作一个小的文件就会很容易了 同样的道理,在hive当中也是支持这种思想的,就是我们可以把大的数据,按照每天,或者每小时进行切分成一个个的小的文件,这样去操作小的文件就会容易得多了。 如图,一个典型的按月份分 ......
【Windows】Windows10系统下Hadoop和Hive环境搭建
环境准备 软件 版本 备注 Windows 10 操作系统 JDK 8 暂时不要选用大于等于JDK9的版本,因为启动虚拟机会发生未知异常 MySQL 8.x 用于管理Hive的元数据 Apache Hadoop 3.3.1 - Apache Hive 3.1.2 - Apache Hive src ......
hive之内部表与外部表
hive之内部表与外部表 内部表&外部表定义:未被external修饰的是内部表(managed table),被external修饰的为外部表(external table);区别: 内部表数据由Hive自身管理,外部表数据由HDFS管理;内部表数据存储的位置是hive.metastore.war ......
数仓 Hive HA 介绍与实战操作
[TOC] ## 一、概述 在数据仓库中,`Hive HA(High Availability)` 是指为 `Apache Hive` 这个数据仓库查询和分析工具提供高可用性的架构和解决方案。Hive是建立在Hadoop生态系统之上的一种数据仓库解决方案,用于处理大规模数据的查询和分析。为了确保Hi ......
Hive Merge详解
说明Hive在2.2版本之后开始支持Merge操作,并且Merge只能在支持ACID的表上执行 语法MERGE INTO <target table> AS T USING <source expression/table> AS SON <boolean expression1>WHEN MATC ......
Hive执行过程中出现 ArrayIndexOutOfBoundsException: -128
记一次Hive的运行过程中的错误 `Error: java.lang.RuntimeException: Hive Runtime Error while closing operators at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.close( ......
hive建表以\t分割,直接put文件到表目录下进行查询
建表语句 ``` CREATE external TABLE `login_number`( serial_number string) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' WITH SERDEP ......
hive同时使用where,group by,having,order by的执行顺序
###hive中分组排序过滤使用顺序。 ``` where,group by,having,order by同时使用,执行顺序为 (1)where过滤数据 (2)对筛选结果集group by分组 (3)对每个分组进行select查询,提取对应的列,有几组就执行几次 (4)再进行having筛选每组数 ......
RDBMS与Hbase对比 HDFS与HBase对比 Hive与HBase对比
RDBMS: HBASE: HDFS与HBase对比: Hive与HBase对比: Hive与HBase总结 ......
Hive 内置函数
Hive 常用的内置函数 --查看内置函数 show functions; --查看函数的用法 describe function extended count; String Functions 字符串函数 select length("itcast");--长度 select reverse(" ......
Hive select查询语句
创建表 CREATE TABLE t_usa_covid19( count_date string, county string, state string, fips int, cases int, deaths int) row format delimited fields terminate ......
24-Hive优化(下)
# 1. 分组聚合优化 ## 1.1 优化说明 Hive 中未经优化的分组聚合,是通过一个 MapReduce Job 实现的。Map 端负责读取数据,并按照分组字段分区,通过 Shuffle,将数据发往 Reduce 端,各组数据在 Reduce 端完成最终的聚合运算。 Hive 对分组聚合的优化 ......
23-Hive优化(上)
# 1. Hive 表设计优化 ## 1.1 分区表 ### a. 基本查询原理 Hive 的设计思想是通过元数据将 HDFS 上的文件映射成表,基本的查询原理是当用户通过 HQL 语句对 Hive 中的表进行复杂数据处理和计算时,默认将其转换为分布式计算 MapReduce 程序对 HDFS 中的 ......
22-Hive函数应用
# 1. 多字节分隔符 ## 1.1 问题与需求 【**默认规则**】Hive 默认序列化类是 LazySimpleSerDe,其只支持使用单字节分隔符(char)来加载文本数据,例如逗号、制表符、空格等等,默认的分隔符为”\001”。根据不同文件的不同分隔符,我们可以通过在创建表时使用 `row ......
21-Hive运算符&函数
# 1. Hive 内置运算符 整体上,Hive 支持的运算符可以分为三大类:关系运算、算术运算、逻辑运算。 官方参考文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF 也可以使用下述方式查看运算符的使用方式: ......
20-Hive-DML&DQL
# 1. Load DATA 回想一下,当在 Hive 中创建好表之后,默认就会在 HDFS 上创建一个与之对应的文件夹,默认路径是由参数 hive.metastore.warehouse.dir 控制,默认值是 /user/hive/warehouse。 要想让 Hive 的表和结构化的数据文件产 ......
19-Hive-DDL
数据定义语言(Data Definition Language,DDL)是 SQL 语言集中对数据库内部的对象结构进行创建,删除,修改等的操作语言,这些数据库对象包括 database(schema)、table、view、index 等。核心语法由 CREATE、ALTER 与 DROP 三个所组 ......
18-Hive入门&安装
# 1. Hive 概述 ## 1.1 什么是 Hive? Apache Hive 是一款**建立在 Hadoop 之上的开源数据仓库工具**,可以将存储在 Hadoop 文件中的结构化、半结构化数据文件映射为一张数据库表,基于表提供了一种类似 SQL 的查询模型,称为 Hive 查询语言(HQL) ......