hive教程
Hive提供了Hive查询语言(简称HQL)来实现查询存储在Hadoop集群中的数据,因此它是架构在Hadoop集群上的。
Hive适用于:
1.、Hive最适合于数据仓库应用程序,使用该应用程序进行相关的静态数据分析,不需要快速响应给出结果,而且数据本身不会频繁变化。
2、Hadoop以及HDFS的设计本身约束和局限性地限制了Hive所能胜任的工作。其中最大的限制就是Hive不支持记录级别的更新、插人或者删除操作。
3、因为 Hadoop是一个面向批处理的系统,而MapReduce任务(job)的启动过程需要消耗较长的时间,所以Hive查询延时比较严重。传统数据库中在秒级别可以完成的查询,在 Hive中,即使数据集相对较小,往往也需要执行更长的时间。
4、Hive 不支持事务。 因此,Hive不支持OLTP(联机事务处理)所需的关键功能,而更接近成为一个OLAP (联机分析技术)工具。
hive教程 的主要内容:
- Hive介绍:
介绍hive在Hadoop体系当中的位置,主要作用是什么。
- Hive和Pig的区别:
Pig hadoop 和 Hive hadoop 有一个相似的目标——它们是减轻编写复杂 java MapReduce 程序的工具。他们可以用 Pig Latin 或 Hive SQL 语言来构建 MapReduce 程序,从而减少了整体开发和测试时间
- hive与hbase区别:
hive与hbase都是Hadoop的衍生产品,但它们不为用户提供相同的功能。然而,尽管存在差异,Apache Hive 和 Apache HBase 都是处理大数据时优先考虑的两块工具和解决方案。
- Hive安装:
本章节介绍hive的安装,如何利用mysql作为hive元数据存储的配置。
- Hive CLI 命令行界面:
本文介绍Hive CLI 命令行工具是如何使用的。
- Hive CLI命令选项:
本文介绍Hive CLI主要常用的命令选项是有哪些。
- HIve变量和属性:
hive当中变量和属性的命名空间主要分为四种:hivevar、hivecof、system、env。
- Hive -e 一次性查询命令:
用户有时候想快速利用Hive CLI执行一个或者多个查询时,执行完毕就关闭Hive CLI,Hive命令项-e提供了此功能。
- Hive -f执行文件中的hql:
Hive -f命令项提供了可以执行指定文件中一个或者多个HQL查询语句。
- hive -i命令项:
hive -i命令项:会指定一个文件,在hive启动CLI时,在提示符出现之前加载这个文件,然后会在HOME目录下生成一个.hiverc的文件
- Hive基本数据类型:
Hive基本上支持大多数关系型数据库的基本数据类型,比如不同长度的整数型和浮点型,支持布尔类型,也支持无长度限制的字符串类型。
- Hive集合数据类型:
本文介绍hive支持的集合数据类型,如array、struct 和 map。
- Hive创建数据库:
在Hive中数据库的概念和关系型数据库的database的概念是一致的,都是代表着一些表的逻辑组,我们可以通过关键字create database在hive上创建一个新的数据库。
- hive修改数据库:
hive可以通过alter database关键字可以添加或修改hive数据库的属性。
- Hive创建表(create table):
hive采用关键字CREATE TABLE来创建一个新的表结构。hive create table的语法和sql语句当中类似
- Hive表存储文件格式:
通过STORED AS指定表存储的文件格式。hive支持Hadoop中常用的几种文件格式,如:TextFile、SequenceFile、RCFile、AVRO、ORC和Parquet格式。