一、Hive基本原理
hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。
Hive将元数据存储在数据库(RDBMS)中,比如MySQL、Derby中。Hive有三种模式连接到数据,其方式是:单用户模式,多用户模式和远程服务模式。(也就是内嵌模式
、本地模式、远程模式)。
1.1 Hive体系结构:
Hive体系结构图:主要分为:用户接口、Thrift服务器、元数据存储、解析器、Hadoop
1.2 Hive数据类型
Hive的存储是建立在Hadoop文件系统之上的,它本身没有专门的数据存储格式,其主要包括四类数据模型:
表(Table)
分区(Partition)
桶(Bucket)
外部表(External Table)
Hive的内置数据类型可以分为两大类:(1)、基础数据类型;(2)、复杂数据类型。其中,基础数据类型包括:TINYINT,SMALLINT,INT,BIGINT,BOOLEAN,FLOAT,DOUBLE,STRING,BINARY,TIMESTAMP,DECIMAL,CHAR,VARCHAR,DATE。
1.3Hive的执行流程要点
操作符(Operator)是Hive的最小处理单位;
每个操作符处理代表HDFS操作或MR作业;
编译器把Hive SQL转换成一组操作符;
Hive通过ExecMapper和ExecReducer来执行MapReduce任务;
执行MapReduce时有两种模式:本地模式和分布式模式;
常见的Hive操作符(部分)如下:
1.4 Hive的HQL操作
hive基本的运行操作其实和sql差不多,例如:
- select u.name, o.orderid from order o join user u on o.uid = u.uid;
- select dealid, count(distinct uid), count(distinct date) from order group by dealid;
简单Hive表语句:
create table student
(
name string,
sex string,
age int
);
http://blog.csdn.net/u010330043/article/details/51225021
http://www.cnblogs.com/sdksdk0/p/5585051.html
http://www.cnblogs.com/uttu/archive/2013/02/28/2936953.html
相关推荐
hive 基本操作的命令和hive 实用命令等,有利与学习hive和mysql
操作符是 Hive 处理数据的基本单位,常见的操作符有: - **TableScanOperator**:用于扫描 Hive 表数据。 - **ReduceSinkOperator**:用于创建将发送到 Reducer 端的 `, Value>` 对。 - **JoinOperator**:用于连接...
hadoop入门学习教程 之10.Hive工作原理和基本使用,出自《Cloudera Hadoop 4 实战课程》,hadoop入门学习教程用到技术:CDH4,Cloudera Manager,Hive,HBase,Sqoop, Hadoop培训视频教程涉及项目:电商业日志流量...
HiveSQL编译原理是大数据处理领域中的一个重要概念,它主要涉及到如何将用户提交的SQL语句转换为可执行的MapReduce或者Tez任务。在Hadoop生态系统中,Hive作为一个基于HDFS的数据仓库工具,提供了对大规模数据集进行...
在这个实验中,我们将深入理解Hive的角色以及如何执行基本操作。 首先,Hive在Hadoop生态系统中的角色是作为一个数据仓库接口,它简化了对分布式存储的大数据进行查询和分析的过程。Hive将复杂的MapReduce任务转化...
本文将深入探讨Hive SQL如何被编译成MapReduce任务,以及在这个过程中涉及到的关键原理。 1. MapReduce实现基本SQL操作的原理: - **Join的实现原理**:在Hive中,Join操作通常通过MapReduce来实现。例如,在一个...
- **操作符**:Hive执行的基本单位,每个操作符对应一个特定的功能,例如TableScanOperator负责从表中读取数据,JoinOperator负责连接两个数据集。 - **执行计划**:操作符按照一定的顺序组合而成的计划,描述了Hive...
本文旨在深入探讨HiveSQL解析原理及其如何将SQL转化为MapReduce过程,并解释MapReduce如何实现基本SQL操作。 #### 二、MapReduce实现基本SQL操作的原理 在深入理解Hive如何将SQL语句转换为MapReduce任务之前,我们...
【Hive原理】 Hive是基于Hadoop平台的数据仓库解决方案,它主要解决了在大数据场景下,业务人员和数据科学家能够通过熟悉的SQL语言进行数据分析的问题。Hive并不存储数据,而是依赖于HDFS进行数据存储,并利用...
理解Hive JDBC的工作原理以及如何在Java项目中正确配置和使用它是大数据开发中的关键技能之一。通过这个实例,你现在已经具备了使用Hive JDBC的基础知识,可以进一步探索更高级的Hive和Java集成技术。
本文将对 Hive on Spark 的源码进行深入分析,涵盖其基本原理、运行模式、Hive 解析 HQL、Spark 上下文创建、任务执行等方面。 1. 运行模式 Hive on Spark 支持两种运行模式:本地(LOCAL)和远程(REMOTE)。当...
接着详细介绍了Hive的系统架构,包括基本组成模块、工作原理和几种外部访问方式,描述了Hive的具体应用及Hive HA原理;同时,介绍了新一代开源大数据分析引擎Impala及其与Hive的比较分析;最后,以单词统计为例,...
本实验报告将详细阐述如何安装、配置Hive,并探讨其基本应用。 一、Hive的安装与配置 1. **元数据库的选择与配置** 默认情况下,Hive使用内嵌的Derby数据库作为元数据库,但考虑到并发访问和性能问题,推荐使用...
例如,你可以学习如何使用LOAD DATA命令将数据导入Hive表,使用SELECT语句进行基本查询,以及如何运用GROUP BY和JOIN操作来处理复杂的数据分析任务。此外,Hive支持UDF(用户自定义函数),这使得用户可以根据需要...
1. **Hive基本概念** Hive是由Facebook开源的一种数据仓库工具,设计用来处理海量的结构化日志数据统计。它基于Hadoop,可以把结构化的数据文件映射成数据库表,并提供SQL-like查询功能。Hive的本质是将HQL(Hive ...
1. **Hive数据仓库基础**:这一部分主要讲解数据仓库的基本概念,包括数据仓库的特性、数据仓库与数据库的区别,以及Hive数据仓库的原理。学生需要理解Hive架构,以及它在大数据处理中的角色。 2. **Hive环境搭建**...
#### 第一章 Hive基本概念 ##### 1.1 Hive简介 **Hive** 是一个基于 **Hadoop** 的数据仓库工具,它能够将结构化的数据文件映射成一张表,并提供类似于SQL的查询功能,即 **Hive Query Language (HQL)**。通过这种...
Hive的原理是指定HQL之后,Hive如何将HQL转换为MapReduce任务,再由Hadoop执行。 总的来说,Hive作为一个数据仓库工具,其学习和使用对于处理大数据集和进行大数据分析具有重要的意义。初学者可以从Hive的安装配置...
华为大数据认证:Hive分布式数据仓库课程目标是让学员掌握Hive应用场景与基本原理、掌握FusionInsight中Hive增强特性、熟悉常用Hive SQL语句。课程目录包括Hive概述、Hive功能与架构、Hive基本操作等。 Hive是大...