大数据之-HIVE入门(十四)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据之-HIVE入门(十四)相关的知识,希望对你有一定的参考价值。

参考技术A 当join时有一个或多个小表可以装载进内存时可以使用mapjoin完成。

第一种方法是可以加上mapjoin指示

第二种方法是设置 set hive.auto.convert.join=true;来让hive自动优化。同时可以指定

set hive.auto.convert.join.noconditionaltask = true; --默认开启

set hive.auto.convert.join.noconditionaltask.size = 10000000; --默认10M,可以根据需求做调整。

hive.mapjoin.smalltable.filesize= 2500000;--早期hive版本小表文件大小设置默认25M。

当数据量比较大启动mapjoin后会造成问题请关闭

set hive.map.aggr = true; //是否在 Map 端进行聚合,默认为 True ;

set hive.groupby.mapaggr.checkinterval = 100000000; //在 Map 端进行聚合操作的条目数目

1、在关联操作前尽量减小数据集,能先聚合的先聚合、能过滤的先过滤(如设置查询条件、合理设置分区,有分区必须设置分区范围)。

2、关联时数据类型要做到一致,如果不一致请用cast先转换类型。

3、慎用count(distinct) ,容易产生数据倾斜,可以先group by 再count。

4、减少小文件,合理设置输入文件大小、合理设置map job 、reduce job数。

set hive.merge.mapredfiles=true;--设置合并map文件标识。

set mapred.max.split.size=100000000; --设置最大输入文件大小,大于此数值都会进行拆分。

set mapred.min.split.size.per.node=100000000;--设置每个节点可处理的最小值。

set mapred.min.split.size.per.rack=100000000;--设置每个机架可处理的最小值。

set hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat; – 执行前进行小文件合并。

set mapred.reduce.tasks=10; -- 设置reduce的数量

set hive.exec.reducers.bytes.per.reducer=1073741824 --设置每个reduce所处理的数据大小

5、选取字段避免用select * ,只引用你要用的字段,如select a.uid,a.price。

6、关联值有null值的情况下,可以将null值过滤出来单独处理或者将null值随机赋值。当存在某key有热点问题,也可以同样处理。

7、合理设置数据模型、文件存储格式有利于查询效率优化。

8、善用union all 合并对于同一个表的查询,有利于整体提高效率。

9、合理使用中间临时表,数据量巨大时,如统计一年的数据,可先小规模聚合如按月聚合生成中间表,最后再合并统计出结果。

10、有order by 要限制输出条数。

11、合理设置并行查询

set hive.exec.parallel= true ; --以开启并发执行。

set hive.exec.parallel.thread.number= 10 ; //同一个sql允许最大并行度,默认为8。

大数据仓库Hive实战视频教程-HIVE完美入门学习视频教程 HIVE教程 HIVE从入门到精通


大数据仓库Hive实战视频教程-HIVE完美入门学习视频教程 HIVE教程 HIVE从入门到精通

 
 

课程介绍:

很经典的HIVE一套课程,分了三个阶段来讲解,很适合零基础来入门学习
hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 

-------------------课程目录-------------------

│  ├<第1章 Hive初识入门>
│  │  ├0201 Hive初识入门.pdf
│  │  ├1.02_01_01_01 通过实际项目分析引出Hive及Hive是什么、Hive前景如何.mp4
│  │  ├1.02_01_01_02 Hive架构、优点及使用场景讲解.mp4
│  │  ├1.02_01_01_03 Hive安装使用准备工作 网页.mp4
│  │  ├1.02_01_01_04 Hive安装部署及简单测试 网页.mp4
│  │  ├1.02_01_01_05 Hive初步使用和安装MySQ 网页.mp4
│  │  ├1.02_01_01_06 Hive配置metastore 网页.mp4
│  │  ├1.02_01_01_07 Hive基本操作使用讲解 网页.mp4
│  │  ├1.02_01_01_08 Hive运行日志配置和查看讲解 网页.mp4
│  │  ├1.02_01_01_09 Hive常见属性配置讲解(重点) 网页.mp4
│  │  ├1.02_01_01_10 Hive常用几种交互操作讲解 网页.mp4
│  │  ├1.02_01_01_11 Hive交互式命令行操作讲解 网页.mp4
│  │  ├apache-hive-0.13.1-bin.tar.gz
│  │  ├apache-hive-0.13.1-src.tar.gz
│  │  ├mysql-libs.zip
│  │  ├笔记.docx
│  │  ├笔记-01.txt
│  │  ├<hive-conf>
│  │  │  ├hive-env.sh
│  │  │  ├hive-log4j.properties
│  │  │  └hive-site.xml
│  ├<第2章 Hive深入使用>
│  │  ├2.02_01_02_01 Hive 中数据库Database基本操作 网页.mp4
│  │  ├2.02_01_02_02 基于具体业务讲解Hive中表的创建及常见的三种创建表的方式及应用 网页.mp4
│  │  ├2.02_01_02_03 Hie的数据类型讲解及实际项目中如何使用phthon脚本对数据进行ETL 网页.mp4
│  │  ├2.02_01_02_04 以【雇员表和部门表】为例创建讲解Hive中表的操作 网页.mp4
│  │  ├2.02_01_02_05 Hive中外部表的讲解(对比管理表) 网页.mp4
│  │  ├2.02_01_02_06 Hive中分区表讲解及几大注意事项(结合企业案例分析) 网页.mp4
│  │  ├2.02_01_02_07 导入数据进入Hive表的六大方式讲解 网页.mp4
│  │  ├2.02_01_02_08 导出Hive表数据的几种方式讲解 网页.mp4
│  │  ├2.02_01_02_09 Hive中常见的查询讲解 网页.mp4
│  │  ├2.02_01_02_10 Hive中高阶查询讲解(groupby、having及jion) 网页.mp4
│  │  ├2.02_01_02_11 Hive中数据导入导出Import和Export使用讲解 网页.mp4
│  │  ├2.02_01_02_12 Hive中order by、sort by、distribute by和cluster by详细讲解 网页.mp4
│  │  └2.02_01_02_13 Hive中自带Function使用及自定义UDF编程及使用 网页.mp4
│  ├<第3章 Hive高级进阶>
│  │  ├3.02_01_03_01 HiveServer2、Beeline、JDBC使用 网页.mp4
│  │  ├3.02_01_03_02 Hive中常见的数据压缩讲解 网页.mp4
│  │  ├3.02_01_03_03 配置演示讲解mapreduce和hive中使用snappy压缩 网页.mp4
│  │  ├3.02_01_03_04 Hive Storage Format讲解一 网页.mp4
│  │  ├3.02_01_03_05 Hive Storage Format讲解二 网页.mp4
│  │  ├3.02_01_03_06 Hive Storage Format讲解三 网页.mp4
│  │  ├3.02_01_03_07 Hive 企业使用优化一 网页.mp4
│  │  ├3.02_01_03_08 Hive 企业使用优化二 网页.mp4
│  │  ├3.02_01_03_09 Hive 企业使用优化三Join 网页.mp4
│  │  ├3.02_01_03_10 Hive 企业使用优化四SMB Join 网页.mp4
│  │  ├3.02_01_03_11 Hive 企业使用优化五查看HQL执行计划explain 网页.mp4
│  │  ├3.02_01_03_12 Hive 企业使用优化六 网页.mp4
│  │  ├3.02_01_03_13 Hive 企业使用优化七 网页.mp4
│  │  ├3.02_01_03_14 Hive 企业使用优化八 网页.mp4
│  │  ├3.02_01_03_15 Hive 项目实战一创建表并导入日志数据,引出问题 网页.mp4
│  │  ├3.02_01_03_16 Hive 项目实战二使用RegexSerDe处理Apache或者Ngnix日志文件 网页.mp4
│  │  ├3.02_01_03_17 Hive 项目实战三依据原表创建子表及设置orcfile存储和snappy压缩数据 网页.mp4
│  │  ├3.02_01_03_18 Hive 项目实战四数据清洗之自定义UDF去除数据双引号.mp4
│  │  ├3.02_01_03_19 Hive 项目实战五数据清洗之自定义UDF转换日期时间数据 网页.mp4
│  │  ├3.02_01_03_20 Hive 项目实战六依据业务编写HiveQL分析数据 网页.mp4
│  │  └3.02_01_03_21 Hive 项目实战七MovieLens数据分析采用python脚本进行数据清洗和统计 网页.mp4


 

百度网盘链接:http://pan.baidu.com/s/1pLe426n 


关注、点赞并写留言可免费获取密码!



大家都在看↓



以上是关于大数据之-HIVE入门(十四)的主要内容,如果未能解决你的问题,请参考以下文章

打怪升级之小白的大数据之旅(六十四)<Hive旅程第五站:DML基本操作>

大数据之-HIVE入门(二十)

大数据之-HIVE入门(十六)

大数据之-HIVE入门(十二)

大数据技术之 Hive (小白入门)

大数据之-HIVE入门(十七)