
hive
文章平均质量分 77
莹火虫的另一半
成功之路,在于坚持与态度
展开
-
19 hive 调优
一、fetch 的本地抓取策略 核心思想 能直接通过表目录获取到文件就不走MR 能不走MR就不走MR查询 执行原理 Hive 简单读取表对应的存储目录下的文件(如下图),然后输出到控制台。 开启本地 fetch 抓取策略 set hive.fetch.task.conversion = more; 在hive-default.xml.te..原创 2021-01-24 00:12:56 · 964 阅读 · 2 评论 -
18 hive索引
Hive索引要想使用以下任何一种索引,都必须打开全局索引开关hive.optimize.index.filterhive索引分为三种1.原始索引(淘汰不使用)2.行组索引,Row Group Index3.Bloom Filter Index注意:后面两种索引只适用于ocr格式的文件一、Hive原始索引一般不会在Hive3.0中已被删除二、Row Group Index行组索引、主要用于数值类型条件查询。(=、<,>),如:int,..原创 2021-01-24 00:11:07 · 527 阅读 · 0 评论 -
17 hive 的数据存储格式
行存储和列存储行存储的特点:查询满足条件的一整行(所有列)数据的时候,列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时行存储查询的速度更快。列存储的特点:因为每个字段的数据聚集存储,在查询只需要少数几个字段的时候,能大大减少读取的数据量;每个字段的数据类型一定是相同的,列式存储可以针对性的设计更好的设计压缩算法。TEXTFILE默认格式,行式存储。可结合Gzip、Bzip2使用(系统自动检查,执行查询时自...原创 2021-01-24 00:09:59 · 1478 阅读 · 0 评论 -
16 hive数据压缩
一、hive的数据压缩在实际工作当中,hive当中处理的数据,一般都需要经过压缩,前期我们在学习hadoop的时候,已经配置过hadoop的压缩,我们这里的hive也是一样的可以使用压缩来节省我们的MR处理的网络带宽1.1、 MR支持的压缩编码 压缩格式 工具 算法 文件扩展名 是否可切分 DEFAULT 无 ...转载 2021-01-24 00:09:28 · 122 阅读 · 0 评论 -
15 hive自定义函数
一、Hive自定义函数Hive 自带了一些函数,比如:max/min等,但是数量有限,自己可以通过自定义UDF来方便的扩展。当Hive提供的内置函数无法满足你的业务处理需要时,此时就可以考虑使用用户自定义函数(UDF:user-defined function)。根据用户自定义函数类别分为以下三种:1、UDF(User-Defined-Function)一进一出(例如,通过身份证查询出行政区划)2、UDAF(User-Defined Aggregation Function.原创 2021-01-24 00:09:10 · 158 阅读 · 0 评论 -
14 hive开窗函数
一、窗口函数一row_number rank dense_rank ntile数据准备itcast_t2.txtcookie1,2018-04-10,1 cookie1,2018-04-11,5 cookie1,2018-04-12,7 cookie1,2018-04-13,3 cookie1,2018-04-14,2 cookie1,2018-04-15,4 cookie1,2018-04-16,4 cookie2,2018-04-10,2 cookie2,201...原创 2021-01-24 00:06:32 · 147 阅读 · 0 评论 -
13 hive的行转列
一、行转列1.1、介绍1、行转列是指多行数据转换为一个列的字段。2、Hive行转列用到的函数:concat(str1,str2,...)--字段或字符串拼接concat_ws(sep, str1,str2)--以分隔符拼接每个字符串collect_set(col)--将某字段的值进行去重汇总,产生array类型字段1.2、案例测试数据emp.txt20 SMITH30 ALLEN30 WA...原创 2021-01-24 00:05:20 · 474 阅读 · 0 评论 -
12 hive函数
hive内置函数零、判断函数nvl函数SELECT nvl(itcast_school_id, -1) FROM itcast_intention_dwd dwd;如果第一个参数为空,返回第二个参数,否则返回第一个参数。if函数SELECT if(itcast_school_id is null, -1, itcast_school_id) FROM itcast_intention_dwd dwd;如果...原创 2021-01-24 00:04:33 · 297 阅读 · 0 评论 -
11 hive shell
语法结构 hive [-hiveconf x=y]* [<-i filename>]* [<-f filename>|<-e query-string>] [-S] 说明: 1、-i 从文件初始化HQL。 2、-e 从命令行执行指定的HQL 3、-f 执行HQL脚本 4、-v 输出执行的HQL语句到控制台 5、-p <port> connect to Hive Server ...原创 2021-01-24 00:03:41 · 151 阅读 · 0 评论 -
10 hive查询操作练习
### 数据的准备# 创建一个数据库create database if not exists day13_hive;# 使用这个数据库use day13_hive;# 创建对应的表 :学生表和成绩表create external table student (s_id string,s_name string,s_birth string , s_sex string ) row format delimited fields terminated by '\t';create ...原创 2021-01-24 00:03:24 · 200 阅读 · 0 评论 -
09 hive查询语法
一、select语句1.1 基本语法# 基本语法SELECT [ALL | DISTINCT]select_expr, select_expr, ...FROM table_reference[WHERE where_condition][GROUP BY col_list][HAVING where_condition][ORDER BY col_list][CLUSTER BY col_list| [DISTRIBUTE BY col_list] [SORT B...原创 2020-12-28 22:10:26 · 251 阅读 · 0 评论 -
08 hive中表数据的加载和导出
一、hive中表数据的加载hive中表数据的加载有三种方式1.1 insert into (了解即可,一般不使用)create table score3 like score;insert into table score3 partition(month ='202007') values ('001','002','100');这种方式,底层会转换成 MR 执行,没执行一次,都会产生一个小文件,在进行数据插入的时候,一般一次性插入N条数据,批量加载过程。一次性...原创 2020-12-28 22:09:45 · 295 阅读 · 1 评论 -
07 hive中分区表、分桶表、表的修改
一、分区表在大数据中,最常用的一种思想就是分治,我们可以把大的文件切割划分成一个个的小的文件,这样每次操作一个小的文件就会很容易了,同样的道理,在hive当中也是支持这种思想的,就是我们可以把大的数据,按照每天,或者每小时进行切分成一个个的小的文件,这样去操作小的文件就会容易得多了。一个分区相当于hdfs中的一级文件件多个分区类似于hdfs中的多级文件夹,如下图:数据源01 01 80 01 02 90 01 03 99 02 01 70 0...原创 2020-12-28 22:08:30 · 770 阅读 · 0 评论 -
06 hive中建表语法、内部表、外部表
二、数据表2.1 创建数据表语法CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)] [CLUSTERED BY (col_name,...原创 2020-12-28 22:07:35 · 325 阅读 · 0 评论 -
05 字段类型和操作
一、字段类型1.1 图表 分类 类型 描述 字面量示例 原始类型 BOOLEAN true/false TRUE TINYINT 1字节的有符号整数-128~127 1Y SMALLINT ..原创 2020-12-28 22:06:33 · 183 阅读 · 0 评论 -
04 hive中数据库操作
创建数据库create database if not exists myhive;说明:hive的表存放位置模式是由hive-site.xml当中的一个属性指定的默认不需要配置也在/user/hive/warehouse<name>hive.metastore.warehouse.dir</name> <value>/user/hive/warehouse</value>指定指定hdfs存储位置create databa...原创 2020-12-28 22:00:50 · 95 阅读 · 0 评论 -
03 hive的安装
一、安装三种模式hive的安装一共有三种方式:内嵌模式、本地模式、远程模式内嵌模式内嵌模式使用的是内嵌的Derby数据库来存储元数据,也不需要额外起Metastore服务。数据库和Metastore服务都嵌入在主Hive Server进程中。这个是默认的,配置简单,但是一次只能一个客户端连接,适用于用来实验,不适用于生产环境。解压hive安装包 bin/hive 启动即可使用缺点:不同路径启动hive,每一个hive拥有一套自己的元数据,无法共享。本地模式...原创 2020-12-28 22:00:11 · 265 阅读 · 0 评论 -
02 hive介绍和架构
一、hive介绍和架构1.1 什么是hive hive 是基于 Hadoop的数据仓库的工具,依赖于hadoop hive 本质上来说就是SQL翻译成MR的工具 hive 的数据保存在 HDFS 上 hive 可以使用类 SQL 查询功能 1.2 为什么要使用hive 直接使用 hadoop mr 成本高,操作复杂,优化难度高,hive 提供了 类SQL功能,用户只要写SQL就能查询出来相关的数据,成本就低; 会SQL的人,比大数据的开发的人.原创 2020-12-28 21:55:58 · 158 阅读 · 0 评论 -
01 数据仓库介绍、ETL介绍
一、数据仓库的基本概念1.1 简介数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库顾名思义,是一个很大的数据存储集合,出于企业的分析性报告和决策支持目的而创建,对多样的业务数据进行筛选与整合。它为企业提供一定的BI(商业智能)能力,指导业务流程改进、监视时间、成本、质量以及控制。数据仓库的输入方是各种各样的数据源,最终的输出用于企业的数据分析、数据挖掘、数据报表等方向。1.2 数据仓库分层架构按照数据流入流出的...原创 2020-12-28 21:55:10 · 453 阅读 · 0 评论