Hive
RivenDong
这个作者很懒,什么都没留下…
展开
-
Hive优化补充(十六)
文章目录1. 限制调整2. 列裁剪和分区裁剪3. 谓词下推4. sort by代替order by5. group by配置调整5.1 map端调整5.2 倾斜均衡配置项6. MapReduce优化6.1 调整mapper数6.2 调整reducer数7. 严格模式8. 推测执行1. 限制调整LIMIT语句是经常使用到的,不过在执行时,还是需要执行整个查询语句,然后再返回部分结果。这种情况是十...原创 2020-01-08 21:15:06 · 988 阅读 · 0 评论 -
Hive的EXPLAIN命令续(十五)
1. 词频统计算法通过上图可以看出,在执行词频统计算法时,会生成两个阶段(Stage)的MapReduce任务,最后是输出的单词个数,通过输出结果可以看出,从小到大排列输出。2. 元操作符Hive编译器将一个HQL转换为操作符,操作符Operator是Hive的最小的处理单元,每个操作符代表HDFS的一个操作或者一道MapReduce作业,所有的Operator都是hive定义的一个处理...原创 2020-01-08 21:02:15 · 1019 阅读 · 0 评论 -
Hive的EXPLAIN命令(十四)
1. 前言Hive本身是不会生成Java MapReduce算法程序的,而是生成一个表示“job执行计划”的XML文件驱动执行内置的、原生的Mapper和Reducer模块。换句话说,这些通用的模板函数类似于微型的语言翻译程序,而这个驱动计算的“语言”是以XML形式编码的。·2. 基于词频统计分析EXPLAIN命令SELECT word, count(1) AS count FROM ...原创 2020-01-08 16:27:07 · 1184 阅读 · 0 评论 -
Sqoop将数据导入到Hive(五)
文章目录1. 前言2. 写配置文件3. 执行配置文件4. 查看导入数据1. 前言前面经历各种周折,终于改完BUG了,成功可以将数据导入到HDFS中,导入数据到Hive与之类似。2. 写配置文件内容如下:import--connectjdbc:mysql://master001:3306/test--usernamehadoop1--passwordhadoop--table...原创 2019-09-27 10:23:11 · 1630 阅读 · 0 评论 -
Hive的优化(十三)
文章目录1. 前言2. MapReduce优化3. 配置优化3.1 列裁剪3.2 分区裁剪3.3 join操作3.4 GROUP BY操作4. 小结1. 前言Hive的底层是MapReduce,当数据量太大时,往往可以通过并行来提高效率,比如通过Partition实现运行多个Reduce,可是如果处理不当则容易引发数据倾斜,从而导致效率降低,这就涉及Hive的优化。Hive的优化主要分为Map...原创 2019-09-23 22:26:48 · 896 阅读 · 0 评论 -
Hive的Java API 操作(十二)
文章目录1. 前言2. 通过java访问Hive2.1 启动HiveServer22.2 Java API操作Hive的例子2.2.1 创建Maven项目2.2.2 实例代码2.2.3 效果截图3. 再来举个栗子1. 前言在前面几篇中已经实现了Hive的配置和安装,并且基于Hive Shell实现了数据的基础分析,平常我们通过Hive做简单的数据分析实验的时候,都是直接进入Hive执行Hive...原创 2019-09-23 18:11:47 · 1220 阅读 · 0 评论 -
Hive的内置函数(十一)
文章目录1. 前言2. 内置函数实例2.1 UDF函数实例2.2 UDAF函数实例2.3 UDTF函数实例3. hive常用函数1. 前言Hive中包含很多内置函数,如果内置函数不能满足实际应用时,也可以自定义函数(User-Defined Function,UDF)来实现,并在Hive中调用。UDF函数有3中类型:UDF(User-Defined-Function)函数作用于单条...原创 2019-09-23 11:56:07 · 1553 阅读 · 0 评论 -
Hive元数据库中各个表的含义(十)
文章目录1. 前言2. 如何访问元数据库中的表3. 分析各表作用3. 详细分析1. 前言在之前找BUG的过程中,查看了元数据库中的DBS表和SDS表,灰常滴感兴趣,所以逐个查了一下。2. 如何访问元数据库中的表首先进入mysql,然后选择使用所创建的元数据库然后查看总共有几个元数据表可以清楚的看到总共有30几个表。3. 分析各表作用首先先来个简要分析:表名作用...原创 2019-09-22 16:58:48 · 2113 阅读 · 0 评论 -
Hive创建外部表两种方式的区别(九)
注意:本篇是我根据Hive第7篇文章最后的BUG,未在数据仓库找到表目录的BUG而写的。。。首先,再回顾以下创建外部表的两种方式:第一种是创建一个空表,然后向表中导入数据的方式create external table person1(id int,name string,age int,fav array<string>,addr map<string, s...原创 2019-09-22 12:32:31 · 1921 阅读 · 0 评论 -
Hive的SemanticException Unable to determine if hdfs BUG(八)
先来分享两条查看NameNode节点状态的命令:hdfs haadmin -getServiceState nn1hdfs haadmin -getServiceState nn2接着上一篇来吧,不过这次我们通过master001来写入文件,使用lhd数据库,然后使用以下命令创表:create external table person(id int,name string,age...原创 2019-09-22 11:57:00 · 1657 阅读 · 0 评论 -
Hive的内部表与外部表(七)
文章目录1. 前言2. 准备工作2.1 创建数据库2.2 查看数据库2.3 使用数据库2. 内部表2.1 查看表目录2.2 删除表再查看3. 外部表3.1 外部表简介3.2 两种创建方式3.3 以第二种方式为例建表3.4 查看表目录1. 前言与传统的关系型数据库不同,Hive创建的表分为内部表和外部表,对于内部表来说,在创建的时候会把数据移动到数据仓库所指向的位置;如果是外部表,则仅仅记录的是...原创 2019-09-21 12:32:58 · 1216 阅读 · 0 评论 -
Hive表的分桶(六)
文章目录1. 前言2. 表的分桶2.1 建立带有分桶的表2.2 导入数据2.3 查询3. 来点有趣的分析1. 前言分桶是相对分区进行更细粒度的划分。在分区数量过于庞大以至于可能导致文件系统崩溃时,我们就需要使用分桶来解决问题。分桶将整个数据内容按照某列属性值的Hash值进行划分。比如,如果按照ID属性分为4个桶,就是对ID属性值的Hash值对4取模,按照取模的结果对数据进行分桶。举个例子:...原创 2019-09-21 11:16:31 · 1666 阅读 · 0 评论 -
Hive表的分区(五)
文章目录1. 前言2. 表的分区2.1 建立带有分区的表2.2 导入数据2.3 查询3. BUG补充1. 前言Hive中存放的数据量往往很大,而处理庞大的数据需要耗费大量的时间,若是每次查询都对全部的数据集进行检索,效率将会极其的低下。而且我们在大多数的情况下并不需要对全部的数据进行检索,因此引入分区和分桶的方法将会减少每一次扫描总数据量,并显著的改善性能。2. 表的分区把数据按照单个或多...原创 2019-09-20 18:32:30 · 1419 阅读 · 0 评论 -
Hive表的操作(四)
文章目录1. 前言2. person.txt文件3. 创建Hive表4. 导入数据5. 查询表1. 前言前面三篇讲述了安装MySQL和Hive以及Hive的配置和存储,并通过Shell成功登录了Hive,接下来就可以创建Hive表进行数据操作了。Hive是一个数据仓库,它可以将结构化的数据文件映射为一张数据库表,并具有SQL语言的查询功能,这里需要再次强调的是对于数据仓库来说,往往存放的是历...原创 2019-09-20 17:28:50 · 1149 阅读 · 0 评论 -
Hive的数据存储(三)
文章目录1. 前言2. 元数据存储3. 数据存储3.1 Database3.2 Table3.3 Partition(分区)3.4 Bucket(桶)4. 组织成桶的好处4.1 更高的查询处理效率4.2 取样更高效1. 前言Hive是建立在Hadoop上的数据仓库基础架构。它提供了一系列的工具,用来进行数据(ETL)提取、转化、加载。这是一种可以存储、查询和分析存储在Hadoop中的大规模数据...原创 2019-09-20 11:47:31 · 1346 阅读 · 0 评论 -
Hive的安装与配置(二)
文章目录1. Hive的基本安装1.1 下载1.2 上传解压1.3 配置Hive的环境变量1.4 验证Hive2. MySQL的安装2.1 下载安装2.2 MySQL的初始化3. Hive的配置3.1 配置MySQL为Hive元数据存储数据库3.2 配置hosts文件4. 启动hive1. Hive的基本安装1.1 下载Hive的下载地址:下载链接1.2 上传解压在Hadoop用户状态...原创 2019-09-19 22:23:20 · 1275 阅读 · 4 评论 -
Hive的基本原理(一)
文章目录1. 前言2. 什么是Hive3. Hive和数据库的异同4. Hive设计的目的与应用5. Hive的架构与基本组成6. Hive的数据模型1. 前言前面讲了很多关于集群搭建、以及HDFS和MapReduce的操作,接下来终于能学习新的内容了,开森。。。2. 什么是HiveHive是基于Hadoop构建的一套数据仓库分析工具,它提供了丰富的SQL查询方式来分析存储在Hadoop分...原创 2019-09-19 11:45:54 · 1831 阅读 · 0 评论