Hive 口袋手册
2019-04-01
关键字:Hive 学习总结、Hive 基础 、 Hive 进阶 、Hive 调优 、 Hive 入门手册、Hive PDF 下载
本篇文章系本人就目前所掌握的知识对 Apache Hive 的各种零碎知识点汇总而成的一篇小册子,不保证文章的绝对、完全正确性。
前段时间在整理我的笔记时,发现自己之前在学习 Hive 的过程中做了不少笔记。但是这些笔记真是既杂乱又无章,我相信就这些笔记,我这辈子都很难有到回去翻看的念头。一时间 “整理癖” 发作,且想着借笔记整理的过程再好好回顾一下 Hive 的各个知识点,于是就整理出了这篇 《Hive 口袋手册》。
《Hive 口袋手册》是笔者根据自己对 Apache Hive 的知识点的理解汇总而成的小册子。这本小册子的撰写宗旨就两点 1. 常用;2. 概要。 这就注定了这本小册子并不是一本 “全面”、“详尽” 的书籍,它是一个对常用知识点的概括性总结,或者也可以称之为 “备忘录”。它适合于对 Hive 已经有一定了解的人群,亦或是作为面试前的知识回顾手册。
写这本册子的初衷一是为了总结自己关于 Hive 的学习过程,二是为了将自己学习过程中七零八乱的笔记做个整理、汇总。
这本小册子目前最新版本为 : v20190401002 ,该版本共有 28K 字。
这本小册子有别于传统的教材书籍中每讲到一个知识点都直接从入门讲到高级知识的方式,而是采用 基础、进阶、调优 的方式来安排内容。这就意味着,同一个知识点,可能在不同的章节都会讲一下,但这个知识点在每一处所涉及到的深度都是不一样的。
以下贴出的是本册子的目录,感兴趣的小伙伴们可以从文章底部给出的链接中选择一个来阅读
1、基础
1.1、Hive 简介
1.1.1、什么是 Hive
1.1.2、为什么使用 Hive
1.1.3、Hive 的特点
1.1.4、Hive 与 Hadoop 的关系
1.1.5、Hive 与传统数据库的对比
1.1.6、Hive 的数据存储
1.2、Hive 的架构
1.3、Hive 的安装与配置
1.3.1、前提条件
1.3.2、Hive 的安装
1.3.3、Hive 工作模式的选择
1.3.4、Hive 的配置
1.4、Hive Shell
1.4.1、Hive 中执行 Bash 命令
1.4.2、变量与属性
1.4.3、操作 HDFS
1.5、Hive DDL
1.5.1、数据类型
1.5.2、操作库
1.5.3、操作表
1.6、Hive DML
1.6.1、导入数据
1.6.2、导出数据
1.7、Hive 函数
1.7.1、数学函数
1.7.2、集合函数
1.7.3、类型转换函数
1.7.4、日期函数
1.7.5、条件函数
1.7.6、字符串函数
1.7.7、聚合函数
1.7.8、表生成函数
1.7.9、自定义函数
1.8、Hive 操作符
1.9、Hive 查询
1.9.1、普通查询
1.9.2、嵌套查询
1.9.3、连接查询
1.9.4、分组与排序
1.9.5、合并查询
1.9.6、如何避免触发 MapReduce
2、进阶
2.1、软件配置
2.1.1、常用属性
2.1.2、hiveserver2
2.2、存储规划
2.2.1、Hive 的数据存储格式
2.2.2、内部表与外部表
2.2.3、分区与分桶
2.2.4、视图与索引
2.2.5、压缩与归档
2.2.6、字符集设置
2.2.7、SerDe
2.3、查询技巧
2.3.1、Hive 的读时模式
2.3.2、一次性查询与脚本查询
2.3.3、查看表详细信息
2.3.4、beeline
2.3.5、排序
2.3.6、去重
2.3.7、其它
2.4、运行原理
2.4.1、HQL 的执行过程
2.4.2、load 数据的原理
2.5、JDBC 编程
3、调优
3.1、EXPLAIN
3.2、连接查询
3.2.1、左半连接查询
3.2.2、map 端连接查询
3.2.3、连接查询的优化
3.3、使用本地查询
3.4、严格模式
3.5、数据倾斜
3.6、关于 MapReduce
3.6.1、控制 map, reduce 任务数量
3.6.2、合并 MapReduce 作业
3.6.3、合并小文件
这本小册子并不是最终版本,以后如果有机会的话,还会更新内容的,或修正错误或新增内容。
目前共提供两种阅读方式
1. 在线阅读
2. 离线 PDF
在线阅读: http://a7082273.wiz03.com/share/s/2D229P0BMQAh2nyO0L1350Wn10WVL12dmQF62b9ZdI1KVLVO
百度云盘: https://pan.baidu.com/s/1hCUnmHiWKl9tmXAcQC97JA 提取码: e51f
Hive 口袋手册的更多相关文章
- Hive官方手册翻译(Getting Started)
翻译Hive官方文档系列,文中括号中包含 注: 字样的,为我自行标注的,水平有限,翻译不是完美无缺的.如有疑问,请参照Hive官方文档对照查看. 内容列表 Cloudera制作的Hive介绍视频 ...
- Hive官方手册翻译(Getting Started)(转)
原文:http://slaytanic.blog.51cto.com/2057708/939950 翻译Hive官方文档系列,文中括号中包含 注: 字样的,为我自行标注的,水平有限,翻译不是完美无缺的 ...
- hive部署手册
安装环境: 机器 只需要安装一台机器 操作系统:Ubuntu 11.04 64操作系统 hadoop:版本是1.0.2,安装在/usr/local/hadoop sun ...
- Hive 官方手册翻译 -- Hive Transactions (Hive 事务)
由 Alan Gates创建, 最终由 Andrew Sherman修改于2018年8月7日 原文链接:https://cwiki.apache.org/confluence/display/Hive ...
- Hive 官方手册翻译 -- Hive DML(数据操纵语言)
由 Confluence Administrator创建, 最终由 Lars Francke修改于 八月 15, 2018 原文链接 https://cwiki.apache.org/confluen ...
- Hive 官方手册翻译 -- Hive DDL(数据定义语言)
Hive DDL(数据定义语言) Confluence Administrator创建, Janaki Lahorani修改于 2018年9月19日 原文链接 https://cwiki.apache ...
- Apache Hudi 与 Hive 集成手册
1. Hudi表对应的Hive外部表介绍 Hudi源表对应一份HDFS数据,可以通过Spark,Flink 组件或者Hudi客户端将Hudi表的数据映射为Hive外部表,基于该外部表, Hive可以方 ...
- 【Hive学习之二】Hive SQL
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 ...
- Hadoop Hive概念学习系列之hive里的扩展接口(CLI、Beeline、JDBC)(十六)
<Spark最佳实战 陈欢>写的这本书,关于此知识点,非常好,在94页. hive里的扩展接口,主要包括CLI(控制命令行接口).Beeline和JDBC等方式访问Hive. CLI和B ...
随机推荐
- 让priority_queue支持小根堆的几种方法
点击这里了解什么是priority_queue 前言 priority_queue默认是大根堆,也就是大的元素会放在前面 例如 #include<iostream> #include< ...
- angular打包后路由和文件路径不对
base href换成如下script标签 <!-- <base href="/"> --> <script> document.write(' ...
- Scrapped or attached views may not be recycled
在使用recycleView的时候出现了错误Scrapped or attached views may not be recycled 原因: view没有被recycled,recyclerVie ...
- 20180903 - Python Pip 工具下载whl包与离线安装
20180903 - Python Pip 工具下载whl包与离线安装 1. 我的Blog 博客园 https://www.cnblogs.com/piggybaba 个人网站 http://pigg ...
- js动态创建元素之一--document.write
以我曾经写过的例子举例 如上图,乡镇街道的名字和数目是根据数据库的数据获取的,有几个乡镇,就会显示出来几个,这就要求动态获取乡镇名称和数目,以下代码中用到了document.write创建动态页面,在 ...
- Python装饰器、内置函数之金兰契友
装饰器:装饰器的实质就是一个闭包,而闭包又是嵌套函数的一种.所以也可以理解装饰器是一种特殊的函数.因为程序一般都遵守开放封闭原则,软件在设计初期不可能把所有情况都想到,所以一般软件都支持功能上的扩展, ...
- Python爬虫之正则表达式(1)
廖雪峰正则表达式学习笔记 1:用\d可以匹配一个数字:用\w可以匹配一个字母或数字: '00\d' 可以匹配‘007’,但是无法匹配‘00A’; ‘\d\d\d’可以匹配‘010’: ‘\w\w\d’ ...
- Docker: Harbor一些小知识
镜像文件上传到私有仓库harbor后,镜像的物理存储位置在哪里? 这些信息记录在docker-compose.yml里,通过观察发现 镜像存储在了宿主机的 volumes: - /data/regis ...
- JavaScript对象类型之简单介绍
引言 对象是JavaScript的基本数据类型. 对象是一种复合值:将很多值(原始值或者其他对象)聚合在一起,通过名字访问这些值. 对象可以看做属性的无序集合,每个属性都是一个名/值对.属性名是字符串 ...
- 日志学习系列(一)——Log4net的基础知识学习
今天把Log4net日志记录做了封装,作为一个公共的类库.记录一下应该注意的地方.先了解一下log4net的理论知识. 参考百度百科 一.log4net是什么? log4net库是Apache log ...