
Hive
Hive
一直不懂
笔记
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Hive】15-实战案例3——级联求和
需求:有如下访客访问次数统计表 t_access_times 访客 月份 访问次数 A 2015-01-02 5 A 2015-01-03 15 B 2015-01-01...原创 2018-10-06 15:07:58 · 358 阅读 · 0 评论 -
【Hive】14-实战案例2——访问时长统计
需求:从web日志中统计每日访客平均停留时间实现步骤:1、由于要从大量请求中分辨出用户的各次访问,逻辑相对复杂,通过hive直接实现有困难,因此编写一个mr程序来求出访客访问信息(详见代码)启动mr程序获取结果: [hadoop@hdp-node-01 ~]$ hadoop jar weblog.jar bigdata.hive.mr.UserStayTime /webl...原创 2018-10-06 15:06:32 · 1430 阅读 · 0 评论 -
【Hive】13-实战案例1——数据ETL
需求:对web点击流日志基础数据表进行etl(按照仓库模型设计) 按各时间维度统计来源域名top10已有数据表 “t_orgin_weblog” : +------------------+------------+----------+--+ | col_name | data_type | comment | +---------------...原创 2018-10-06 15:01:52 · 2298 阅读 · 0 评论 -
【Hive】12-函数
用户自定义函数( UDF )是一个允许用户扩展 HiveQL 的强大的功能。正如我们将看到的,用户使用 Java 进行编码。一旦将用户自定义函数加人到用户会话中(交互式的或者通过脚本执行的),它们就将和内置 的函数一样使用,甚至可以提供联机帮助。 Hive 具有多种类型的用户自定义函数,每一种都会针对翰人数据执行特定“一类”的转换过程。在 ETL 处理中,一个处理过程可能包含多个处理步骤。 H...转载 2018-10-06 14:33:25 · 776 阅读 · 0 评论 -
【Hive】11-其他文件格式和压缩方法
Hive的一个独特的功能就是:Hive不会强制要求将数据转换成特定的格式才能使用。Hive利用Hadoop的InputFormatAPI来从不同的数据源读取数据,例如文本格式、sequence文件格式,甚至用户自定义格地。同样地,使用OutputFormat API也可以将数据写成不同的格式。尽管Hadoop的文件系统支持对于非压缩数据的线性扩展存储,但是对数据进行压缩还是有很大好处的。压缩通...转载 2018-10-06 13:36:36 · 341 阅读 · 0 评论 -
【Hive】10-调优
1、使用EXPLAIN2、使用EXPLAIN EXTENDED3、限制调整LIMIT 语句是大家经常使用到的,经常使用 CLI 的用户都会使用到。不过,在很多情况下 LIMIT 语句还是需要执行整个查询语句,然后再返回部分结果的。因为这种情况通常是浪费的,所以应该尽可能地避免出现这种情况。Hive 有一个配置属性可以开启,当使用 LIMTI 语句时,其可以对源数据进行抽样:<...转载 2018-10-05 23:55:06 · 390 阅读 · 0 评论 -
【Hive】09-设计模式
1、按天划分的表按天划分表就是一种模式,其通常会在表名中加人一个时间戳,例如表名为upply_2011_01_01、supply_2011_01_02,等等。这种每天一张表的方式在数据库领域是反模式的一种方式,但是因为实际情况下数据集增长得很快,这种方式应用还是比较广泛的。hive>CREATE TABLE supply_2011_01_02(id int,part string,...转载 2018-10-05 22:30:11 · 336 阅读 · 0 评论 -
【Hive】08-HiveQL:索引
Hive 只有有限的索引功能。 Hive 中没有普通关系型数据库中键的概念,但是还是可以对一些字段建立索引来加速某些操作的。一张表的索引数据存储在另外一张表中。同时,因为这是一个相对比较新的功能,所以目前还没有提供很多的选择。然而,索引处理模块被设计成为可以定制的 Java 编码的插件,因此,用户可以根据需要对其进行实现,以满足自身的需求。当逻辑分区实际上太多太细而几乎无法使用时,建立索引也就成为...转载 2018-10-05 21:28:03 · 815 阅读 · 0 评论 -
【Hive】07-HiveQL:视图
视图可以允许保存一个查询并像对待表一样对这个查询进行操作。这是一个逻辑结构,因为它不像一个表会存储数据。换句话说,Hive目前暂不支持物化视图。当一个查询引用一个视图时,这个视图所定义的查询语句将和用户的查询语句组合在一起,然后供Hive制定查询计划。从逻辑上讲,可以想象为Hive先执行这个视图,然后使用这个结果进行余下后续的查询。1、使用视图来降低查询复杂度当查询变得长或复杂的时候,通...转载 2018-10-05 21:01:23 · 4287 阅读 · 0 评论 -
【Hive】06-HiveQL:查询
1、SELECT FROM语句1.1、使用正则表达式来指定列我们甚至可以使用正则表达式来选择我们想要的列。下面的查询将会从表stocks中选择symbol列和所有列名以price作为前缀的列:SELECT symbol ,`price.*`FROM stocks;1.2、使用列值进行计算用户不但可以选择表中的列,还可以使用函数调用和算术表达式来操作列值。例如,我们可以查询得...转载 2018-10-05 20:22:11 · 1206 阅读 · 0 评论 -
【Hive】05-HiveQL:数据操作
1、向管理表中装载数据既然Hive没有行级别的数据插人、数据更新和删除操作,那么往表中装载数据的唯一途径就是使用一种“大量”的数据装载操作。或者通过其他方式仅仅将文件写人到正确的目录下。在“分区表、管理表”中我们已经看到了一个如何装载数据到管理表中的例子,这里我们稍微对其增加些内容重新进行展示。我们新增了一个关键字OVERWRITE:LOAD DATA LOCAL INPATH '${...转载 2018-09-16 22:37:21 · 708 阅读 · 0 评论 -
【Hive】04-HiveQL:数据定义
HiveQL是Hive查询语言。和普遍使用的所有SQL方言一样,它不完全遵守任一种ANSI SQL标准的修订版。HiveQL可能和MySQL的方言最接近,但是两者还是存在显著性差异的。Hive不支持行级插人操作、更新操作和删除操作。Hive也不支持事务。Hive增加了在Hadoop背景下的可以提供更高性能的扩展,以及一些个性化的扩展,甚至还增加了一些外部程序。当然了,大部分的HiveQL还是很常...转载 2018-09-15 21:53:59 · 1504 阅读 · 0 评论 -
【Hive】03-数据类型和文件格式
Hive支持关系型数据库中的大多数基本数据类型,同时也支持关系型数据库中很少出现的3种集合数据类型,下面我们将简短地介绍一下这样做的原因。其中一个需要考虑的因素就是这些数据类型是如何在文本文件中进行表示的,同时还要考虑文本存储中为了解决各种性能问题以及其他问题有哪些替代方案。和大多数的数据库相比,Hive具有一个独特的功能,那就是其对于数据在文件中的编码方式具有非常大的灵活性。大多数的数据库对数...转载 2018-09-09 16:06:06 · 494 阅读 · 0 评论 -
【Hive】02-Hive命令
$HIVE_HOME/bin/hive这个shell命令(后面我们省略称为hive)是通向包括命令行界面也就是CLI等Hive服务的通道。我们假定用户已经将$HIVE_HOME/bin加人到环境变量PATH中了,则用户只需要在shell提示符中输人hive,就可以使用户的shell环境(例如bash环境)找到这个命令。1、命令选项如果用户执行下面的命令,那么可以查看到hive命令的一个简...转载 2018-09-09 15:31:03 · 1050 阅读 · 0 评论 -
【Hive】01-安装Hive
安装Hive的过程和安装Hadoop的过程非常相似。我们需要先下载一个Hive软件压缩包,然后进行解压缩。Hive使用环境变量HADOOP_HOME来指定Hadoop的所有相关JAR和配置文件。因此,在继续进行之前请确认下是否设置好了这个环境变量。解压安装包 $ tar -xzvf hive-3.y.z.tar.gz设置环境变量 $ export HIV...转载 2018-09-09 15:24:05 · 202 阅读 · 0 评论