自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Hive 内置函数

语法: substr(string A, int start, int len),substring(string A, intstart, int len)语法: parse_url(string urlString, string partToExtract [, stringkeyToExtract])说明:将字符串A中的符合java正则表达式B的部分替换为C。语法: substr(string A, int start),substring(string A, int start)

2024-05-23 23:30:22 592 1

原创 Hive 窗口函数

sql中有一类函数叫做聚合函数,例如sum()、avg()、max()等等,这类函数可以将多行数据按照规则聚集为一行,一般来讲聚集后的行数是要少于聚集前的行数的.但是有时我们想要既显示聚集前的数据,又要显示聚集后的数据,这时我们便引入了窗口函数.开窗函数一般就是说的是over()函数,其窗口是由一个 OVER 子句 定义的多行记录,其作用就如同它的名字,就是限定出一个窗口。

2024-05-23 23:28:15 729 1

原创 Hive 聚合操作

4.按照部门和入职时间进行分组(先按照部门进行分组,然后针对每组按照入职时间进行分组)3.查询平均工资大于2000的部门(使用having子句限定分组查询)2.查询每个部门的平均工资。

2024-05-23 23:24:24 164 1

原创 Hive 分区分桶

我们便可以创建分区rank(注意rank不是表中的列,我们可以把它当做虚拟列),并将相应数据导入指定分区(将数据插入指定目录)。表可以同时分区和分桶,当表分区时,每个分区下都会有<num_buckets> 个桶。我们先看一下创建分桶表的创建,分桶表的建表有三种方式:直接建表,CREATE TABLE LIKE 和 CREATE TABLE AS SELECT ,单值分区表不能用 CREATETABLE AS SELECT 建表。查询分桶表的语法与普通表类似,可以使用SELECT语句查询特定桶的数据。

2024-05-22 21:36:01 170 1

原创 Hive 数据关联操作

另外还有一种可实现hive笛卡儿积的效果(hive不支持笛卡儿积): 在on后面接为true的表达式,如on 1=1(需先设置非严格模式:set hive.mapred.mode=nonstrict);作用:以join左边的表为标准进行连接(即保留左边表的字段值,右边表不符合on条件的用null表示)。作用:以join右边的表为标准进行连接(即保留右边表的字段值,左边表不符合on条件的用null表示)。作用:两个表连接,表留所有字段的值,不符合on条件的用null表示。左外关联:left join on。

2024-05-22 21:31:17 288 1

原创 Hive 排序

distribute by 类似 MR 中 partition(自定义分区),进行分区,结合 sort by 使用。对于 distribute by 进行测试,一定要分配多 reduce进行处理,否则无法看到 distribute by 的效果。当 distribute by 和 sort by 字段相同时,可以使用 cluster by 方式。Sort By,指出数据在每个reducer内如何排序的,通常与distribute by一起使用。三、使用Distribute By子句排序。

2024-05-22 21:27:57 404 1

原创 hive三种元数据存储方式

hive本身不存储数据,借助hdfs存储数据,hive和关系型数据库一样是有表结构的,这些信息hive也存储在第三方软件中,如derby、mysql。根据元数据的存储方式,hive的部署可以分为三种:一,local模式采用内置的derby数据库存储元数据,这种方式只能有一个客户端访问hive,多个客户访问会报错,适合开发测试。hive服务和metastore服务运行在同一个进程中,derby服务也运行在该进程中。

2024-05-22 21:26:07 301 1

原创 Hive内部表与外部表

Hive有两种类型的表:内部表外部表。

2024-05-22 20:59:41 309 1

原创 Hive 架构思想和设计原理

由于Hadoop的MapReduce编程门槛较高,非专业开发者难以直接利用其处理数据,且Hadoop的分布式文件系统(HDFS)缺乏Schema概念,数据以纯文本形式存储,使得结构化数据迁移与查询变得困难。Hive应运而生,它作为一个数据仓库工具,允许用户通过熟悉的SQL操作结构化查询语言来处理存储在Hadoop中的大规模数据,无需直接编写MapReduce代码,极大地降低了大数据分析的入门难度。Hive专为大数据汇总、即席查询与分析设计,简化了大数据操作,消除了MapReduce的复杂性。

2024-05-22 20:49:18 228 1

原创 Hive 库表操作

【代码】Hive 库表操作。

2024-04-07 09:09:05 389

原创 Hive 存储模型与数据类型

hive里分区的概念是根据“分区列”的值对表的数据进行粗略划分的机制,在hive存储上就体现在表的主目录(hive的表实际显示就是一个文件夹)下的一个子目录,这个文件夹的名字就是我们定义的分区列的名字,没有实际操作经验的人可能会认为分区列是表的某个字段,其实不是这样,分区列不是表里的某个字段,而是独立的列,我们根据这个列存储表的里的数据文件。对于hive的String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以存储2GB的字符数。

2024-04-07 09:03:58 1218

原创 Hive安装配置

将所有数据库的所有表的所有权限赋给hive用户,后面的hive是配置hive-site.xml中配置的连接密码。我们可以使用start-all命令,来开启我们的hadoop环境。我们需要对新的软件下进行一下更新,然后进行mysql的安装。将我们找到的源地址,黏贴进我们刚刚打开的source.list文件中。我们需要将mysql驱动程序进行解压抽取,然后拷贝到hive/lib的文件夹中。所以我们需要将Hive默认自带的Derby替换为MySQL。​ 多了一个hive_1.db的库,就是我们刚刚创建的。

2024-04-07 08:57:30 1714 1

原创 数据仓库概述

数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策,它是一种与时间相关的、不可修改的数据集合。

2024-03-01 09:59:43 1205 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除