![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hive
今夕何夕-l
这个作者很懒,什么都没留下…
展开
-
Hive数据倾斜
1.概念map/reduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时间很长,这是因为某一个key的条数比其他key多很多(有时是百倍或者千倍之多),这条key所在的reduce节点所处理的数据量比其他节点就大很多,从而导致某几个节点迟迟运行不完,此称之为数据倾斜。2.hive产生数据倾斜的原因(1)key 分布不均匀(2)业务数据本身的特性(3)建表时考虑不周(4)某些 SQL 语句本身就有数据倾斜3.解决方案(1)参数调节原创 2020-10-14 10:29:58 · 138 阅读 · 0 评论 -
Hive性能优化
Hive性能调优工具1.EXPLAN(执行计划)显示查询语句的执行计划,但不运行通过工具生成可视化执行计划(1)基本语法EXPLAIN [EXTENDED | DEPENDENCY | AUTHORIZATION] query①EXTENDED提供执行计划关于操作的额外信息,比如文件路径②DEPENDENCY提供JSON格式输出,包括查询所依赖的表和分区列表③AUTHORIZATION列出所有需要授权的实体,包括查询的输入输出和授权失败(2)实例演示:①查看下面这条语句的执行计原创 2020-10-13 20:18:13 · 278 阅读 · 0 评论 -
Hive之DML操作详解
1.概念区分:①DML(Data Manipulation Language)数据操纵语言 :主要用来对数据库的数据进行一些操作,常用的就是INSERT、UPDATE、DELETE。②DDL(Data Define Language)数据定义语言:常用的有CREATE和DROP,用于在数据库中创建新表或删除表,以及为表加入索引等③DCL(Data Control Language)数据控制语言:通过GRANT和REVOKE,确定单个用户或用户组对数据库对象的访问权限2.数据导入(1)向表中装原创 2020-10-13 19:20:34 · 1333 阅读 · 0 评论 -
Hive事务
1.概念:是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作;这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;事务是一组不可再分割的操作集合(工作逻辑单元);2.事务特性(ACID)(1)Atomicity:原子性事务是数据库的逻辑工作单位,事务中包含的各操作要么都做,要么都不做(2)Consistency:一致性事 务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。因此当数据库只包含成功事务提交的结果时,就说数据库处于一致性状态。如果数据库系统 运行原创 2020-10-13 11:39:09 · 503 阅读 · 0 评论 -
Hive函数和UDF详解
Hive函数1.数学函数(1)round①返回对a四舍五入的BIGINT值round(DOUBLE a)返回值:DOUBLE②返回对a四舍五入并保留d位小数位的值round(DOUBLE a, INT d)返回值:binary(2)floor向下取整,如:6.10->6 -3.4->-4floor(DOUBLE a)返回值:BIGINT(3)rand返回一个DOUBLE型随机数,seed是随机因子rand(INT seed)返回值:DOUBLE(4)原创 2020-10-13 10:38:28 · 1304 阅读 · 0 评论 -
Hive窗口函数详解
1.概述(1)窗口函数是一组特殊函数①扫描多个输入行来计算每个输出值,为每行数据生成一行结果②可以通过窗口函数来实现复杂的计算和聚合(2)语法Function (arg1,..., arg n) OVER ([PARTITION BY <...>] [ORDER BY <....>] [<window_clause>])①PARTITION BY类似于GROUP BY,未指定则按整个结果集②只有指定ORDER BY子句之后才能进行窗口定义③可同时使用多个原创 2020-10-12 10:23:58 · 2802 阅读 · 0 评论 -
Hive高级查询
基本查询1.全表和特定字段查询(1)全表查询hive (default)> select * from emp;(2)特定字段查询hive (default)> select empno, ename from emp;(3)注意:①SQL 语言大小写不敏感②SQL 可以写在一行或者多行③关键字不能被缩写也不能分行④各子句一般要分行写(不分行写不会报错,但影响阅读)⑤使用缩进提高语句的可读性2.列别名和 MySQL 一样,我们同样可以通过列别名重命名一个列,以便于计原创 2020-10-09 11:25:18 · 478 阅读 · 0 评论 -
Hive基础语句
1.数据库操作(1)创建数据库为避免要创建的数据库已经存在错误,增加if not exists判断。(标准写法)create database if not exists myhivebook;(2)使用数据库use myhivebook;(3)修改数据库用户可以使用ALTER DATABASE命令为某个数据库的DBPROPERTIES设置键-值对属性值,来描述这个数据库的属性信息。数据库的其他元数据信息都是不可更改的,包括数据库名和数据库所在的目录位置。alter database m原创 2020-10-08 13:37:31 · 2234 阅读 · 0 评论 -
Hive框架详解
Hive基本概念1.hive基本概念(1)起源:由FaceBook开源,用于解决海量结构化日志的数据统计。(2)概念:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。(3)本质:将HQL转换成MapReduce程序。①Hive处理的数据存储在HDFS②Hive分析数据底层的实现是MapReduce③执行程序运行在YARN上2.hive优缺点:(1)优点:①操作接口采用类SQL语法,提供快速开发的能力(简单、容易上手)②避免了去写原创 2020-10-05 22:34:43 · 1300 阅读 · 0 评论 -
关于hive动态分区太多的问题解决方案
今天在hive插入分区表的时候出现以下报错hive>insert into table ods_PoliceKill_partition partition (city) select id,name,date,manner_of_death,armed,age,gender,race,state,signs_of_mental_illness,threat_level,flee,body_camera,city from ods_PoliceKill;报错如下:java.lang.原创 2020-09-22 19:52:00 · 2780 阅读 · 2 评论 -
CentOs7下Hive的安装配置(单机版)
1.首先需要准备有jdk和hadoop环境配置完成的CentOs虚拟机2.解压文件(hive-1.1.0-cdh5.14.2.tar.gz压缩包)# tar -zxf hive-1.1.0-cdh5.14.2.tar.gz3.建立hive软链接到指定文件夹下#mv hive-1.1.0-cdh5.14.2 /opt/soft/hive1104.环境配置和搭建(1)进入/opt/soft/hive110/conf目录下...原创 2020-09-11 11:44:39 · 464 阅读 · 1 评论 -
liunx操作系统下Hive的安装配置
1.前置安装hadoop,mysql数据库以及zookeeper(选择安装hadoop2.7.3及zookeepe3.4.6)hadoop以及数据库的安装见前文zookeeper安装(1)解压文件:#tar -zxf zookeeper-3.4.5-cdh5.14.2.tar.gz(2)将解压后的文件移动到zk345文件夹下:#mv zookeeper-3.4.5-cdh5.14.2 soft/zk345(3)进入conf文件#cd soft/zk345/conf/(4)将 zoo_原创 2020-06-10 18:42:22 · 90 阅读 · 0 评论 -
liunx环境下Hive的简介
Hive原理:Hive是基于Hadoop的一个数据仓库,可以将结构化的数据文件映射为一张数据库表,并提供完整sql查询功能,可以将sql语句转换为MapReduce任务进行运行。其优点是学习陈本低,可以通过类sql语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。Hive是建立在Hadoop上的数据仓库基础架构。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在Hadoop中的大规模数原创 2020-06-09 19:52:42 · 99 阅读 · 0 评论